part.php
来自「极限OA开源系统」· PHP 代码 · 共 245 行
PHP
245 行
<?
/********************************************************************************/
/* 极限办公自动化系统 (极限OA) */
/* ======================== */
/* 欢迎使用 极限OA,在您开始使用之前,请务必完整阅读本软件附带的全部说明档 */
/********************************************************************************/
/* Welcome to http://www.xsp.cn & http://oa.xsp.cn */
/* 技术支持论坛 http://www.1119.net */
/********************************************************************************/
/* 商业购买请联系 临海市极限网络有限公司 */
/* 联系电话: (0576) 5131349 邮件: mkt@xsp.cn QQ: 562873 */
/********************************************************************************/
if(!defined('KIN_UNION')){die("Hacking attempt");}
$pre_s = true;
if($sysaction == 'del') {
checkright(91,51,4);
if(is_array($delete)) {
$ids = "0";
foreach($delete as $val) {
$ids .= ",$val";
if($union_part == $val)
showmessage("对不起 您不能删除自己所属角色, 请返回");
}
}
$sql = "DELETE FROM $table_parts WHERE id IN ($ids)";
$db->query($sql);
header("Location:system.php?action=part");
}
if($sysaction == 'add') {
checkright(91,51,2);
if($name) {
if($id) {
checkright(91,51,3);
$fig = intval($fig);
$db->query("update $table_parts set name='$name',des='$des',fig='$fig' where id='$id'");
header("Location:system.php?action=part");
}else {
$fig = intval($fig);
$db->query("insert into $table_parts (name,des,fig) values ('$name','$des','$fig')");
}
header("Location:system.php?action=part");
}else {
$pre_s = false;
if($id) {
$par_t = $db->query_fetch("select * from $table_parts where id='$id'");
}else
$par_t[fig] = 1;
}
}elseif($sysaction == 'rights') {
if($s_admin) {
checkright(91,51,3);
$par_t = $db->query_fetch("select * from $table_parts where id='$id'");
if(!$par_t[rights]) {
include 'system/rights.php';
}else
$rights0 = $par_t[rights];
$rights = unserialize($rights0);
if(is_array($rights))
foreach($rights AS $key => $val) {
if(is_array($val[vk])) {
$tmp_ar = array();
foreach($val[vk] AS $key2 => $val2) {
unset($vs,$vs2);
for($i=0;$i<5;$i++) {
$kname3 = 'chkFun'.$key.$key2.$i;
$pts_na = ($$kname3)?1:0;
$vs .= "$pts_na";
}
for($i=4;$i>=0;$i--) {
if($vs[$i] == 1) {
for($j=0;$j<=4;$j++) {
if($j <= $i) {
$vs2 .= "1";
}else
$vs2 .= "0";
}
break;
}
}
$vs = $vs2?$vs2:$vs;
$tmp_name = 'chkFun'.$key.$key2;
$tmp_ar[$key2]['name'] = $val2['name'];
$tmp_ar[$key2]['value'] = ($$tmp_name)?1:0;
$tmp_ar[$key2]['vs'] = $val2['vs']=='-'?'-':$vs;
if($key == 91 && $key2 == 51 && $vs[3] == 0) {
showmessage("对不起 您不能将自己的角色管理权限去掉, 请返回");
}
}
}
$tmp_name0 = 'chkFun'.$key;
$s1value = ($$tmp_name0)?1:0;
$tmp_ars[$key] = array('name'=>$val[name],'value'=>$s1value,'vk'=>$tmp_ar);
}
$ss = serialize($tmp_ars);
$db->query("update $table_parts set rights='$ss' where id='$id'");
$db->query("OPTIMIZE TABLE $table_parts");
showmessage('权限更新成功',"system.php?action=part");
}else {
$right5 = array('浏览','查询','添加','修改','删除');
$par_t = $db->query_fetch("select * from $table_parts where id='$id'");
if(!$par_t[rights]) {
include 'system/rights.php';
}else
$rights0 = $par_t[rights];
$rights = unserialize($rights0);
if(is_array($rights))
foreach($rights AS $key => $val) {
if(is_array($val[vk])) {
if(count($val[vk]) > 1)
$codi = " rowspan='".count($val[vk])."'";
else
$codi = '';
}
if($ci % 2 == 0) $classname = 'light';
else $classname = 'dark';
$checked_1 = $val[value]?' checked':'';
$out0 = "<td$codi nowrap><input class='checkbox' type='checkbox' name='chkFun$key' value='1'$checked_1 onclick='Update$key()'>$val[name]</td>\n";
if(is_array($val[vk])) {
foreach($val[vk] AS $key2 => $val2) {
$jsout1 .= "ThisForm.chkFun$key$key2.checked = true;\n";
$jsout2 .= "ThisForm.chkFun$key$key2.checked = false;\n";
if(!$isi) $out1 = $out0;
else $out1 = '';
if(!$isi) {
foreach($val[vk] AS $key_2 => $val_2) {
$jsout3 .= "if(ThisForm.chkFun$key$key_2.checked == false){One_checked=One_checked+1;}";
}
}
$isi++;
$one_checks = count($val[vk]);
$out2 = $outiii = '';
if($val2[vs] == '-') $out2 = " ";
else {
for($j=0;$j<5;$j++) {
$jsout10 .= "ThisForm.chkFun$key$key2$j.checked = true;\n";
$jsout20 .= "ThisForm.chkFun$key$key2$j.checked = false;\n";
$jsout1 .= "ThisForm.chkFun$key$key2$j.checked = true;\n";
$jsout2 .= "ThisForm.chkFun$key$key2$j.checked = false;\n";
$checked_3 = $val2['vs'][$j]?' checked':'';
$out2 .= "<input class='checkbox' type='checkbox' name='chkFun$key$key2$j' value='1'$checked_3 onclick='Update$key$key2$j()'> $right5[$j]";
$jstmp1 = $jstmp2 = '';
for($jis=0;$jis<$j;$jis++) {
$jstmp1 .= "ThisForm.chkFun$key$key2$jis.checked = true;\n";
}
for($jis=4;$jis>$j;$jis--) {
$jstmp2 .= "ThisForm.chkFun$key$key2$jis.checked = false;\n";
}
if($j == 0)
$jstmp2 .= "ThisForm.chkFun$key$key2.checked = false;\nOne_checked=1;\n $jsout3 \n if(One_checked==$one_checks+1){\nThisForm.chkFun$key.checked=false;ThisForm.chkFun$key$key2.checked=false}";
$out .= <<<TOD
<script language="javascript">
function Update$key$key2$j(){
if(ThisForm.chkFun$key$key2$j.checked == true){
ThisForm.chkFun$key$key2.checked = true
ThisForm.chkFun$key.checked = true
$jstmp1
}else if(ThisForm.chkFun$key$key2$j.checked == false){
$jstmp2
}
}
</script>
TOD;
}
}
$checked_2 = $val2[value]?' checked':'';
$out .= "<tr class='$classname'>$out1<td nowrap><input class='checkbox' type='checkbox' name='chkFun$key$key2' value='1'$checked_2 onclick='Update$key$key2()'>$val2[name]</td><td nowrap>$out2</td></tr>\n";
$out .= <<<TOD
<script language="javascript">
function Update$key$key2(){
if(ThisForm.chkFun$key$key2.checked == true){
ThisForm.chkFun$key.checked = true;
$jsout10
}else if(ThisForm.chkFun$key$key2.checked == false){
$jsout20
One_checked=1;
//alert(5);
$jsout3
if(One_checked==$one_checks+1){
ThisForm.chkFun$key.checked=false
}
}
}
</script>
$outiii
TOD;
unset($jsout10,$jsout20);
}
}
$out .= <<<TOD
<script language="javascript">
function Update$key(){
if(ThisForm.chkFun$key.checked == true){
$jsout1
}else if(ThisForm.chkFun$key.checked == false){
$jsout2
}
}
</script>
TOD;
unset($isi,$jsout1,$jsout2,$jsout3);
//$out .= "</tr>\n\n";
$ci++;
}
}
}
if($pre_s) {
$perpage = 15;
if(!$page) {
$page = 1;
}
$offset = ($page - 1) * $perpage;
$query = $db->query("SELECT COUNT(*) FROM $table_parts");
$num = $total = $db->result($query, 0);
$multipage = pages($num, $perpage, $page, "system.php?action=part");
$query = $db->query("select * from $table_parts order by id ASC LIMIT $offset, $perpage");
$num = $db->num_rows($query);
while($list = $db->fetch_array($query)) {
$list[des] = $list[des]?$list[des]:" ";;
$list[fig] = $list[fig]?'<font color=blue>可用</font>':'<font color=red>禁用</font>';
$part_list[$list[id]] = $list;
}
}
include getData('system_part');
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?