begin of thinksaas 3.68

Signed-off-by: kevin <kevin@lmve.net>
This commit is contained in:
2023-06-22 13:33:25 +08:00
commit 963ec1b2ea
2746 changed files with 331806 additions and 0 deletions
+73
View File
@@ -0,0 +1,73 @@
<?php
defined('IN_TS') or die('Access Denied.');
switch($ts){
//用户组列表
case "list":
$arrGroup = $new['user']->findAll('user_group',null,'ugid asc');
include template('admin/group_list');
break;
//创建用户组
case "add":
$ugname = tsTrim($_POST['ugname']);
$uginfo = tsTrim($_POST['uginfo']);
if($ugname && $uginfo){
$new['user']->create('user_group',array(
'ugname'=>$ugname,
'uginfo'=>$uginfo,
));
}
header('Location: '.SITE_URL.'index.php?app=user&ac=admin&mg=group&ts=list');
break;
case "edit":
$ugid = tsIntval($_POST['ugid']);
$ugname = tsTrim($_POST['ugname']);
$uginfo = tsTrim($_POST['uginfo']);
if(in_array($ugid,array(1,2,3,4))) qiMsg('非法操作!');
$new['user']->update('user_group',array(
'ugid'=>$ugid,
),array(
'ugname'=>$ugname,
'uginfo'=>$uginfo,
));
header('Location: '.SITE_URL.'index.php?app=user&ac=admin&mg=group&ts=list');
break;
//删除用户组
case "delete":
$ugid = tsIntval($_GET['ugid']);
if(in_array($ugid,array(1,2,3,4))){
qiMsg('非法操作!');
}
$new['user']->delete('user_group',array(
'ugid'=>$ugid,
));
#降为普通用户
$new['user']->update('user_info',array(
'ugid'=>$ugid,
),array(
'ugid'=>3,
));
header('Location: '.SITE_URL.'index.php?app=user&ac=admin&mg=group&ts=list');
break;
}
+35
View File
@@ -0,0 +1,35 @@
<?php
defined('IN_TS') or die('Access Denied.');
switch($ts){
case "list":
$page = tsIntval($_GET['page'],1);
$url = SITE_URL.'index.php?app=user&ac=admin&mg=guestbook&ts=list&page=';
$lstart = $page*20-20;
$arrGuestbook = $new['user']->findAll('user_gb',null,'addtime desc',null,$lstart.',20');
$guestNum = $new['user']->findCount('user_gb');
$pageUrl = pagination($guestNum, 20, $page, $url);
include template('admin/guestbook_list');
break;
case "delete":
$guestid = tsIntval($_GET['guestid']);
$page = tsIntval($_GET['page']);
$new['user']->delete('user_gb',array(
'id'=>$guestid,
));
header('Location: '.SITE_URL.'index.php?app=user&ac=admin&mg=guestbook&ts=list&page='.$page);
break;
}
+28
View File
@@ -0,0 +1,28 @@
<?php
defined('IN_TS') or die('Access Denied.');
switch($ts){
//基本配置
case "":
$strOption = getAppOptions('user');
include template("admin/options");
break;
case "do":
$arrOption = $_POST['option'];
#更新app配置选项
upAppOptions('user',$arrOption);
#更新app导航和我的导航
upAppNav('user',$arrOption['appname']);
qiMsg('修改成功!');
break;
}
+39
View File
@@ -0,0 +1,39 @@
<?php
defined('IN_TS') or die('Access Denied.');
switch($ts){
case "":
$ugid = tsIntval($_GET['ugid'],1);
$arrUg = $new['user']->findAll('user_group',null,'ugid asc');
include template('admin/permissions');
break;
case "do":
/**
* 权限参数说明,app,action必须,其他参数可选
* app-action-ts
* app-action-mg-ts 当action=admin
* app-action-api-ts 当action=api
*/
$ugid = tsIntval($_POST['ugid']);
$arrOption = $_POST['option'];
aac('pubs')->upAppPermissions($ugid,'user',$arrOption);
qiMsg('操作成功!');
break;
}
+49
View File
@@ -0,0 +1,49 @@
<?php
defined('IN_TS') or die('Access Denied.');
switch($ts){
//角色列表
case "list":
$arrRole = $new['user']->findAll('user_role');
include template('admin/role_list');
break;
//角色修改
case "do":
$arrRoleName = $_POST['rolename'];
$arrScoreStart = $_POST['score_start'];
$arrScoreEnd = $_POST['score_end'];
//先清空
$db->query("TRUNCATE TABLE `".dbprefix."user_role`");
//后添加
foreach($arrRoleName as $key=>$item){
$rolename = tsTrim($item);
$score_start = tsTrim($arrScoreStart[$key]);
$score_end = tsTrim($arrScoreEnd[$key]);
if($rolename){
$new['user']->create('user_role',array(
'rolename'=>$rolename,
'score_start'=>$score_start,
'score_end'=>$score_end,
));
}
}
//再生成缓存文件
$arrRole = $new['user']->findAll('user_role',null,null,'rolename,score_start,score_end');
fileWrite('user_role.php','data',$arrRole);
$tsMySqlCache->set('user_role',$arrRole);
qiMsg("修改成功!");
break;
}
+123
View File
@@ -0,0 +1,123 @@
<?php
defined('IN_TS') or die('Access Denied.');
switch($ts){
case "list":
$arrScore = $new['user']->findAll('user_score');
include template('admin/score_list');
break;
case "adddo":
$scorekey = tsTrim($_POST['scorekey']);
$scorename = tsTrim($_POST['scorename']);
$score = tsIntval($_POST['score']);
$app = tsTrim($_POST['app']);
$action = tsTrim($_POST['action']);
$mg = tsTrim($_POST['mg']);
$api = tsTrim($_POST['api']);
$ts = tsTrim($_POST['ts']);
$status = tsIntval($_POST['status']);
$new['user']->create('user_score',array(
'scorekey'=>$scorekey,
'scorename'=>$scorename,
'score'=>$score,
'app'=>$app,
'action'=>$action,
'mg'=>$mg,
'api'=>$api,
'ts'=>$ts,
'status'=>$status,
));
header('Location: '.SITE_URL.'index.php?app=user&ac=admin&mg=score&ts=list');
break;
case "editdo":
$scoreid = tsIntval($_POST['scoreid']);
$score = tsIntval($_POST['score']);
$app = tsTrim($_POST['app']);
$action = tsTrim($_POST['action']);
$mg = tsTrim($_POST['mg']);
$api = tsTrim($_POST['api']);
$ts = tsTrim($_POST['ts']);
$status = tsIntval($_POST['status']);
$new['user']->update('user_score',array(
'scoreid'=>$scoreid,
),array(
'score'=>$score,
'app'=>$app,
'action'=>$action,
'mg'=>$mg,
'api'=>$api,
'ts'=>$ts,
'status'=>$status,
));
header('Location: '.SITE_URL.'index.php?app=user&ac=admin&mg=score&ts=list');
break;
//加积分
case "send":
include template('admin/score_send');
break;
case "senddo":
$userid = tsIntval($_POST['userid']);
$score = tsIntval($_POST['score']);
$status = tsIntval($_POST['status']);
$scorename = tsTrim($_POST['scorename']);
if($userid && $score && $scorename){
$return = false;
if($status==1){
//减积分
$return = $new['user']->delScore($userid,$scorename,$score);
$jiajian = '减去';
}else{
//加积分
$return = $new['user']->addScore($userid,$scorename,$score,1);
$jiajian = '增加';
}
if($return==true){
//发送系统消息
$msg_userid = '0';
$msg_touserid = $userid;
$msg_content = $scorename.$jiajian.$score.'积分';
aac('message')->sendmsg($msg_userid,$msg_touserid,$msg_content);
}
qiMsg('操作成功!');
}else{
qiMsg('操作失败!');
}
break;
case "delete":
$scoreid = tsIntval($_GET['scoreid']);
$new['user']->delete('user_score',array(
'scoreid'=>$scoreid,
));
qiMsg('删除成功!');
break;
}
+403
View File
@@ -0,0 +1,403 @@
<?php
defined('IN_TS') or die('Access Denied.');
switch($ts){
//用户列表
case "list":
$page = tsIntval($_GET['page'],1);
$userid = tsIntval($_GET['userid']);
$username = tsFilter($_GET['username']);
$arrData = null;
if($userid > 0 && $username==''){
$arrData = array('userid'=>$userid);
}elseif($userid==0 && $username != ''){
$arrData = array('username'=>$username);
}elseif($userid>0 && $username != ''){
$arrData = array('userid'=>$userid,'username'=>$username);
}
$lstart = $page*20-20;
$url = SITE_URL.'index.php?app=user&ac=admin&mg=user&ts=list&userid='.$userid.'&username='.$username.'&page=';
$arrAllUser = $new['user']->findAll('user_info',$arrData,'userid desc',null,$lstart.',20');
$userNum = $new['user']->findCount('user_info');
$pageUrl = pagination($userNum, 20, $page, $url);
#用户组
$arrUg = $new['user']->findAll('user_group',"`ugid`!=4",'ugid asc');
foreach($arrUg as $key=>$item){
$arrUg1[$item['ugid']] = $item['ugname'];
}
include template("admin/user_list");
break;
//用户编辑
case "edit":
$userid = $_GET['userid'];
$strUser = $new['user']->getOneUser($userid);
include template("admin/user_edit");
break;
//用户查看
case "view":
$userid = $_GET['userid'];
$strUser = $new['user']->getOneUser($userid);
include template("admin/user_view");
break;
//用户停用启用
case "isenable":
$userid = tsIntval($_GET['userid']);
if($userid==1) qiMsg('无法停用该用户!');
$page = tsIntval($_GET['page']);
$strUser = $new['user']->find('user_info',array(
'userid'=>$userid,
));
if($strUser['isadmin']==1) qiMsg('管理员不能停用!');
//禁用
if($strUser['isenable']==0){
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'isenable'=>1,
));
//封用户Id
$isuser = $new['user']->findCount('anti_user',array(
'userid'=>$userid,
));
if($isuser==0){
$new['user']->create('anti_user',array(
'userid'=>$userid,
'addtime'=>date('Y-m-d H:i:s'),
));
}
//封IP
$isip = $new['user']->findCount('anti_ip',array(
'ip'=>$strUser['ip']
));
if($isip==0 && $strUser['ip']){
$new['user']->create('anti_ip',array(
'ip'=>$strUser['ip'],
'addtime'=>date('Y-m-d H:i:s'),
));
}
}
//启用
if($strUser['isenable']==1){
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'isenable'=>0,
));
$new['user']->delete('anti_user',array(
'userid'=>$userid,
));
$new['user']->delete('anti_ip',array(
'ip'=>$strUser['ip'],
));
}
#qiMsg('操作成功!');
header('Location: '.SITE_URL.'index.php?app=user&ac=admin&mg=user&ts=list&page='.$page);
break;
//修改密码
case "pwd":
$userid = tsIntval($_GET['userid']);
$strUser = $new['user']->find('user',array(
'userid'=>$userid,
));
include template('admin/user_pwd');
break;
//执行修改密码
case "pwddo":
$userid = tsIntval($_POST['userid']);
$pwd = tsTrim($_POST['pwd']);
if($pwd == '') qiMsg('密码不能为空!');
$strUser = $new['user']->find('user',array(
'userid'=>$userid,
));
$salt = md5(rand());
$new['user']->update('user',array(
'userid'=>$userid,
),array(
'pwd'=>md5($salt.$pwd),
'salt'=>$salt,
));
qiMsg('密码修改成功:'.$pwd);
break;
//清空用户数据
case "deldata":
$userid = tsIntval($_GET['userid']);
if($userid==1) qiMsg('该用户数据无法清空!');
aac('user')->toEmpty($userid);
qiMsg('清空数据成功!');
break;
//管理员
case "admin":
$userid = tsIntval($_GET['userid']);
if($userid==1) qiMsg('该用户无法取消管理员!');
$strUser = $new['user']->find('user_info',array(
'userid'=>$userid,
));
if($strUser['isadmin']==1){
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'isadmin'=>'0',
'isverify'=>'0',
'isverifyphone'=>'0',
'isrenzheng'=>'0',
));
}elseif($strUser['isadmin']==0){
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'isadmin'=>'1',//系统管理员
'isverify'=>'1',//Email验证
'isverifyphone'=>'1',//手机号验证
'isrenzheng'=>'1',//人工认证
));
}
qiMsg('操作成功!');
break;
//清空全部被禁用的用户数据并保存垃圾Email
case "clean":
$arrUser = $new['user']->findAll('user_info',array(
'isenable'=>1,
));
foreach($arrUser as $key=>$item){
//执行删除用户数据
aac('user')->toEmpty($item['userid']);
}
qiMsg('垃圾用户清空完毕!');
break;
case "face":
$userid = tsIntval($_GET['userid']);
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'path'=>'',
'face'=>'',
));
qiMsg('操作成功!');
break;
//是否手工认证
case "isrenzheng":
$userid = tsIntval($_GET['userid']);
if($userid==1) qiMsg('该用户无法操作!');
$strUser = $new['user']->find('user_info',array(
'userid'=>$userid,
));
//开通认证
if($strUser['isrenzheng']==0){
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'isrenzheng'=>1,
));
//发系统消息
$msg_userid = '0';
$msg_touserid = $userid;
$msg_content = '恭喜你,系统已经通过你的个人信息认证!';
aac('message')->sendmsg($msg_userid,$msg_touserid,$msg_content);
}
//取消认证
if($strUser['isrenzheng']==1){
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'isrenzheng'=>0,
));
//发系统消息
$msg_userid = '0';
$msg_touserid = $userid;
$msg_content = '很抱歉,系统取消了你的个人信息认证!';
aac('message')->sendmsg($msg_userid,$msg_touserid,$msg_content);
}
qiMsg('操作成功!');
break;
case "isverify":
$userid = tsIntval($_GET['userid']);
$strUser = $new['user']->find('user_info',array(
'userid'=>$userid,
));
if($strUser['isverify']==0){
$isverify = 1;
}else{
$isverify = 0;
}
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'isverify'=>$isverify,
));
qiMsg('操作成功!');
break;
case "isverifyphone":
$userid = tsIntval($_GET['userid']);
$strUser = $new['user']->find('user_info',array(
'userid'=>$userid,
));
if($strUser['isverifyphone']==0){
$isverifyphone = 1;
}else{
$isverifyphone = 0;
}
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'isverifyphone'=>$isverifyphone,
));
qiMsg('操作成功!');
break;
case "ugid":
$userid = tsIntval($_POST['userid']);
$ugid = tsIntval($_POST['ugid']);
if($userid==1) $ugid=1;
if($ugid==4) qiMsg('非法操作!');
$new['user']->update('user_info',array(
'userid'=>$userid,
),array(
'ugid'=>$ugid,
));
break;
case "add":
include template('admin/user_add');
break;
case "adddo":
$email = tsTrim($_POST['email']);
$username = tsTrim($_POST['username']);
$pwd = tsTrim($_POST['pwd']);
if($email=='' || $username=='' || $pwd==''){
qiMsg('信息输入不完整');
}
#判断Email是否存在
$isEmail = $new['user']->findCount('user',array(
'email'=>$email,
));
if($isEmail > 0){
qiMsg('账号已经注册');
}
if(count_string_len($username) < 4 || count_string_len($username) > 20){
qiMsg('姓名长度必须在4和20之间');
}
#判断用户名是否存在
$isUserName = $new['user']->findCount('user_info',array(
'username'=>$username,
));
if($isUserName > 0){
qiMsg('用户名已经存在,请换个用户名!');
}
$new['user']->register($email,$username,$pwd,$fuserid,$invitecode,1);
header('Location: '.SITE_URL.'index.php?app=user&ac=admin&mg=user&ts=list');
break;
}