- output_headers(1);
-
- wprintf("<TABLE WIDTH=100% BORDER=0 BGCOLOR=000077><TR><TD>");
- wprintf("<FONT SIZE=+1 COLOR=\"FFFFFF\"");
- wprintf("<B>Real-time chat</B>\n");
- wprintf("</FONT></TD></TR></TABLE>\n");
-
- wprintf("A chat window should be appearing on your screen ");
- wprintf("momentarily. When you're ");
- wprintf("done, type <TT>/quit</TT> to exit. You can also ");
- wprintf("type <TT>/help</TT> for more commands.\n");
-
- wprintf("<applet codebase=\"/static\" ");
- wprintf("code=\"wcchat\" width=2 height=2>\n");
- wprintf("<PARAM NAME=username VALUE=\"%s\">\n", WC->wc_username);
- wprintf("<PARAM NAME=password VALUE=\"%s\">\n", WC->wc_password);
- wprintf("<PARAM NAME=roomname VALUE=\"%s\">\n", WC->wc_roomname);
- wprintf("<H2>Oops!</H2>Looks like your browser doesn't support Java, ");
- wprintf("so you won't be able to access Chat. Sorry.\n");
- wprintf("</applet>\n");
- wDumpContent(1);
+// display page popup
+// If there are instant messages waiting, and we notice that we haven't checked them in
+// a while, it probably means that we need to open the instant messenger window.
+int Conditional_PAGE_WAITING(StrBuf *Target, WCTemplputParams *TP) {
+ int len;
+ char buf[SIZ];
+
+ // JavaScript function to alert the user that popups are probably blocked
+ // First, do the check as part of our page load.
+ serv_puts("NOOP");
+ len = serv_getln(buf, sizeof buf);
+ if ((len >= 3) && (buf[3] == '*')) {
+ if ((time(NULL) - WC->last_pager_check) > 60) {
+ return 1;
+ }
+ }
+ return 0;
+ // Then schedule it to happen again a minute from now if the user is idle.