========================================================================
增加查看用户信息功能 Written By Casper of Swjtu
========================================================================
说明:
改动list.c和talk.c
1.在list.c中前面加一全局变量: int infomode=0;
还要在deal_key函数里switch语句里增加一case条件:
case 'a': case 'A':
if(!HAS_PERM(PERM_SYSOP)&&strcmp(currentuser.userid,
user_record[allnum]->user) )
return 0;
infomode = ~infomode&1;
break;
2.在talk.c中前面加一: extern int infomode;
然后在t_query函数里加入一判断语句.
具体在 exp=countexp(&lookupuser); 一行前加入下面:
if( infomode == YEA && (HAS_PERM(PERM_SYSOP)||strcmp(lookupuser.userid,currents
er.userid)==0) ) {
int num;
char buf[40];
prints("账号 : %s\n", lookupuser.userid);
prints("昵称 : %s\n", lookupuser.username);
prints("盏实姓名 : %s\n", lookupuser.realname);
prints("居醉地址 : %s\n", lookupuser.address);
prints("电子邮件信箱 : %s\n", lookupuser.email);
prints("盏实 E-mail : %s\n", lookupuser.termtype + 16);
prints("Ident 资料 : %s\n", lookupuser.ident);
prints("终端环形碳 : %s\n", lookupuser.termtype);
prints("帐号申请日期 : %s", ctime( &lookupuser.firstlogin));
prints("最近光临日期 : %s", ctime( &lookupuser.lastlogin));
prints("最近光临环器 : %s\n", lookupuser.lasthost );
prints("上站次什 : %d 次\n", lookupuser.numlogins);
prints("文章什目 : %d 萍\n", lookupuser.numposts);
prints("上站总时什 : %d 许时 %d 分钟\n",
lookupuser.stay/3600,(lookupuser.stay/60)%60);
strcpy( buf, "bTCPRp#@XWBA#VS-DOM-F012345678" );
for( num = 0; num < 30; num++ )
if( !(lookupuser.userlevel & (1 << num)) )
buf[num] = '-';
buf[num] = '\0';
prints("使用者瓤限 : %s\n\n", buf );
} else {
别忘记,还要在 show_user_plan(planid); 后面加个"}"号!
然后就搞定了.在环顾四方里按'A',再查看用户就可以看他们的信息了.
再按'A'就切换回来!
注意:只有SYSOP权限的才能查看所有的用户,否则一般用户只能查自己的.
--
修改:advertise FROM 202.115.64.174
FROM 202.115.64.174