Files
Pichome/admin/setting/permgroup.php
2024-01-31 01:00:33 +08:00

74 lines
2.4 KiB
PHP

<?php
/**
* Created by PhpStorm.
* User: a
* Date: 2017/12/26
* Time: 11:48
*/
if (!defined('IN_OAOOA') || !defined('IN_ADMIN')) {
exit('Access Denied');
}
global $_G;
$uid = $_G['uid'];
$perms = get_permsarray();//获取所有权限;
$do = isset($_GET['do']) ? trim($_GET['do']):'';
if($do == 'addpermgroup'){
$pername = isset($_GET['pername'])? trim($_GET['pername']):'';
if(preg_match('/^\s*$/',$pername)){
exit(json_encode(array('error'=>lang('permission_cannot_mpty'))));
}else{
if(C::t('resources_permgroup')->fetch_by_name($pername)){
exit(json_encode(array('error'=>lang('permission_cannot_repeated'))));
}
}
$allperms = $perms;
$perms = isset($_GET['perms'])? $_GET['perms']:'';
$groupperm = 0;
foreach($perms as $v){
$groupperm += $v;
}
if(!$groupperm){
exit(json_encode(array('error'=>lang('please_permissions'))));
}
$setarr = array(
'pername'=>$pername,
'perm'=>$groupperm,
'default'=>isset($_GET['default']) ? intval($_GET['default']):0
);
if($insert = C::t('resources_permgroup')->insert($setarr)){
$selectperm = array();
foreach($allperms as $k=>$v){
if($v[1]&$setarr['perm']){
$selectperm[]=$v[2];
}
}
exit(json_encode(array('success'=>array('id'=>$insert,'pername'=>$setarr['pername'],'perm'=>$selectperm,'default'=>$setarr['default']))));
}else{
exit(json_encode(array('error'=>lang('permission_group_failed'))));
}
}elseif($do == 'editpermgroup_off'){
$id = intval($_GET['id']);
$off = intval($_GET['off']);
$return = C::t('resources_permgroup')->update_off_status($id,$off);
if($return['success']){
showTips(array('success'=>true),'json');
}else{
showTips(array('error'=>true),'json');
}
}elseif($do == 'setdefault'){
$id = isset($_GET['id']) ? intval($_GET['id']):'';
if(C::t('resources_permgroup')->setdefault_by_id($id)){
showTips(array('success'=>true),'json');
}else{
showTips(array('error'=>true),'json');
}
}elseif($do == 'deleteperm'){
$id = isset($_GET['id']) ? intval($_GET['id']):'';
if(C::t('resources_permgroup')->delete_by_id($id)){
showTips(array('success'=>true),'json');
}else{
showTips(array('error'=>true),'json');
}
}