*/
void whobbs(void)
{
- char buf[SIZ], sess, user[SIZ], room[SIZ], host[SIZ],
+ char buf[SIZ], user[SIZ], room[SIZ], host[SIZ],
realroom[SIZ], realhost[SIZ];
+ int sess;
time_t last_activity;
time_t now;
int bg = 0;
wprintf("<div id=\"banner\">\n");
wprintf("<TABLE WIDTH=100%% BORDER=0 BGCOLOR=\"#444455\"><TR><TD>");
- wprintf("<IMG SRC=\"/static/users-icon.gif\" ALT=\" \" ALIGN=MIDDLE>");
+ wprintf("<IMG SRC=\"/static/usermanag_48x.gif\" ALT=\" \" ALIGN=MIDDLE>");
wprintf("<SPAN CLASS=\"titlebar\"> Users currently on ");
escputs(serv_info.serv_humannode);
wprintf("</SPAN></TD><TD ALIGN=RIGHT>");
wprintf("</div>\n"
"<div id=\"content\">\n");
- wprintf("<center>"
- "<table border=0 cellspacing=0 width=99%% bgcolor=\"#FFFFFF\">"
+ wprintf("<div id=\"fix_scrollbar_bug\">"
+ "<table border=0 cellspacing=0 width=100%% bgcolor=\"#FFFFFF\">"
"<tr>\n");
- wprintf("<TH COLSPAN=4>Session ID</TH>\n");
+ wprintf("<TH COLSPAN=3> </TH>\n");
wprintf("<TH>User Name</TH>\n");
wprintf("<TH>Room</TH>");
wprintf("<TH>From host</TH>\n</TR>\n");
serv_puts("TIME");
- serv_gets(buf);
+ serv_getln(buf, sizeof buf);
if (buf[0] == '2') {
now = extract_long(&buf[4], 0);
}
}
serv_puts("RWHO");
- serv_gets(buf);
+ serv_getln(buf, sizeof buf);
if (buf[0] == '1') {
- while (serv_gets(buf), strcmp(buf, "000")) {
+ while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
sess = extract_int(buf, 0);
- extract(user, buf, 1);
- extract(room, buf, 2);
- extract(host, buf, 3);
- extract(realroom, buf, 9);
- extract(realhost, buf, 10);
+ extract_token(user, buf, 1, '|', sizeof user);
+ extract_token(room, buf, 2, '|', sizeof room);
+ extract_token(host, buf, 3, '|', sizeof host);
+ extract_token(realroom, buf, 9, '|', sizeof realroom);
+ extract_token(realhost, buf, 10, '|', sizeof realhost);
last_activity = extract_long(buf, 5);
bg = 1 - bg;
);
- wprintf("<TD>%d</TD><TD>", sess);
+ wprintf("<td>");
if ((WC->is_aide) &&
(sess != WC->ctdl_pid)) {
wprintf(" <A HREF=\"/terminate_session&which_session=%d&session_owner=", sess);
urlescputs(user);
wprintf("\" onClick=\"return ConfirmKill();\" "
- ">(kill)</A>");
+ ">[kill]</A>");
}
if (sess == WC->ctdl_pid) {
wprintf(" <A HREF=\"/edit_me\" "
- ">(edit)</A>");
+ ">[edit]</A>");
}
wprintf("</TD>");
wprintf("</TD>\n</TR>");
}
}
- wprintf("</TABLE>\n"
+ wprintf("</TABLE></div>\n"
+ "<div align=center>"
"Click on a name to read user info. Click on "
"<IMG ALIGN=MIDDLE SRC=\"/static/page.gif\" ALT=\"(p)\" "
"BORDER=0> to send "
- "a page (instant message) to that user.<br /></CENTER>\n");
+ "a page (instant message) to that user.</div>\n");
wDumpContent(1);
}
char buf[SIZ];
serv_printf("TERM %s", bstr("which_session"));
- serv_gets(buf);
+ serv_getln(buf, sizeof buf);
whobbs();
}
if (!strcasecmp(bstr("sc"), "Change room name")) {
serv_printf("RCHG %s", bstr("fake_roomname"));
- serv_gets(buf);
+ serv_getln(buf, sizeof buf);
http_redirect("/whobbs");
} else if (!strcasecmp(bstr("sc"), "Change host name")) {
serv_printf("HCHG %s", bstr("fake_hostname"));
- serv_gets(buf);
+ serv_getln(buf, sizeof buf);
http_redirect("/whobbs");
} else if (!strcasecmp(bstr("sc"), "Change user name")) {
serv_printf("UCHG %s", bstr("fake_username"));
- serv_gets(buf);
+ serv_getln(buf, sizeof buf);
http_redirect("/whobbs");
} else if (!strcasecmp(bstr("sc"), "Cancel")) {
http_redirect("/whobbs");