1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- <?php
- defined('IN_PHPCMS') or exit('No permission resources.');
- class role_cat {
- //数据库连接
- static $db;
-
- private static function _connect() {
- self::$db = pc_base::load_model('category_priv_model');
- }
-
- /**
- * 获取角色配置权限
- * @param integer $roleid 角色ID
- * @param integer $siteid 站点ID
- */
- public static function get_roleid($roleid, $siteid) {
- if (empty(self::$db)) {
- self::_connect();
- }
- if ($data = self::$db->select("`roleid` = '$roleid' AND `is_admin` = '1' AND `siteid` IN ('$siteid') ")) {
- $priv = array();
- foreach ($data as $k=>$v) {
- $priv[$v['catid']][$v['action']] = true;
- }
- return $priv;
- } else {
- return false;
- }
- }
-
- /**
- * 获取站点栏目列表
- * @param integer $siteid 站点ID
- * @return array() 返回为数组
- */
- public static function get_category($siteid) {
- $category = getcache('category_content_'.$siteid, 'commons');
- foreach ($category as $k=>$v) {
- if (!in_array($v['type'], array(0,1))) unset($category[$k]);
- }
- return $category;
- }
-
- /**
- * 更新数据库信息
- * @param integer $roleid 角色ID
- * @param integer $siteid 站点ID
- * @param array $data 需要更新的数据
- */
- public static function updata_priv($roleid, $siteid, $data) {
- if (empty(self::$db)) {
- self::_connect();
- }
- //删除该角色当前的权限
- self::$db->delete(array('roleid'=>$roleid, 'siteid'=>$siteid, 'is_admin'=>1));
- foreach ($data as $k=>$v) {
- if (is_array($v) && !empty($v[0])) {
- foreach ($v as $key=>$val) {
- self::$db->insert(array('siteid'=>$siteid, 'catid'=>$k, 'is_admin'=>1, 'roleid'=>$roleid, 'action'=>$val));
- }
- }
- }
- }
- }
|