Files
Pichome/core/class/dzz/modrun.php
2022-05-02 22:31:35 +08:00

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);
}
}
}
}
}