$xml = new XMLOperator($xmlpath); if (!$xml->query("//group[@id='plugin_{$name}']")) { $xml->addNode("/resources", "group", "", "id=plugin_{$name};value={$title}插件权限"); } $rights = explode(",", $backrights); foreach ($rights as $right) { $resoult = explode(":", $right); $xml->addNode("//group[@id='plugin_{$name}']", "resource", "", "id={$name}_{$resoult['0']};value={$resoult['1']}"); } $xml->save($xmlpath); } //前台权限处理 if ($frontrights != "") { $xmlpath = $webRoot . "plugins/front_resources.xml"; $xml = new XMLOperator($xmlpath); if (!$xml->query("//group[@id='plugin_{$name}']")) { $xml->addNode("/resources", "group", "", "id=plugin_{$name};value={$title}插件权限"); } $rights = explode(",", $frontrights); foreach ($rights as $right) { $resoult = explode(":", $right); $xml->addNode("//group[@id='plugin_{$name}']", "resource", "", "id={$name}_{$resoult['0']};value={$resoult['1']}"); } $xml->save($xmlpath); } //注册插件 $dbo = new dbex(); dbtarget('w', $dbServs); $sql = "insert into {$plugin_table}(title,name,valid,autoorder,image,reg_date,info) value('{$title}','{$name}','{$valid_value}','{$autoorder_value}','{$image}',NOW(),'{$description}')"; //注册插件入口 $dbo->exeUpdate($sql);
if (!empty($groups)) { foreach ($groups as $group) { $rights = preg_replace("/{$path}[^,]+(,?)/", "", $group['rights']); if (substr($rights, -1) == ',') { $rights = substr($rights, 0, -1); } $sql = "update {$t_backgroup} set rights='{$rights}' where id={$group['id']}"; $dbo->exeUpdate($sql); } } $xml->delNode("//group[@id='plugin_{$path}']"); $xml->save($xmlpath); } $xmlpath = $webRoot . "plugins/front_resources.xml"; $xml = new XMLOperator($xmlpath); if ($xml->query("//group[@id='plugin_{$path}']")) { $sql = "select id,rights from {$t_frontgroup} where rights like '%{$path}_%'"; dbtarget('r', $dbServs); $groups = $dbo->getRs($sql); dbtarget('w', $dbServs); if (!empty($groups)) { foreach ($groups as $group) { $rights = preg_replace("/{$path}[^,]+(,?)/", "", $group['rights']); if (substr($rights, -1) == ',') { $rights = substr($rights, 0, -1); } $sql = "update {$t_frontgroup} set rights='{$rights}' where id={$group['id']}"; $dbo->exeUpdate($sql); } } $xml->delNode("//group[@id='plugin_{$path}']");
<title></title> <style> *{font-size:12px;} h3{margin:6px 0 0 0;padding:0} </style> </head> <body> <?php require_once dirname(__FILE__) . "/../../foundation/fgetandpost.php"; require_once dirname(__FILE__) . "/../../foundation/cxmloperator.class.php"; $xmlpath = "resources/front_resources.xml"; $xml = new XMLOperator($xmlpath); if (get_args('addgroup')) { $id = get_args('id'); $value = get_args('value'); if ($id && $value && !$xml->query("//group[@id='{$id}']")) { $xml->addNode("/resources", "group", "", "id={$id};value={$value}"); } $xml->save($xmlpath); } else { if (get_args('updgroup')) { $id = get_args('id'); $value = get_args('value'); $xml->updAttr("//group[@id='{$id}']", "value", $value); $xml->save($xmlpath); } } $groups = $xml->query("//group"); if (get_args('submit')) { $group_id = get_args('group'); $id = get_args('id');