13 struct namelist *next;
18 * display the userlist
25 struct namelist *bio = NULL;
26 struct namelist *bptr;
31 if (buf[0]=='1') while (serv_gets(buf), strcmp(buf,"000")) {
32 bptr = (struct namelist *) malloc(sizeof(struct namelist));
34 strcpy(bptr->name, buf);
39 printf("HTTP/1.0 200 OK\n");
40 output_headers(1, "bottom");
45 wprintf("<EM>%s</EM><BR>\n",&buf[4]);
50 wprintf("<TABLE WIDTH=100% BORDER=0 BGCOLOR=007700><TR><TD>");
51 wprintf("<FONT SIZE=+1 COLOR=\"FFFFFF\"");
52 wprintf("<B>User list for ");
53 escputs(serv_info.serv_humannode);
54 wprintf("</B></FONT></TD></TR></TABLE>\n");
56 wprintf("<CENTER><TABLE border>");
57 wprintf("<TR><TH>User Name</TH><TH>Number</TH><TH>Access Level</TH>");
58 wprintf("<TH>Last Call</TH><TH>Total Calls</TH><TH>Total Posts</TH></TR>\n");
60 while (serv_gets(buf), strcmp(buf,"000")) {
63 for (bptr=bio; bptr!=NULL; bptr=bptr->next) {
64 if (!strcasecmp(fl,bptr->name)) has_bio = 1;
68 wprintf("<A HREF=\"/showuser&who=");
77 wprintf("</TD><TD>%ld</TD><TD>%d</TD><TD>",
80 lc = extract_long(buf,3);
81 tmbuf = (struct tm *)localtime(&lc);
82 wprintf("%02d/%02d/%04d ",
85 (tmbuf->tm_year + 1900));
88 wprintf("</TD><TD>%ld</TD><TD>%5ld</TD></TR>\n",
89 extract_long(buf,4),extract_long(buf,5));
92 wprintf("</TABLE></CENTER>\n");
93 DONE: wprintf("</BODY></HTML>\n");
99 * Display (non confidential) information about a particular user
101 void showuser(void) {
106 printf("HTTP/1.0 200 OK\n");
107 output_headers(1, "bottom");
110 wprintf("<TABLE WIDTH=100% BORDER=0 BGCOLOR=007700><TR><TD>");
111 wprintf("<FONT SIZE=+1 COLOR=\"FFFFFF\"<B>User profile");
112 wprintf("</B></FONT></TD></TR></TABLE>\n");
114 strcpy(who, bstr("who"));
115 serv_printf("OIMG _userpic_|%s", who);
126 wprintf("<CENTER><TABLE><TR><TD>");
128 wprintf("<IMG SRC=\"/image&name=_userpic_&parm=");
132 wprintf("</TD><TD><H1>%s</H1></TD></TR></TABLE></CENTER>\n",who);
133 serv_printf("RBIO %s",who);
135 if (buf[0]=='1') fmout(NULL);
136 wprintf("</BODY></HTML>\n");