+/**
+ * \brief who is on?
+ */
+void who(void)
+{
+ char title[256];
+
+ output_headers(1, 1, 2, 0, 0, 0);
+
+ wprintf("<script type=\"text/javascript\">\n"
+ "function ConfirmKill() { \n"
+ "return confirm('%s');\n"
+ "}\n"
+ "</script>\n", _("Do you really want to kill this session?")
+ );
+
+ wprintf("<div id=\"banner\">\n");
+ wprintf("<table class=\"who_banner\"><tr><td>");
+ wprintf("<img src=\"static/usermanag_48x.gif\" alt=\" \" "
+ "align=middle "
+ ">");
+ wprintf("<span class=\"titlebar\"> ");
+
+ snprintf(title, sizeof title, _("Users currently on %s"), serv_info.serv_humannode);
+ escputs(title);
+
+ wprintf("</span></td><td align=right>");
+ offer_start_page();
+ wprintf("</td></tr></table>\n");
+ wprintf("</div>\n");
+
+ wprintf("<div id=\"content\" class=\"who_is_online\">\n");
+
+ wprintf("<div style=\"display:inline\" id=\"fix_scrollbar_bug\">");
+ who_inner_div();
+ wprintf("</div>\n");
+
+ wprintf("<div id=\"instructions\" align=center>");
+ wprintf(_("Click on a name to read user info. Click on %s "
+ "to send an instant message to that user."),
+ "<img align=\"middle\" src=\"static/citadelchat_16x.gif\" alt=\"(p)\" border=\"0\">"
+ );
+ wprintf("</div>\n");
+
+ /**
+ * JavaScript to make the ajax refresh happen:
+ * See http://www.sergiopereira.com/articles/prototype.js.html for info on Ajax.PeriodicalUpdater
+ * It wants: 1. The div being updated
+ * 2. The URL of the update source
+ * 3. Other flags (such as the HTTP method and the refresh frequency)
+ */
+ wprintf(
+ "<script type=\"text/javascript\"> "
+ " new Ajax.PeriodicalUpdater('fix_scrollbar_bug', 'who_inner_html', "
+ " { method: 'get', frequency: 30 } ); "
+ "</script> \n"
+ );
+ wDumpContent(1);
+}
+
+/**
+ * \brief end session \todo what??? does this belong here?
+ */