* @category jieqicms * @package system * @copyright Copyright (c) Hangzhou Jieqi Network Technology Co.,Ltd. (http://www.jieqi.com) * @author $Author: juny $ * @version $Id: userlog.php 326 2009-02-04 00:26:22Z juny $ */ //用户日志 define('JIEQI_MODULE_NAME', 'system'); require_once '../global.php'; //检查权限 include_once JIEQI_ROOT_PATH . '/class/power.php'; $power_handler =& JieqiPowerHandler::getInstance('JieqiPowerHandler'); $power_handler->getSavedVars('system'); jieqi_checkpower($jieqiPower['system']['adminuserlog'], $jieqiUsersStatus, $jieqiUsersGroup, false, true); include_once JIEQI_ROOT_PATH . '/class/userlog.php'; $userlog_handler = JieqiUserlogHandler::getInstance('JieqiUserlogHandler'); jieqi_getconfigs(JIEQI_MODULE_NAME, 'configs'); if (empty($_REQUEST['page']) || !is_numeric($_REQUEST['page'])) { $_REQUEST['page'] = 1; } include_once JIEQI_ROOT_PATH . '/admin/header.php'; $criteria = new CriteriaCompo(); if (!empty($_REQUEST['keyword'])) { if ($_REQUEST['keytype'] == 1) { $criteria->add(new Criteria('toname', $_REQUEST['keyword'], '=')); } else { $criteria->add(new Criteria('fromname', $_REQUEST['keyword'], '=')); } } $criteria->setSort('logid'); $criteria->setOrder('DESC');
/** * 本地用户编辑,正式处理 * * @param array $params 参数数组 * 必须参数: $params['username'] - 用户名,$params['password'] - 密码 * @access public * @return int */ function jieqi_uedit_lprocess(&$params) { global $users_handler; global $jieqiLang; global $jieqiConfigs; global $jieqiHonors; global $jieqiUsersStatus; global $jieqiUsersGroup; //载入参数设置 if (!isset($jieqiConfigs['system'])) { jieqi_getconfigs('system', 'configs'); } //载入语言包 if (!isset($jieqiLang['system'])) { jieqi_loadlang('users', 'system'); } if (!is_a($users_handler, 'JieqiUsersHandler')) { include_once JIEQI_ROOT_PATH . '/class/users.php'; $users_handler =& JieqiUsersHandler::getInstance('JieqiUsersHandler'); } $user = $users_handler->get($params['uid']); if (!is_object($user)) { $params['error'] = LANG_NO_USER; if ($params['return']) { return false; } else { jieqi_printfail($params['error']); } } $chglog = array(); $chginfo = ''; $user->unsetNew(); if ($params['adminlevel'] > 0) { if (strlen($params['newpass']) > 0) { $user->setVar('pass', $users_handler->encryptPass($params['newpass'])); } } if ($params['adminlevel'] == 1) { //本人修改 $user->setVar('name', $params['nickname']); if (strlen($params['newpass']) > 0) { $user->setVar('pass', $users_handler->encryptPass($params['newpass'])); } $user->setVar('sex', $params['sex']); $user->setVar('email', $params['email']); $user->setVar('url', $params['url']); $user->setVar('qq', $params['qq']); $user->setVar('msn', $params['msn']); if ($params['viewemail'] != 1) { $params['viewemail'] = 0; } $user->setVar('viewemail', $params['viewemail']); $user->setVar('adminemail', $params['adminemail']); if (isset($params['workid']) && intval($user->getVar('workid', 'n')) != intval($params['workid'])) { $user->setVar('workid', $params['workid']); $params['changework'] = true; } else { $params['changework'] = false; } $user->setVar('sign', $params['sign']); $user->setVar('intro', $params['intro']); if (!$users_handler->insert($user)) { $params['error'] = empty($params['lang_failure']) ? $jieqiLang['system']['user_edit_failure'] : $params['lang_failure']; if ($params['return']) { return false; } else { jieqi_printfail($params['error']); } } else { if ($params['changework'] && $_SESSION['jieqiUserId'] == $user->getVar('uid')) { jieqi_getconfigs('system', 'honors'); $honorid = jieqi_gethonorid($user->getVar('score'), $jieqiHonors); $_SESSION['jieqiUserHonor'] = $jieqiHonors[$honorid]['name'][intval($user->getVar('workid', 'n'))]; } if ($params['changenick'] && $_SESSION['jieqiUserId'] == $user->getVar('uid')) { $_SESSION['jieqiUserName'] = strlen($user->getVar('name', 'n')) > 0 ? $user->getVar('name', 'n') : $user->getVar('uname', 'n'); } $user->saveToSession(); return true; } } else { //管理员修改 if ($params['adminlevel'] >= 2) { //修改密码 if (strlen($params['pass']) > 0) { $user->setVar('pass', $users_handler->encryptPass($params['pass'])); $chginfo .= $jieqiLang['system']['userlog_change_password']; } //经验值 if (is_numeric($params['experience']) && $params['experience'] != $user->getVar('experience')) { $chglog['experience']['from'] = $user->getVar('experience'); $chglog['experience']['to'] = $params['experience']; $user->setVar('experience', $params['experience']); if ($chglog['experience']['from'] > $chglog['experience']['to']) { $chginfo .= sprintf($jieqiLang['system']['userlog_less_experience'], $chglog['experience']['from'] - $chglog['experience']['to']); } else { $chginfo .= sprintf($jieqiLang['system']['userlog_add_experience'], $chglog['experience']['to'] - $chglog['experience']['from']); } } //积分 if (is_numeric($params['score']) && $params['score'] != $user->getVar('score')) { $chglog['score']['from'] = $user->getVar('score'); $chglog['score']['to'] = $params['score']; $user->setVar('score', $params['score']); if ($chglog['score']['from'] > $chglog['score']['to']) { $chginfo .= sprintf($jieqiLang['system']['userlog_less_score'], $chglog['score']['from'] - $chglog['score']['to']); } else { $chginfo .= sprintf($jieqiLang['system']['userlog_add_score'], $chglog['score']['to'] - $chglog['score']['from']); } } } if ($params['adminlevel'] >= 3) { //会员等级 if (is_numeric($params['groupid']) && $params['groupid'] != $user->getVar('groupid')) { if ($params['groupid'] == JIEQI_GROUP_ADMIN && $jieqiUsersGroup != JIEQI_GROUP_ADMIN) { $params['error'] = $jieqiLang['system']['cant_set_admin']; if ($params['return']) { return false; } else { jieqi_printfail($params['error']); } } $chglog['groupid']['from'] = $user->getVar('groupid'); $chglog['groupid']['to'] = $params['groupid']; $user->setVar('groupid', $params['groupid']); $chginfo .= sprintf($jieqiLang['system']['userlog_change_group'], $jieqiGroups[$chglog['groupid']['from']], $jieqiGroups[$chglog['groupid']['to']]); } } if ($params['adminlevel'] >= 4) { //虚拟货币 if (is_numeric($params['egold']) && $params['egold'] != $user->getVar('egold')) { $chglog['egold']['from'] = $user->getVar('egold'); $chglog['egold']['to'] = $params['egold']; $user->setVar('egold', $params['egold']); if ($chglog['egold']['from'] > $chglog['egold']['to']) { $chginfo .= sprintf($jieqiLang['system']['userlog_less_egold'], JIEQI_EGOLD_NAME, $chglog['egold']['from'] - $chglog['egold']['to']); } else { $chginfo .= sprintf($jieqiLang['system']['userlog_add_egold'], JIEQI_EGOLD_NAME, $chglog['egold']['to'] - $chglog['egold']['from']); } } //银币 if (is_numeric($params['esilver']) && $params['esilver'] != $user->getVar('esilver')) { $chglog['esilver']['from'] = $user->getVar('esilver'); $chglog['esilver']['to'] = $peyment; $user->setVar('esilver', $params['esilver']); if ($chglog['esilver']['from'] > $chglog['esilver']['to']) { $chginfo .= sprintf($jieqiLang['system']['userlog_less_esilver'], $chglog['esilver']['from'] - $chglog['esilver']['to']); } else { $chginfo .= sprintf($jieqiLang['system']['userlog_add_esilver'], $chglog['esilver']['to'] - $chglog['esilver']['from']); } } //VIP状态 if (is_numeric($params['isvip']) && $params['isvip'] != $user->getVar('isvip')) { $tmpstr = $user->getViptype(); $chglog['isvip']['from'] = $user->getVar('isvip'); $chglog['isvip']['to'] = $params['groupid']; $user->setVar('isvip', $params['isvip']); $chginfo .= sprintf($jieqiLang['system']['userlog_change_vip'], $tmpstr, $user->getViptype()); } } if (!$users_handler->insert($user)) { $params['error'] = $jieqiLang['system']['change_user_failure']; if ($params['return']) { return false; } else { jieqi_printfail($params['error']); } } else { //记录登录日志 /* include_once(JIEQI_ROOT_PATH.'/class/logs.php'); $logs_handler = JieqiLogsHandler::getInstance('JieqiLogsHandler'); $logdata = array('logtype'=>2, 'targetid'=>$user->getVar('uid', 'n'), 'targettitle'=>$user->getVar('uname', 'n'), 'lognote'=>$params['reason'], 'logdata'=>$chginfo, 'fromdata'=>$log_fromdata, 'todata'=>serialize($user)); $logs_handler->addlog($logdata); */ //记录日志 include_once JIEQI_ROOT_PATH . '/class/userlog.php'; $userlog_handler = JieqiUserlogHandler::getInstance('JieqiUserlogHandler'); $newlog = $userlog_handler->create(); $newlog->setVar('siteid', JIEQI_SITE_ID); $newlog->setVar('logtime', JIEQI_NOW_TIME); $newlog->setVar('fromid', $_SESSION['jieqiUserId']); $newlog->setVar('fromname', $_SESSION['jieqiUserName']); $newlog->setVar('toid', $user->getVar('uid', 'n')); $newlog->setVar('toname', $user->getVar('uname', 'n')); $newlog->setVar('reason', $params['reason']); $newlog->setVar('chginfo', $chginfo); $newlog->setVar('chglog', serialize($chglog)); $newlog->setVar('isdel', '0'); $newlog->setVar('userlog', ''); $userlog_handler->insert($newlog); return true; } } return true; }