📄 who.c
字号:
/* who.c For Free Chat By Bill Kendrick kendrick@zippy.sonoma.edu http://zippy.sonoma.edu/kendrick/ September 29, 1996 - June 7, 1998*/#include <stdio.h>#include <stdlib.h>#include <string.h>#include "cgi-util.h"#include "dump.h"#include "readline.h"#include "defines.h"#include "whattime.h"#include "chatwrite.h"#include "copyback.h"#include "myopen.h"#include "nicetime.h"int main(int argc, char * argv[]){ char xname[STRLEN], xemail[STRLEN], xstarttime[STRLEN], xtime[STRLEN]; char time[STRLEN], temp[STRLEN], temp2[STRLEN]; int user_time, now_time, i; FILE * fi, * fo, * fiface; /* Initialize CGI Interface: */ cgiinit(); printf("Content-type: text/html\n\n"); /* Get time: */ whattime(time); /* Dump top of page: */ dump("included/who-top.html"); printf("<p align=center><code>%s</code></p>\n\n", nicetime(time)); /* Dump who's here list: */ fi = fopen("who.dat", "r"); if (fi == NULL) { printf("System is down!\n"); exit(0); } fo = myopen("who.tmp", "w"); if (fi == NULL) { printf("System is down!\n"); exit(0); } printf("<center><table border=0>\n"); do { readline(fi, xname); if (!feof(fi)) { readline(fi, xemail); readline(fi, xstarttime); readline(fi, xtime); readline(fi, temp); user_time = ((((xtime[0] - '0') * 10) + xtime[1] - '0') * 60) + (((xtime[3] - '0') * 10) + xtime[4] - '0'); now_time = ((((time[0] - '0') * 10) + time[1] - '0') * 60) + (((time[3] - '0') * 10) + time[4] - '0'); if (now_time < user_time) now_time = now_time + (24 * 60); if (now_time - user_time < IDLE) { fprintf(fo, "%s\n", xname); fprintf(fo, "%s\n", xemail); fprintf(fo, "%s\n", xstarttime); fprintf(fo, "%s\n", xtime); fprintf(fo, "\n"); printf("<tr><td valign=top height=55>"); for (i = 0; i <= strlen(xname); i++) { if (xname[i] == '-' || xname[i] == ' ') temp2[i] = '_'; else temp2[i] = xname[i]; } sprintf(temp, "%sphotos/%s.gif", UNIX_PREPEND, temp2); fiface = fopen(temp, "r"); if (fiface != NULL) { fclose(fiface); printf("<img src=\"%sphotos/%s\" width=40 height=40\n", PREPEND, temp2); printf("width=40 height=40 alt=\"\" border=0\n"); printf("alt=\"\" border=0>\n"); } printf("</td><td valign=top>\n"); printf("<b>%s</b></td>\n", xname); printf("<td valign=top>"); if (strlen(xemail) != 0) printf("<code><a href=\"mailto:%s\">%s</a></code>", xemail, xemail); printf("</td>\n"); printf("<td valign=top>On since: <code>%s</code></td>\n", nicetime(xstarttime)); printf("<td valign=top>Last action:\n"); printf("<code>%s</code><br></td></tr>\n", nicetime(xtime)); } else { sprintf(temp,"%s was idle over %d minutes and has been removed.", xname, IDLE); chatwrite(time, "IDLE", temp); } } } while (!feof(fi)); fclose(fi); fclose(fo); copyback("who.dat", "who.tmp"); printf("</table></center>\n"); /* Dump bottom of page: */ dump("included/who-bottom.html"); return(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -