?? user_group.php
字號:
<?
class CPage extends Page
{
function page_load()
{
$this->objDataSet -> setTable($this->user_group);
$javascript= '<script language="JavaScript" type="text/JavaScript" src="../Js/details_control.js"></script>';
$this->tpl->assign("javascript",$javascript);
if (empty($this->in['act'])) $this->onList();
}
function getActionsBlock($user_group_id='')
{
$action_array=array('','list','insert','update','delete','valid','move','make');
$objTB = new TableBlock('width = "100%" cellspacing = "1" cellpadding = "3" border = "0" bgcolor="#FFFFFF"','','bgcolor="#efefef" align="center"');
$objTB -> setData(0,0,$this->app->getSysMsg('modules'),'align="center" bgcolor="#CCCCCC"');
$objTB -> setData(0,1,$this->app->getSysMsg('defaults'),'align="center" bgcolor="#CCCCCC"');
$objTB -> setData(0,2,$this->app->getSysMsg('lists'),'align="center" bgcolor="#CCCCCC"');
$objTB -> setData(0,3,$this->app->getSysMsg('insert'),'align="center" bgcolor="#CCCCCC"');
$objTB -> setData(0,4,$this->app->getSysMsg('mod'),'align="center" bgcolor="#CCCCCC"');
$objTB -> setData(0,5,$this->app->getSysMsg('del'),'align="center" bgcolor="#CCCCCC"');
$objTB -> setData(0,6,$this->app->getSysMsg('valid'),'align="center" bgcolor="#CCCCCC"');
$objTB -> setData(0,7,$this->app->getSysMsg('move'),'align="center" bgcolor="#CCCCCC"');
$objTB -> setData(0,8,$this->app->getSysMsg('make'),'align="center" bgcolor="#CCCCCC"');
$data = $this->objDataSet->getList("select * from ".$this->actions." order by actions_module,actions_act");
$i=0;
$tmp_module='';
foreach ($data->field as $val)
{
if ($val['actions_module'] != $tmp_module)
{
$i++;
$tmp_module = $val['actions_module'];
}
$objTB -> setData($i,0,$val['actions_module'],'align="left"');
foreach ($action_array as $act_key => $act_val)
{
if ($act_val == $val['actions_act'])$n=$act_key+1;
}
$tmp_ids = explode(",",$val['user_group_ids']);
$checked = ($user_group_id && in_array($user_group_id,$tmp_ids)) ? "checked" : "";
$disbale = $user_group_id == 1 ? "disabled=true" : "";
$box_name = (!empty($val['actions_act'])) ? ($val['actions_module'].'_'.$val['actions_act']) : $val['actions_module'];
$objTB -> setData($i,$n,'<input type="checkbox" name="'.$box_name.'" id="user_group_ids_id" value="1" '.$checked.' '.$disbale.'>');
}
$str = $objTB -> createTable();
return $str;
}
function onInsert()
{
$in = & $this->in;
$tpl = & $this->tpl;
$dataSet = & $this->objDataSet;
if ($in['_POST']['user_group_name']){
$data = array('user_group_name'=>$in['user_group_name']);
$user_group_id = $dataSet->insert($data);
$this->update_actions($user_group_id);
$this->page_err();
header("location:index.php?module=user_group");
}
$tpl->assign('actionsBlock',$this->getActionsBlock());
$tpl->assign('name',$in['name']);
$tpl->assign("title",$this->app->getSysMsg('addusergroup'));
$tpl->display("admin/user_group_insert.htm");
}
function update_actions($id,$act = '')
{
$this->page_err();
$in = & $this->in;
$objDataSet = $this->objDataSet;
$data = $objDataSet->getList("select * from ".$this->actions);
for ($i=0,$n=count($data->field);$i<$n;$i++)
{
$actions_name = $data->field[$i]['actions_module'];
if (!empty($data->field[$i]['actions_act']))$actions_name .= "_".$data->field[$i]['actions_act'];
$user_group_ids=explode(",",$data->field[$i]['user_group_ids']);
foreach ($user_group_ids as $key => $val)
{
if (empty($val))unset($user_group_ids[$key]);
if ($val == $id)
{
if ($act == "delete")
{
if ($in[$actions_name])unset($user_group_ids[$key]);
}
else if (!isset($in[$actions_name]))unset($user_group_ids[$key]);
}
}
if ($act != "delete" && $in[$actions_name])
{
if (!in_array($in['user_group_id'],$user_group_ids))$user_group_ids[]=$in['user_group_id'];
}
$user_group_ids = implode(",",$user_group_ids);
$objDataSet->update(array('user_group_ids'=>$user_group_ids),"actions_id = '".$data->field[$i]['actions_id']."'",$this->actions);
}
}
function onUpdate()
{
$in = & $this->in;
$tpl = & $this->tpl;
$dataSet = & $this->objDataSet;
if ($in['_POST']['user_group_id']){
$data = array('user_group_name' => $in['user_group_name']);
$dataSet->update($data,"user_group_id = '".$in['user_group_id']."'");
$this->update_actions($in['user_group_id']);
$this->page_err();
header("location:".$this->fromUrl);
}
$updateData = $dataSet->getDataById($in['id'],'user_group_id');
$tpl->assign('updateData',$updateData);
$tpl->assign('actionsBlock',$this->getActionsBlock($in['id']));
$tpl->assign('fromurl',$this->fromUrl);
$tpl->assign("title",$this->app->getSysMsg('moduser'));
$tpl->display("admin/user_group_update.htm");
}
function onDelete()
{
$in = & $this->in;
$dataSet = & $this->objDataSet;
if (isset($in['row_select']))
{
$ids = "'".implode("','",$in['row_select'])."'";
$dataSet->delete("user_group_id in ($ids)");
for ($i=0,$n=count($in['row_select']);$i<$n;$i++)
{
$this->update_actions($in['row_select'][$i],"delete");
}
}
else if (isset($in['id']))
{
$dataSet->delete("user_group_id = ".$in['id']);
$this->update_actions($in['id'],"delete");
}
if ($this->err->errExists())$this->page_err();
else header("location:".preg_replace("/totalnum=[^&]*&?/","",$this->fromUrl));
}
function onList()
{
$in = & $this->in;
$tpl = & $this->tpl;
$objDataSet = & $this->objDataSet;
$objServer = & $this->objServer;
$orderfield = $in['orderfield'] ? $in['orderfield'] : "user_group_id";
$ordermode = $in['ordermode'] ? $in['ordermode'] : "desc";
$loop_data = $objDataSet->getList("select * from ".$this->user_group." order by $orderfield $ordermode",20);
$tpl->assign("total",$loop_data->total());
$tpl->assign("fromto",$loop_data->fromto());
$loop_data->navchar=array($this->app->getSysMsg('firstpage'),'[<]','[>]',$this->app->getSysMsg('endpage'));
$tpl->assign("navbar",$loop_data->navbar(10));
for ($i=0,$n=count($loop_data->field);$i<$n;$i++)
{
$tmpData = explode(',',$loop_data->field[$i]['user_group_actions']) ;
$loop_data->field[$i]['actionsBlock'] = $this->getActionsBlock($loop_data->field[$i]['user_group_id']);
}
$tpl->assign("fieldsdata",$loop_data->field);
$tpl->assign($in['_GET']);
$column_name = $this->getColumnStr($this->app->getSysMsg('usergroupname'),"user_group_name") ;
$column_id = $this->getColumnStr($this->app->getSysMsg('id'),"user_group_id",(!$in['ordermode'] ? "↓" : "" )) ;
$tpl->assign(array('column_name' => $column_name,
'column_id' => $column_id)) ;
$tpl->assign("title",$this->app->getSysMsg('usergrouplist'));
$tpl->display("admin/user_group_list.htm");
}
}
?>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -