www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/admina/usergroups.inc.php
<? (!defined('M_COM') || !defined('M_ADMIN')) && exit('No Permission'); aheader(); !checkapermission('usergroupsedit') && amessage(lang('no_apermission')); load_cache('grouptypes,currencys,mchannels'); if(empty($gtid) || empty($grouptypes[$gtid])) amessage(lang('confirmchoose grouptype')); $grouptype = $grouptypes[$gtid]; $usergroups = read_cache('usergroups',$gtid); $gtcname = $grouptypes[$gtid]['cname']; if($action == 'usergroupsedit'){ if(!submitcheck('busergroupsadd') && !submitcheck('busergroupsedit')){ $items = ''; foreach($usergroups as $k => $usergroup){ $items .= "<tr align=\"center\"><td class=\"item1\"><input class=\"checkbox\" type=\"checkbox\" name=\"delete[$k]\" value=\"$k\"></td>\n". "<td class=\"item2\"><input type=\"text\" size=\"12\" name=\"usergroupsnew[$k][cname]\" value=\"$usergroup[cname]\"></td>\n". "<td class=\"item1\">$gtcname</td>\n". "<td class=\"item2\"><input type=\"text\" size=\"3\" maxlength=\"3\" name=\"usergroupsnew[$k][prior]\" value=\"$usergroup[prior]\"></td>\n". "<td class=\"item1\">".($grouptype['mode'] < 2 ? '-' : "<input type=\"text\" size=\"12\" name=\"usergroupsnew[$k][currency]\" value=\"$usergroup[currency]\">")."</td>\n". "<td class=\"item2\"><a href=\"?entry=usergroups&action=usergroupcopy>id=$gtid&ugid=$k\">".lang('copy')."</a></td>\n". "<td class=\"item1\"><a href=\"?entry=usergroups&action=usergroupdetail>id=$gtid&ugid=$k\">".lang('setting')."</a></td></tr>\n"; } a_guide('usergroupsedit'); tabheader(lang('edit usergroup').'-'.$grouptype['cname'],'usergroupsedit','?entry=usergroups&action=usergroupsedit>id='.$gtid,'6'); trcategory(array('<input class="checkbox" type="checkbox" name="chkall" onclick="checkall(this.form)">'.lang('del'),lang('usergroup'),lang('belong grouptype1'),lang('order'),lang(($grouptype['mode'] == 2 ? 'base' : ($grouptype['mode'] == 3 ? 'exchange' : 'related')).' currency').($grouptype['mode'] < 2 ? '' : '('.$currencys[$grouptype['crid']]['cname'].')'),lang('copy'),lang('edit'))); echo $items; tabfooter('busergroupsedit',lang('modify')); tabheader(lang('add usergroup').'-'.$grouptype['cname'],'usergroupsadd','?entry=usergroups&action=usergroupsedit>id='.$gtid); trbasic(lang('usergroup cname'),'usergroupadd[cname]'); ($grouptype['mode'] > 1) && trbasic(lang(($grouptype['mode'] == 2 ? 'base' : 'exchange').' currency amount').'('.$currencys[$grouptype['crid']]['cname'].')','usergroupadd[currency]'); tabfooter('busergroupsadd',lang('add')); }elseif(submitcheck('busergroupsadd')){ !checkapermission('grouptype_'.$gtid) && amessage(lang('no_apermission')); if(!$usergroupadd['cname']){ amessage(lang('usergroup data missing'),'?entry=usergroups&action=usergroupsedit>id='.$gtid); } $usergroupadd['currency'] = $grouptype['mode'] < 2 ? 0 : max(0,intval($usergroupadd['currency'])); $db->query("INSERT INTO {$tblprefix}usergroups SET cname='$usergroupadd[cname]', currency='$usergroupadd[currency]', gtid='$gtid'"); adminlog(lang('add usergroup')); updatecache('usergroups',$gtid); amessage(lang('usergroup add finish'), '?entry=usergroups&action=usergroupsedit>id='.$gtid); }elseif(submitcheck('busergroupsedit')){ !checkapermission('grouptype_'.$gtid) && amessage(lang('no_apermission')); if(!empty($delete)){ foreach($delete as $ugid) { $db->query("DELETE FROM {$tblprefix}usergroups WHERE ugid='$ugid'"); $db->query("UPDATE {$tblprefix}members SET grouptype$gtid=0 WHERE grouptype$gtid='$ugid'",'SILENT'); del_cache('usergroup',$gtid,$ugid); unset($usergroupsnew[$ugid]); } } if(!empty($usergroupsnew)){ foreach($usergroupsnew as $ugid => $usergroup){ $usergroup['currency'] = $grouptype['mode'] < 2 ? 0 : max(0,intval($usergroup['currency'])); $usergroup['prior'] = max(0,intval($usergroup['prior'])); $usergroup['cname'] = empty($usergroup['cname']) ? $usergroups[$ugid]['cname'] : $usergroup['cname']; if(($usergroup['cname'] != $usergroups[$ugid]['cname']) || ($usergroup['prior'] != $usergroups[$ugid]['prior'] || ($usergroup['currency'] != $usergroups[$ugid]['currency']))){ $db->query("UPDATE {$tblprefix}usergroups SET cname='$usergroup[cname]', currency='$usergroup[currency]', prior='$usergroup[prior]' WHERE ugid='$ugid'"); } } } adminlog(lang('edit usergroup')); updatecache('usergroups',$gtid); amessage(lang('usergroup modify finish'), '?entry=usergroups&action=usergroupsedit>id='.$gtid); } }elseif($action == 'usergroupcopy' && $gtid && $ugid){ $forward = empty($forward) ? M_REFERER : $forward; $usergroup = read_cache('usergroup',$gtid,$ugid); if(!submitcheck('busergroupcopy')){ a_guide('usergroupcopy'); tabheader(lang('usergroup copy').'-'.$grouptype['cname'],'usergroupcopy',"?entry=usergroups&action=usergroupcopy>id=$gtid&ugid=$ugid&forward=".rawurlencode($forward),2,0,1); trbasic(lang('soc usergroup cname'),'',$usergroup['cname'],''); trbasic(lang('new usergroup cname'),'usergroupnew[cname]'); tabfooter('busergroupcopy'); $submitstr = ''; $submitstr .= makesubmitstr('usergroupnew[cname]',1,0,0,30); check_submit_func($submitstr); }else{ !checkapermission('grouptype_'.$gtid) && amessage(lang('no_apermission')); $usergroupnew['cname'] = trim(strip_tags($usergroupnew['cname'])); if(empty($usergroupnew['cname'])){ amessage(lang('data missing'),M_REFERER); } $sqlstr = ''; foreach(array('mchids','currency','limitday','prior','amcid','discount','issuepermit','commentpermit','purchasepermit','answerpermit', 'uploadpermit','searchpermit','downloadpermit','freeupdatecheck','freeupdatecopy','denyarc','denyatm','maxuptotal','maxdowntotal','maxpms',) as $k){ $sqlstr .= ",$k='".addslashes($usergroup[$k])."'"; } $db->query("INSERT INTO {$tblprefix}usergroups SET cname='$usergroupnew[cname]', gtid='$gtid' $sqlstr "); adminlog(lang('copy usergroup')); updatecache('usergroups',$gtid); amessage(lang('usergroup copy finish'),$forward); } }elseif(($action == 'usergroupdetail') && $gtid && $ugid){ $forward = empty($forward) ? M_REFERER : $forward; $usergroup = read_cache('usergroup',$gtid,$ugid); if(!submitcheck('busergroupdetail')){ a_guide('usergroupdetail'); tabheader(lang('edit usergroup').'-'.$grouptype['cname'],'usergroupdetail',"?entry=usergroups&action=usergroupdetail>id=$gtid&ugid=$ugid&forward=".rawurlencode($forward)); trbasic(lang('usergroup cname'),'usergroupnew[cname]',$usergroup['cname']); trbasic(lang('inchids allow use'),'',makecheckbox('usergroupnew[mchids][]',mchidsarr(),!empty($usergroup['mchids']) ? explode(',',$usergroup['mchids']) : array(),5),''); trbasic(lang('usergroup validperiod').'('.lang('day').')','usergroupnew[limitday]',$usergroup['limitday']); if($grouptype['forbidden']){ trbasic(lang('allow issue archive'),'usergroupnew[issuepermit]',$usergroup['issuepermit'],'radio'); trbasic(lang('allow issue comment'),'usergroupnew[commentpermit]',$usergroup['commentpermit'],'radio'); trbasic(lang('allow purchase goods'),'usergroupnew[purchasepermit]',$usergroup['purchasepermit'],'radio'); trbasic(lang('allow issue answer0'),'usergroupnew[answerpermit]',$usergroup['answerpermit'],'radio'); trbasic(lang('allow upload attachment'),'usergroupnew[uploadpermit]',$usergroup['uploadpermit'],'radio'); trbasic(lang('allow download attachment'),'usergroupnew[downloadpermit]',$usergroup['downloadpermit'],'radio'); }elseif($grouptype['afunction']){ $amcidarr = array('0' => lang('nosetting')); $amconfigs = reload_cache('amconfigs'); foreach($amconfigs as $amcid => $amconfig){ $amcidarr[$amcid] = $amconfig['cname']; } trbasic(lang('admin backarea project'),'usergroupnew[amcid]',makeoption($amcidarr,$usergroup['amcid']),'select'); trbasic(lang('allow upload attachment'),'usergroupnew[uploadpermit]',$usergroup['uploadpermit'],'radio'); trbasic(lang('allow insite search'),'usergroupnew[searchpermit]',$usergroup['searchpermit'],'radio'); trbasic(lang('freeupdatecheck'),'usergroupnew[freeupdatecheck]',$usergroup['freeupdatecheck'],'radio'); trbasic(lang('freeupdatecopy'),'usergroupnew[freeupdatecopy]',$usergroup['freeupdatecopy'],'radio'); trbasic(lang('freesale look tax content'),'usergroupnew[denyarc]',$usergroup['denyarc'],'radio'); trbasic(lang('freesale look tax attachment'),'usergroupnew[denyatm]',$usergroup['denyatm'],'radio'); trbasic(lang('pm amount limited'),'usergroupnew[maxpms]',$usergroup['maxpms']); trbasic(lang('upload limited').'(M)','usergroupnew[maxuptotal]',$usergroup['maxuptotal']); trbasic(lang('download limited').'(M)','usergroupnew[maxdowntotal]',$usergroup['maxdowntotal']); trbasic(lang('purchase goods discount (%)'),'usergroupnew[discount]',$usergroup['discount'],'text'); }else{ ($grouptype['mode'] > 1) && trbasic(lang('related currency amount'),'usergroupnew[currency]',$usergroup['currency']); trbasic(lang('allow upload attachment'),'usergroupnew[uploadpermit]',$usergroup['uploadpermit'],'radio'); trbasic(lang('allow insite search'),'usergroupnew[searchpermit]',$usergroup['searchpermit'],'radio'); trbasic(lang('freeupdatecheck'),'usergroupnew[freeupdatecheck]',$usergroup['freeupdatecheck'],'radio'); trbasic(lang('freeupdatecopy'),'usergroupnew[freeupdatecopy]',$usergroup['freeupdatecopy'],'radio'); trbasic(lang('freesale subscribe archive'),'usergroupnew[denyarc]',$usergroup['denyarc'],'radio'); trbasic(lang('freesale subscribe attachment'),'usergroupnew[denyatm]',$usergroup['denyatm'],'radio'); trbasic(lang('pm amount limited'),'usergroupnew[maxpms]',$usergroup['maxpms']); trbasic(lang('upload limited').'(M)','usergroupnew[maxuptotal]',$usergroup['maxuptotal']); trbasic(lang('download limited').'(M)','usergroupnew[maxdowntotal]',$usergroup['maxdowntotal']); trbasic(lang('purchase goods discount (%)'),'usergroupnew[discount]',$usergroup['discount'],'text'); } tabfooter('busergroupdetail',lang('modify')); }else{ !checkapermission('grouptype_'.$gtid) && amessage(lang('no_apermission')); $sqlstr = ''; if($grouptype['forbidden']){ $sqlstr .= "issuepermit='$usergroupnew[issuepermit]',". "commentpermit='$usergroupnew[commentpermit]',". "purchasepermit='$usergroupnew[purchasepermit]',". "answerpermit='$usergroupnew[answerpermit]',". "uploadpermit='$usergroupnew[uploadpermit]',". "downloadpermit='$usergroupnew[downloadpermit]',"; }elseif($grouptype['afunction']){ $usergroupnew['discount'] = round(min(100,max(0,floatval($usergroupnew['discount']))),2); $usergroupnew['maxuptotal'] = !max(0,intval($usergroupnew['maxuptotal'])) ? 0 : max(0,intval($usergroupnew['maxuptotal'])); $usergroupnew['maxdowntotal'] = !max(0,intval($usergroupnew['maxdowntotal'])) ? 0 : max(0,intval($usergroupnew['maxdowntotal'])); $sqlstr .= "denyarc='$usergroupnew[denyarc]',". "uploadpermit='$usergroupnew[uploadpermit]',". "searchpermit='$usergroupnew[searchpermit]',". "freeupdatecheck='$usergroupnew[freeupdatecheck]',". "freeupdatecopy='$usergroupnew[freeupdatecopy]',". "denyatm='$usergroupnew[denyatm]',". "maxpms='$usergroupnew[maxpms]',". "discount='$usergroupnew[discount]',". "maxuptotal='$usergroupnew[maxuptotal]',". "maxdowntotal='$usergroupnew[maxdowntotal]',". "amcid='$usergroupnew[amcid]',"; }else{ $usergroupnew['currency'] = ($grouptype['mode'] < 1) || empty($usergroupnew['currency']) ? 0 : max(0,intval($usergroupnew['currency'])); $usergroupnew['discount'] = round(min(100,max(0,floatval($usergroupnew['discount']))),2); $usergroupnew['maxuptotal'] = !max(0,intval($usergroupnew['maxuptotal'])) ? 0 : max(0,intval($usergroupnew['maxuptotal'])); $usergroupnew['maxdowntotal'] = !max(0,intval($usergroupnew['maxdowntotal'])) ? 0 : max(0,intval($usergroupnew['maxdowntotal'])); $sqlstr .= "currency='$usergroupnew[currency]',". "uploadpermit='$usergroupnew[uploadpermit]',". "searchpermit='$usergroupnew[searchpermit]',". "freeupdatecheck='$usergroupnew[freeupdatecheck]',". "freeupdatecopy='$usergroupnew[freeupdatecopy]',". "denyarc='$usergroupnew[denyarc]',". "denyatm='$usergroupnew[denyatm]',". "maxpms='$usergroupnew[maxpms]',". "discount='$usergroupnew[discount]',". "maxuptotal='$usergroupnew[maxuptotal]',". "maxdowntotal='$usergroupnew[maxdowntotal]',"; } $usergroupnew['cname'] = !$usergroupnew['cname'] ? $usergroup['cname'] : $usergroupnew['cname']; $usergroupnew['mchids'] = !empty($usergroupnew['mchids']) ? implode(',',$usergroupnew['mchids']) : ''; $usergroupnew['limitday'] = !intval($usergroupnew['limitday']) ? 0 : intval($usergroupnew['limitday']); $sqlstr .= "cname='$usergroupnew[cname]', mchids='$usergroupnew[mchids]', limitday='$usergroupnew[limitday]' "; $db->query("UPDATE {$tblprefix}usergroups SET $sqlstr WHERE ugid='$ugid'"); adminlog(lang('detail modify usergroup')); updatecache('usergroups',$gtid); amessage(lang('usergroup edit finish'),$forward); } } ?>