<?php
namespace imcat;
(!
defined('RUN_INIT')) && die('No Init');

// usrAdmin
class usrAdmin extends usrBase{    
    
    
//public $sessid = '';
    
    
function __construct() {
        
parent::__construct('adminer'); 
    }
    
    
//
    
function login($uname='',$upass='',$ck=0){
        
$re1 $this->check_login($uname,$upass);
        
$re2 $this->login_msg($re1);
        if(
$re1=='OK'){ //Session
            
$this->setSess();
        }
        return array(
$re1,$re2);
    }
    
    
// 
    
function logout(){
        
$re1 $this->check_logout();
        if(
$re1!='Forbid'){ 
            
comSession::set($this->sessid,''); 
        }else{
            
//echo "$re1";    
        
}
        return 
$re1;
    }
    
    function 
setSess(){
        
$str '';
        foreach(array(
'model','grade') as $k){
            
$str .= (empty($str) ? '':'&')."$k=".@$this->uperm[$k];
        } 
        
// model=adminer&grade=supper 
        
if(strpos($str,'grade=supper')){
            
$str .= "&pextra=pstools,psdev";
        }else{
            
$str .= "&pextra=".@$this->uperm['pextra'];    
        } 
        
comSession::set($this->sessid,$str); 
    }

    static function 
opLogin($vop=null){    
        
$user usrBase::userObj('Admin');
        
$act basReq::val('act');
        if(
$act=='dologin'){ 
            
$fm $_POST['fm'];
            
$re2 safComm::formCAll('fmadm');
            
basDebug::bugLogs('adm-login',empty($re2[0])?$fm['uname'].':OK':$re2[0],'syact','db');
            if(empty(
$re2[0])){ 
                
$res $user->login($fm['uname'],$fm['upass']);
                
$remsg $res[0]=='OK' '' $res[1];
                
$remsg || header('Location:'."?");
            }else{
                
$remsg basLang::show('admin.oplogin_vform_err');    
            } 
        }elseif(
$vop->key=='logout'){ 
            
$user->logout();
            
$remsg basLang::show('admin.oplogin_logout');
        }elseif(
$user->userFlag=='Login'){
            
$remsg basLang::show('admin.oplogin_islogin',$user->usess['uname']);
        }
        
$remsg = empty($remsg) ? basLang::show('admin.oplogin_please_login') : $remsg
        return 
$remsg;
    } 

}