<?php
/**
 *
 * ============================================================================
 * * 版权所有 蜘蛛出行 * *
 * 网站地址: http://www.zhizhuchuxing.com
 * ----------------------------------------------------------------------------
 * 这不是一个自由软件！您只能在不用于商业目的的前提下对程序代码进行修改和
 * 使用；不允许对程序代码以任何形式任何目的的再发布。
 * ============================================================================
 * Author By: 倪宗锋
 * PhpStorm AdminUtil.php
 * Create By 2017/3/9 10:30 $
 */


namespace admin\util;


use common\util\Util;
use yii\helpers\ArrayHelper;

class AdminUtil
{
    private static $unLoginConfig = null;//非强制登录接口配置
    private static $siteConfig = null;
    public static $uid = 3;//用户ID

    /**
     * Des:获取未登录可访问接口路径配置
     * Name: getUnLoginConfig
     * @return array
     * @author 倪宗锋
     */
    public static function getUnLoginConfig()
    {
        if (static::$unLoginConfig == null) {
            static::$unLoginConfig = require APP_PATH . '/config/unLoginConfig.php';
        }
        return static::$unLoginConfig;
    }

    /**
     * Des:获取当前应用配置参数
     * Name: getSiteConfig
     * @return array
     * @author 倪宗锋
     */
    public static function getSiteConfig()
    {
        if (static::$siteConfig == null) {
            static::$siteConfig = ArrayHelper::merge(
                require APP_PATH . '/config/' . YII_ENV . '/siteConfig.php',
                Util::getSiteConfig()
            );
        }
        return static::$siteConfig;
    }

    /**
     * Des:用户登录
     * Name: checkLogin
     * @return array
     * @author 倪宗锋
     */
    public static function checkLogin()
    {
        $siteConfig = static::getSiteConfig();
        $cookies = $_COOKIE;
        /**如果用户未登录**/
        if (empty($cookies['user_id'])) {
            return Util::returnArrEr('用户未登录!', '', $siteConfig['unLoginUrl'], 'ADMIN-100001');
        } else {
            static::$uid = $cookies['user_id'];
        }
        return Util::returnArrSu();
    }

    /**
     * Des:获取用户权限
     * Name: getAuthAction
     * @return array
     * @author 倪宗锋
     */
    public static function checkAuthAction($actionName)
    {
        $uid = static::$uid;
        $authAction = require APP_PATH . '/config/'.YII_ENV.'/authAction.php';
        //该接口存在权限而用户不在其中则不可访问
        if (isset($authAction[$actionName]) && in_array($uid, $authAction[$actionName]) == false) {
            return Util::returnArrEr('用户没有权限!', '', '', 'ADMIN-100002');
        }
        return Util::returnArrSu();
    }
}