72 lines
1.8 KiB
PHP
72 lines
1.8 KiB
PHP
<?php
|
|
namespace core\dzz;
|
|
|
|
use \core as C;
|
|
|
|
class Modrun{
|
|
|
|
//初始运行方法
|
|
public static function run(){
|
|
|
|
global $_config,$_G;
|
|
|
|
self::check_perm($_config['allow_view']);
|
|
|
|
self::check_robot($_config['allow_robot']);
|
|
|
|
self::loadFile($_config['libfile']);
|
|
}
|
|
|
|
//检测权限
|
|
private static function check_perm($perm = 1){
|
|
global $_G;
|
|
switch ($perm){
|
|
case 0:
|
|
break;
|
|
case 1:if(!$_G['uid']) Hook::listen('check_login');//检查是否登录,未登录跳转到登录界面//exit('Access Denied');
|
|
break;
|
|
case 2: if(!$_G['uid']) Hook::listen('check_login');
|
|
if($_G['adminid']!=1) exit('Access Denied');
|
|
break;
|
|
case 3: if(!$_G['uid']) Hook::listen('check_login');
|
|
if(!C::t('user')->checkfounder($_G['member'])) exit('Access Denied');
|
|
break;
|
|
default: exit('arg error');
|
|
|
|
}
|
|
}
|
|
|
|
//检测机器人访问权限
|
|
private static function check_robot($robotAllow = false){
|
|
if(!$robotAllow){
|
|
|
|
$dzz = C::app();
|
|
|
|
$dzz->reject_robot(); //阻止机器人访问
|
|
}
|
|
}
|
|
|
|
//加载文件
|
|
private static function loadFile($files = null){
|
|
global $_config,$_G;
|
|
if(is_array($files)){
|
|
|
|
foreach($files as $v){
|
|
|
|
require_once libfile((isset($v['file_name']) ? $v['file_name']:''),(isset($v['file_folder']) ? $v['file_folder']:''),(isset($v['mod_name']) ? $v['mod_name']:''));
|
|
|
|
}
|
|
|
|
}elseif(is_string($files)){
|
|
|
|
$files = explode(',',$files);
|
|
|
|
foreach ($files as $v){
|
|
if($v){
|
|
require_once libfile($v);
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
} |