作者itoc.bbs@processor.tfcis.org (核心動力) 看板: plan
標題Re: [問題] 請問如何多一組class(類似WindTop專業討論區)
時間動力核心 (2004/06/27 Sun 10:59:29) Updated: 2004/06/27
※ 引述《LandRover (大地英豪)》之銘言:
> 改為itoc以後 希望仍能在主選單做一個「專業討論區」
在 (A)nnounce 裡面開個分類叫 PROF 即可
: struct.h
#define CLASS_IMGFILE_NAME "run/classname.img"
#define CLASS_IMGFILE_TITLE "run/classtitle.img"
+ #define CLASS_IMGFILE_PROF "run/classprof.img"
: account.c:class_image()
static void
class_image()
{
int i, times;
FILE *fp;
short len, pos[CH_MAX];
ClassHeader *chp;
- for (times = 2; times > 0; times--)
+ for (times = 3; times > 0; times--)
{
chn = 0;
class_sort(times == 1 ? brdname_cmp : brdtitle_cmp);
- class_parse(CLASS_INIFILE);
+ class_parse(times == 3 ? "PROF" : CLASS_INIFILE);
...
...
- rename(CLASS_RUNFILE, times == 1 ? CLASS_IMGFILE_NAME :
- CLASS_IMGFILE_TITLE);
+ rename(CLASS_RUNFILE, times == 1 ? CLASS_IMGFILE_NAME :
+ times == 2 ? CLASS_IMGFILE_TITLE : CLASS_IMGFILE_PROF);
}
}
class_chn();
}
: board.c
static char *class_img = NULL;
static XO board_xo;
+ static int class_prof; /* 在 1:Profession 0:Class 裡面 */
: board.c:board_main()
- class_img = f_img(cuser.ufo & UFO_BRDNAME ? CLASS_IMGFILE_NAME :
- CLASS_IMGFILE_TITLE, &fsize);
+ class_img = f_img(class_prof ? CLASS_IMGFILE_PROF :
+ cuser.ufo & UFO_BRDNAME ? CLASS_IMGFILE_NAME : CLASS_IMGFILE_TITLE,
+ &fsize);
: board.c:class_namemode()
static int
class_namemode(xo) /* itoc.010413: 看板依照字母/分類排列 */
XO *xo;
{
static time_t last = 0;
time_t now;
+ if (class_prof)
+ return XO_NONE;
: board.c:Class()
int
Class()
{
+ if (class_prof)
+ {
+ class_prof = 0;
+ if (cuser.userlevel)
+ brh_save();
+ board_main();
+ }
/* XoClass(CH_END - 1); */
/* Thor.980804: 防止 未用 account 造出 class.img 或沒有 class 的情況 */
if (!class_img || !XoClass(CH_END - 1))
{
vmsg("未定義分組討論區");
return XEASY;
}
return 0;
}
: board.c:Profession() 新增此函式在 Class() 後面
int
Profession()
{
if (!class_prof)
{
class_prof = 1;
if (cuser.userlevel)
brh_save();
board_main();
}
/* XoClass(CH_END - 1); */
/* Thor.980804: 防止 未用 account 造出 class.img 或沒有 class 的情況 */
if (!class_img || !XoClass(CH_END - 1))
{
vmsg("未定義分組討論區");
return XEASY;
}
return 0;
}
: maple.p
int Class(void);
+ int Profession(void);
: menu.c:menu_main[]
Class, 0, M_BOARD,
"Class φ 分組討論集 φ",
+ Profession, 0, M_BOARD,
+ "Professionφ 專業討論集 φ",
--
╭┼ Origin: Maple-itoc˙動力核心 processor.tfcis.org
┼┘ Author: itoc 從 itoc.Dorm11.NCTU.edu.tw 發表