Пример #1
0
 private function _init_user()
 {
     if ($this->init_user) {
         if ($auth = getglobal('auth', 'cookie')) {
             $auth = daddslashes(explode("\t", authcode($auth, 'DECODE')));
         }
         list($core_pw, $core_user_id) = empty($auth) || count($auth) < 2 ? array('', '') : $auth;
         if ($core_user_id) {
             $user = getuserbyuid($core_user_id, 1);
         }
         if (!empty($user) && $user['password'] == $core_pw) {
             $this->var['member'] = $user;
         } else {
             $user = array();
             $this->_init_guest();
         }
     } else {
         $this->_init_guest();
     }
     if (empty($this->var['cookie']['lastvisit'])) {
         $this->var['member']['lastvisit'] = TIMESTAMP - 3600;
         dsetcookie('lastvisit', TIMESTAMP - 3600, 86400 * 30);
     } else {
         $this->var['member']['lastvisit'] = $this->var['cookie']['lastvisit'];
     }
     //setglobal('uid', getglobal('user_id', 'member'));
     setglobal('user_id', $core_user_id);
     setglobal('user_name', getglobal('user_name', 'member'));
     setglobal('user_realname', getglobal('user_realname', 'member'));
     setglobal('user_group_id', getglobal('user_group_id', 'member'));
     setglobal('d_id', getglobal('d_id', 'member'));
     if (getglobal('user_role_id', 'member')) {
         setglobal('user_role_id', getglobal('user_role_id', 'member'));
     } else {
         setglobal('user_role_id', 1);
     }
     //DEBUG  初始化角色名称
     if (getglobal('user_role_id', 'member')) {
         setglobal('role_name', ext::role_name(getglobal('user_role_id', 'member')));
     }
     setglobal('user_level_id', getglobal('user_level_id', 'member'));
     //初始化所属区域与学校
     if (getglobal('d_id', 'member')) {
         setglobal('d_name', ext::d_name(getglobal('d_id', 'member')));
     }
     /*
     if($core_user_id) {
     	//TODO user_access 暂未有业务逻辑需求
     	//$user_access = ext::getuseraccessbyuid($core_user_id);
     	//setglobal('user_access', $user_access);
     }
     */
     //DEBUG 初始化用户菜单
     $login_user_menu = array();
     $user_menu = $this->var['setting']['user_role_menu']['user_menu'];
     $role_menu = $this->var['setting']['user_role_menu']['role_menu'];
     $user_role_id = getglobal('user_role_id');
     if (!empty($user_menu[$core_user_id])) {
         $login_user_menu = $user_menu[$core_user_id]['menu_url_tree'];
         $login_user_menu_url_md5 = $user_menu[$core_user_id]['menu_url_md5'];
     } elseif (!empty($role_menu[$user_role_id])) {
         $login_user_menu = $role_menu[$user_role_id]['menu_url_tree'];
         $login_user_menu_url_md5 = $role_menu[$user_role_id]['menu_url_md5'];
     }
     setglobal('setting/user_role_menu', '');
     setglobal('login_user_menu', $login_user_menu);
     setglobal('login_user_menu_url_md5', $login_user_menu_url_md5);
 }
Пример #2
0
         $menu_open = "";
     }
     if (array_key_exists($mvalue['menu_id'], $user_menu_current_array)) {
         $menu_open_selected = ", checked:true ";
     } else {
         $menu_open_selected = "";
     }
     $menu_json_string .= '{ id:' . $mvalue['menu_id'] . ', pId:' . $mvalue['menu_pid'] . ', name:"' . $mvalue['name_var'] . '"' . $menu_open_selected . $menu_open . '}';
     $i++;
 }
 $menu_json_string = '[' . $menu_json_string . ']';
 //DEBUG 取出所有菜单 end
 if ($user_id) {
     //DEBUG 编辑
     $user_result = ext::getuserbyuid($user_id);
     $user_result['role_name'] = ext::role_name($user_result['user_role_id']);
     if ($is_submit) {
         if ($user_password == $user_password2 && !empty($user_name) && !empty($user_realname)) {
             $user_data = array("user_name" => $user_name, "user_realname" => $user_realname, "user_role_id" => $user_role_id, "user_score" => $user_score, "user_modify_time" => TIMESTAMP);
             if (!empty($user_password)) {
                 $user_password_encode = encode_password($user_password);
                 $user_data["user_password"] = $user_password_encode;
             }
             DB::update('users', $user_data, "user_id='" . $user_id . "' LIMIT 1");
             //DEBUG 更新用户权限菜单
             ext::set_user_role_menu(2, $user_menu, $user_id);
             echo '{
                 "statusCode":"200",
                 "message":"' . lang('core', 'operation_successful') . '",
                 "navTabId":"admin_user_index",
                 "rel":"",