diff options
Diffstat (limited to 'mbbsd/xyz.c')
-rw-r--r-- | mbbsd/xyz.c | 338 |
1 files changed, 0 insertions, 338 deletions
diff --git a/mbbsd/xyz.c b/mbbsd/xyz.c deleted file mode 100644 index fd7d5f4e..00000000 --- a/mbbsd/xyz.c +++ /dev/null @@ -1,338 +0,0 @@ -/* $Id$ */ -#include "bbs.h" - -int -x_boardman(void) -{ - more("etc/topboardman", YEA); - return 0; -} - -int -x_user100(void) -{ - more("etc/topusr100", YEA); - return 0; -} - -int -x_history(void) -{ - more("etc/history", YEA); - return 0; -} - -#ifdef HAVE_X_BOARDS -static int -x_boards(void) -{ - more("etc/topboard.tmp", YEA); - return 0; -} -#endif - -int -x_birth(void) -{ - more("etc/birth.today", YEA); - return 0; -} - -int -x_weather(void) -{ - more("etc/weather.tmp", YEA); - return 0; -} - -int -x_mrtmap(void) -{ - more("etc/MRT.map", YEA); - return 0; -} - -int -x_stock(void) -{ - more("etc/stock.tmp", YEA); - return 0; -} - -int -x_note(void) -{ - more(fn_note_ans, YEA); - return 0; -} - -int -x_issue(void) -{ - more("etc/day", YEA); - return 0; -} - -int -x_week(void) -{ - more("etc/week", YEA); - return 0; -} - -int -x_today(void) -{ - more("etc/today", YEA); - return 0; -} - -int -x_yesterday(void) -{ - more("etc/yesterday", YEA); - return 0; -} - -int -x_login(void) -{ - more("etc/Welcome_login.0", YEA); - return 0; -} - -#ifdef HAVE_INFO -static int -x_program(void) -{ - more("etc/version", YEA); - return 0; -} -#endif - -#ifdef HAVE_LICENSE -static int -x_gpl(void) -{ - more("etc/GPL", YEA); - return 0; -} -#endif - -int -note(void) -{ - char *fn_note_tmp = "note.tmp"; - char *fn_note_dat = "note.dat"; - int total = 0, i, collect, len; - struct stat st; - char buf[256], buf2[80]; - int fd, fx; - FILE *fp, *foo; - - typedef struct notedata_t { - time4_t date; - char userid[IDLEN + 1]; - char nickname[19]; - char buf[3][80]; - } notedata_t; - notedata_t myitem; - - if (cuser.money < 5) { - vmsg(ANSI_COLOR(1;41) " «u§r! n§ë¤»È¤~¯à¯d¨¥...¨S¿úC.." ANSI_RESET); - return 0; - } - setutmpmode(EDNOTE); - do { - myitem.buf[0][0] = myitem.buf[1][0] = myitem.buf[2][0] = '\0'; - move(12, 0); - clrtobot(); - outs("\n§ë¤»È... ¹Í... ½Ð¯d¨¥ (¦Ü¦h¤T¦æ)¡A«ö[Enter]µ²§ô"); - for (i = 0; (i < 3) && getdata(16 + i, 0, "¡G", myitem.buf[i], - sizeof(myitem.buf[i]) - 5, DOECHO) - && *myitem.buf[i]; i++); - getdata(b_lines - 1, 0, "(S)Àx¦s (E)«·s¨Ó¹L (Q)¨ú®ø¡H[S] ", - buf, 3, LCECHO); - - if (buf[0] == 'q' || (i == 0 && *buf != 'e')) - return 0; - } while (buf[0] == 'e'); - demoney(-5); - strcpy(myitem.userid, cuser.userid); - strlcpy(myitem.nickname, cuser.nickname, sizeof(myitem.nickname)); - myitem.date = now; - - /* begin load file */ - if ((foo = fopen(".note", "a")) == NULL) - return 0; - - unlink(fn_note_ans); // remove first to prevent mmap(pmore) crash - if ((fp = fopen(fn_note_ans, "w")) == NULL) { - fclose(fp); - return 0; - } - - if ((fx = open(fn_note_tmp, O_WRONLY | O_CREAT, 0644)) <= 0) { - fclose(foo); - fclose(fp); - return 0; - } - - if ((fd = open(fn_note_dat, O_RDONLY)) == -1) - total = 1; - else if (fstat(fd, &st) != -1) { - total = st.st_size / sizeof(notedata_t) + 1; - if (total > MAX_NOTE) - total = MAX_NOTE; - } - fputs(ANSI_COLOR(1;31;44) "¡ó¢s¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢t" - ANSI_COLOR(37) "»Ä²¢W»¶ªO" ANSI_COLOR(31) "¢u¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢s¡ó" - ANSI_RESET "\n", fp); - collect = 1; - - while (total) { - snprintf(buf, sizeof(buf), ANSI_COLOR(1;31) "ùÝ¢t" ANSI_COLOR(32) " %s " ANSI_COLOR(37) "(%s)", - myitem.userid, myitem.nickname); - len = strlen(buf); - - for (i = len; i < 71; i++) - strcat(buf, " "); - snprintf(buf2, sizeof(buf2), " " ANSI_COLOR(1;36) "%.16s" ANSI_COLOR(31) " ¢uùß" ANSI_RESET "\n", - Cdate(&(myitem.date))); - strcat(buf, buf2); - fputs(buf, fp); - if (collect) - fputs(buf, foo); - for (i = 0; i < 3 && *myitem.buf[i]; i++) { - fprintf(fp, ANSI_COLOR(1;31) "¢x" ANSI_RESET "%-74.74s" ANSI_COLOR(1;31) "¢x" ANSI_RESET "\n", - myitem.buf[i]); - if (collect) - fprintf(foo, ANSI_COLOR(1;31) "¢x" ANSI_RESET "%-74.74s" ANSI_COLOR(1;31) "¢x" ANSI_RESET "\n", - myitem.buf[i]); - } - fputs(ANSI_COLOR(1;31) "ùã¢s¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w" - "¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢sùå" ANSI_RESET "\n", fp); - - if (collect) { - fputs(ANSI_COLOR(1;31) "ùã¢s¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w" - "¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢sùå" ANSI_RESET "\n", foo); - fclose(foo); - collect = 0; - } - write(fx, &myitem, sizeof(myitem)); - - if (--total) - read(fd, (char *)&myitem, sizeof(myitem)); - } - fputs(ANSI_COLOR(1;31;44) "¡ó¢r¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w" - "¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢r¡ó" ANSI_RESET "\n", fp); - fclose(fp); - close(fd); - close(fx); - Rename(fn_note_tmp, fn_note_dat); - more(fn_note_ans, YEA); - return 0; -} - -static void -mail_sysop(void) -{ - FILE *fp; - char genbuf[200]; - - if ((fp = fopen("etc/sysop", "r"))) { - int i, j; - char *ptr; - - typedef struct sysoplist_t { - char userid[IDLEN + 1]; - char duty[40]; - } sysoplist_t; - sysoplist_t sysoplist[9]; - - j = 0; - while (fgets(genbuf, 128, fp)) { - if ((ptr = strchr(genbuf, '\n'))) { - *ptr = '\0'; - if ((ptr = strchr(genbuf, ':'))) { - *ptr = '\0'; - do { - i = *++ptr; - } while (i == ' ' || i == '\t'); - if (i) { - strcpy(sysoplist[j].userid, genbuf); - strcpy(sysoplist[j++].duty, ptr); - } - } - } - } - fclose(fp); - - move(12, 0); - clrtobot(); - outs(" ½s¸¹ ¯¸ªø ID Åv³d¹º¤À\n\n"); - - for (i = 0; i < j; i++) - prints("%15d. " ANSI_COLOR(1;%d) "%-16s%s" ANSI_COLOR(0) "\n", - i + 1, 31 + i % 7, sysoplist[i].userid, sysoplist[i].duty); - prints("%-14s0. " ANSI_COLOR(1;%d) "Â÷¶}" ANSI_COLOR(0) "", "", 31 + j % 7); - getdata(b_lines - 1, 0, " ½Ð¿é¤J¥N½X[0]¡G", - genbuf, 4, DOECHO); - i = genbuf[0] - '0' - 1; - if (i >= 0 && i < j) { - char *suser = sysoplist[i].userid; - clear(); - showplans(suser); - do_send(suser, NULL); - } - } -} - -int -m_sysop(void) -{ - setutmpmode(MSYSOP); - mail_sysop(); - return 0; -} - -int -Goodbye(void) -{ - char genbuf[100]; - - getdata(b_lines - 1, 0, "±z½T©wnÂ÷¶}¡i " BBSNAME " ¡j¶Ü(Y/N)¡H[N] ", - genbuf, 3, LCECHO); - - if (*genbuf != 'y') - return 0; - - movie(999999); - if (cuser.userlevel) { - getdata(b_lines - 1, 0, - "(G)ÀH·¦Ó³u (M)¦«¹Ú¯¸ªø (N)»Ä²¢W»¶¬y¨¥ªO¡H[G] ", - genbuf, 3, LCECHO); - if (genbuf[0] == 'm') - mail_sysop(); - else if (genbuf[0] == 'n') - note(); - } - clear(); - - - more("etc/Logout", NA); - - { - int diff = (now - login_start_time) / 60; - sprintf(genbuf, "¦¹¦¸°±¯d®É¶¡: %d ¤p®É %2d ¤À", - diff / 60, diff % 60); - } - if(!(cuser.userlevel & PERM_LOGINOK)) - vmsg("©|¥¼§¹¦¨µù¥U¡C¦pn´£ª@Åv½Ð°Ñ¦Ò¥»¯¸¤½§GÄæ¿ì²zµù¥U"); - else - vmsg(genbuf); - // pressanykey(); - - u_exit("EXIT "); - return QUIT; -} |