这个~
自己喜欢的就往上加
int uleveltochar(char *buf, struct userec *lookupuser)
{ /* 取用户权限中文说明 Bigman 2001.6.24 */
unsigned lvl;
char userid[IDLEN + 2];
#ifdef HAVE_CUSTOM_USER_TITLE
if (lookupuser->title != 0) {
strcpy(buf, get_user_title(lookupuser->title));
if (buf[0] != 0)
return 0;
}
#endif
lvl = lookupuser->userlevel;
strncpy(userid, lookupuser->userid, IDLEN + 2);
if (!(lvl & PERM_BASIC) && !(lookupuser->flags & GIVEUP_FLAG)) {
strcpy(buf, "新人");
return 0;
}
/* if( lvl < PERM_DEFAULT )
{
strcpy( buf, "- --" );
return 1;
}
*/
/*
* Bigman: 增加中文查询显示 2000.8.10
*/
/*
* if( lvl & PERM_ZHANWU ) strcpy(buf,"站务");
*/
if ((lvl & PERM_ANNOUNCE) && (lvl & PERM_OBOARDS))
strcpy(buf, "站务");
else if (lvl & PERM_JURY)
strcpy(buf, "仲裁"); /* stephen :增加中文查询"仲裁" 2001.10.31 */
else if (lvl & PERM_BMAMANGER)
strcpy(buf, "实习站务");
else if (lvl & PERM_COLLECTIVE)
strcpy(buf, "专用");
else if (lvl & PERM_CHATCLOAK)
strcpy(buf, "元老");
else if (lvl & PERM_CHATOP)
strcpy(buf, "ChatOP");
else if (lvl & PERM_BOARDS)
strcpy(buf, "版主");
else if (lvl & PERM_HORNOR)
strcpy(buf, "荣誉");
else if ((lvl & PERM_SECANC) && !(lvl & PERM_CHECKCD))
strcpy(buf, "交大校友");
else if ((lvl & PERM_CHECKCD) && !(lvl & PERM_SECANC))
strcpy(buf, "校外友人");
else if ((lvl & PERM_CHECKCD) && (lvl & PERM_SECANC))
strcpy(buf, "校内师生");
/*
* Bigman: 修改显示 2001.6.24
*/
else if (lvl & (PERM_LOGINOK)) {
if (lookupuser->flags & GIVEUP_FLAG)
strcpy(buf, "戒网");
else if (!(lvl & (PERM_CHAT)) || !(lvl & (PERM_PAGE)) || !(lvl & (PERM_POST))
|| (lvl & (PERM_DENYMAIL)) || (lvl & (PERM_DENYRELAX)))
strcpy(buf, "受限");
else
strcpy(buf, "用户");
} else if (lookupuser->flags & GIVEUP_FLAG)
strcpy(buf, "戒网");
else if (!(lvl & (PERM_CHAT)) && !(lvl & (PERM_PAGE)) && !(lvl & (PERM_POST)))
strcpy(buf, "新人");
else
strcpy(buf, "受限");
/* else {
buf[0] = (lvl & (PERM_SYSOP)) ? 'C' : ' ';
buf[1] = (lvl & (PERM_XEMPT)) ? 'L' : ' ';
buf[2] = (lvl & (PERM_BOARDS)) ? 'B' : ' ';
buf[3] = !(lvl & (PERM_POST)) ? 'p' : ' ';
if( lvl & PERM_ACCOUNTS ) buf[3] = 'A';
if( lvl & PERM_SYSOP ) buf[3] = 'S';
buf[4] = '\0';
}
*/
return 1;
}
【 在 JulyClyde (七月) 的大作中提到: 】
: 其实,对于几个特殊的身份如何显示,在site.c里面就有写
: 但都拥有些什么权限,不看代码的话还真是挺神秘的
: 而代码又是那么的……
: ...................
--
FROM 218.249.29.*