作者johnny.bbs@bbs.hwsh.ylc.edu.tw (累死倫~~~~~), 看板: plan
標題[文件] 再整理~站長在使用者名單中看真名
時間虎溪傳說 (Wed Jul 24 00:13:14 2002) Updated: 2004/10/02
站長在使用者名單中看真名
: ufo.h // 請依自己的 ufo.h 調整
+ #define UFO_REALNAME BFLAG(23) /* 好友可以看見隱形 */
#define UFO_CLOAK BFLAG(24) /* 1: 進入隱形 */
...
- #define STR_UFO "-mpsnemPBQFANbwtSH------CHA"
+ #define STR_UFO "-mpsnemPBQFANbwtSH-----RCHA"
...
- "保留",
+ "使用者名單看姓名(姓名/暱稱)", /* UFO_REALNAME */
"隱身術 (隱身/現身)", /* UFO_CLOAK */
: struct.h:struct UTMP 下增加
+ char realname[20]; /* 02/09/01 真實姓名 */
: bbsd.c:utmp_setup()下 加一行
strcpy(utmp.userid, cuser.userid);
+ strcpy(utmp.realname, cuser.realname);
: ulist.c:ulist_realname() 新增函式於 ulist_help() 之前
static int
ulist_realname(xo)
XO *xo;
{
if (HAS_PERM(PERM_SYSOP))
{
cuser.ufo ^= UFO_REALNAME;
cutmp->ufo = cuser.ufo;
return ulist_init(xo);
}
return XO_NONE;
}
: ulist.c:ulist_cb[] 增加 R 鍵給切換真實姓名
+ 'R', ulist_realname, /* 02/09/01 真實姓名 */
: ulist.c:ulist_body()
#ifdef DETAIL_IDLETIME
time_t now;
#endif
+ int seerealname;
...
seecloak = HAS_PERM(PERM_SEECLOAK);
+ seerealname = sysop && (cuser.ufo & UFO_REALNAME);
...
#ifdef DETAIL_IDLETIME
- ulist_item(++num, up, slot, now, sysop);
+ ulist_item(++num, up, slot, now, sysop, seerealname);
#else
- ulist_item(++num, up, slot, NULL, sysop);
+ ulist_item(++num, up, slot, NULL, sysop, seerealname);
#endif
: ulist.c:ulist_item()
static void
- ulist_item(num, up, slot, now, sysop)
+ ulist_item(num, up, slot, now, sysop, seerealname)
int num;
UTMP *up;
int slot;
time_t now;
int sysop;
+ int seerealname;
{
...
把 prints(); 裡面的
up->username 換成 seerealname ? up->realname : up->username
--
╭══╦═╮ ╭
╰ ║ ╯ ║ ╭ ╭
║╭═══╮╠═══╮╠═══╮╠═══╮╮ ╭
║║ ║║ ║║ ║║ ║║ ║
╰══╯╰═══╯╰ ╯╰ ╯╰ ╯╰══╦╯
○by johnny○ ═╯
--
□ Origin: 虎溪傳說 bbs.hwsh.ylc.edu.tw
□ From: 61-216-185-228.HINET-IP.hinet.net