38 lines
		
	
	
		
			979 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			979 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
namespace addons\cos\library;
 | 
						|
 | 
						|
class Auth
 | 
						|
{
 | 
						|
 | 
						|
    public function __construct()
 | 
						|
    {
 | 
						|
 | 
						|
    }
 | 
						|
 | 
						|
    public static function isModuleAllow()
 | 
						|
    {
 | 
						|
        $config = get_addon_config('cos');
 | 
						|
        $module = request()->module();
 | 
						|
        $module = $module ? strtolower($module) : 'index';
 | 
						|
        $noNeedLogin = array_filter(explode(',', $config['noneedlogin'] ?? ''));
 | 
						|
        $isModuleLogin = false;
 | 
						|
        $tagName = 'upload_config_checklogin';
 | 
						|
        foreach (\think\Hook::get($tagName) as $index => $name) {
 | 
						|
            if (\think\Hook::exec($name, $tagName)) {
 | 
						|
                $isModuleLogin = true;
 | 
						|
                break;
 | 
						|
            }
 | 
						|
        }
 | 
						|
        if (in_array($module, $noNeedLogin)
 | 
						|
            || ($module == 'admin' && \app\admin\library\Auth::instance()->id)
 | 
						|
            || ($module != 'admin' && \app\common\library\Auth::instance()->id)
 | 
						|
            || $isModuleLogin) {
 | 
						|
            return true;
 | 
						|
        } else {
 | 
						|
            return false;
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
}
 |