|
|
<?php |
|
|
namespace app\common\behavior; |
|
|
|
|
|
use think\Cache; |
|
|
use think\Exception; |
|
|
|
|
|
class Init |
|
|
{ |
|
|
public function run(&$params) |
|
|
{ |
|
|
$config = config('maccms'); |
|
|
$domain = config('domain'); |
|
|
|
|
|
$isMobile = 0; |
|
|
$ua = strtolower($_SERVER['HTTP_USER_AGENT']); |
|
|
$uachar = "/(nokia|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|meizu|cldc|midp|iphone|wap|mobile|android)/i"; |
|
|
if((preg_match($uachar, $ua))) { |
|
|
$isMobile = 1; |
|
|
} |
|
|
|
|
|
$isDomain=0; |
|
|
if( is_array($domain) && !empty($domain[$_SERVER['HTTP_HOST']])){ |
|
|
$config['site'] = array_merge($config['site'],$domain[$_SERVER['HTTP_HOST']]); |
|
|
$isDomain=1; |
|
|
if(empty($config['site']['mob_template_dir']) || $config['site']['mob_template_dir'] =='no'){ |
|
|
$config['site']['mob_template_dir'] = $config['site']['template_dir']; |
|
|
} |
|
|
$config['site']['site_wapurl'] = $config['site']['site_url']; |
|
|
$config['site']['mob_html_dir'] = $config['site']['html_dir']; |
|
|
$config['site']['mob_ads_dir'] = $config['site']['ads_dir']; |
|
|
} |
|
|
$TMP_ISWAP = 0; |
|
|
$TMP_TEMPLATEDIR = $config['site']['template_dir']; |
|
|
$TMP_HTMLDIR = $config['site']['html_dir']; |
|
|
$TMP_ADSDIR = $config['site']['ads_dir']; |
|
|
|
|
|
if($isMobile && $isDomain==0){ |
|
|
if( ($config['site']['mob_status']==2 ) || ($config['site']['mob_status']==1 && $_SERVER['HTTP_HOST']==$config['site']['site_wapurl']) || ($config['site']['mob_status']==1 && $isDomain) ) { |
|
|
$TMP_ISWAP = 1; |
|
|
$TMP_TEMPLATEDIR = $config['site']['mob_template_dir']; |
|
|
$TMP_HTMLDIR = $config['site']['mob_html_dir']; |
|
|
$TMP_ADSDIR = $config['site']['mob_ads_dir']; |
|
|
} |
|
|
} |
|
|
|
|
|
define('MAC_URL','http'.'://'.'www'.'.'.'maccms'.'.'.'la'.'/'); |
|
|
define('MAC_NAME','苹果CMS'); |
|
|
define('MAC_PATH', $config['site']['install_dir'] .''); |
|
|
define('MAC_MOB', $TMP_ISWAP); |
|
|
define('MAC_ROOT_TEMPLATE', ROOT_PATH .'template/'.$TMP_TEMPLATEDIR.'/'. $TMP_HTMLDIR .'/'); |
|
|
define('MAC_PATH_TEMPLATE', MAC_PATH.'template/'.$TMP_TEMPLATEDIR.'/'); |
|
|
define('MAC_PATH_TPL', MAC_PATH_TEMPLATE. $TMP_HTMLDIR .'/'); |
|
|
define('MAC_PATH_ADS', MAC_PATH_TEMPLATE. $TMP_ADSDIR .'/'); |
|
|
define('MAC_PAGE_SP', $config['path']['page_sp'] .''); |
|
|
define('MAC_PLAYER_SORT', $config['app']['player_sort'] ); |
|
|
define('MAC_ADDON_PATH', ROOT_PATH . 'addons' . '/'); |
|
|
define('MAC_ADDON_PATH_STATIC', ROOT_PATH . 'static/addons/'); |
|
|
|
|
|
$GLOBALS['MAC_ROOT_TEMPLATE'] = ROOT_PATH .'template/'.$TMP_TEMPLATEDIR.'/'. $TMP_HTMLDIR .'/'; |
|
|
$GLOBALS['MAC_PATH_TEMPLATE'] = MAC_PATH.'template/'.$TMP_TEMPLATEDIR.'/'; |
|
|
$GLOBALS['MAC_PATH_TPL'] = $GLOBALS['MAC_PATH_TEMPLATE']. $TMP_HTMLDIR .'/'; |
|
|
$GLOBALS['MAC_PATH_ADS'] = $GLOBALS['MAC_PATH_TEMPLATE']. $TMP_ADSDIR .'/'; |
|
|
|
|
|
$GLOBALS['http_type'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' : 'http://'; |
|
|
|
|
|
if(ENTRANCE=='index'){ |
|
|
config('dispatch_success_tmpl','public/jump'); |
|
|
config('dispatch_error_tmpl','public/jump'); |
|
|
} |
|
|
|
|
|
config('template.view_path', 'template/' . $TMP_TEMPLATEDIR .'/' . $TMP_HTMLDIR .'/'); |
|
|
|
|
|
if(ENTRANCE=='admin'){ |
|
|
if(!file_exists('./template/' . $TMP_TEMPLATEDIR .'/' . $TMP_HTMLDIR .'/')){ |
|
|
config('template.view_path',''); |
|
|
} |
|
|
} |
|
|
if(intval($config['app']['search_len'])<1){ |
|
|
$config['app']['search_len'] = 10; |
|
|
} |
|
|
config('url_route_on',$config['rewrite']['route_status']); |
|
|
if(empty($config['app']['pathinfo_depr'])){ |
|
|
$config['app']['pathinfo_depr'] = '/'; |
|
|
} |
|
|
config('pathinfo_depr',$config['app']['pathinfo_depr']); |
|
|
|
|
|
if(intval($config['app']['cache_time'])<1){ |
|
|
$config['app']['cache_time'] = 60; |
|
|
} |
|
|
config('cache.expire', $config['app']['cache_time'] ); |
|
|
|
|
|
|
|
|
if(!in_array($config['app']['cache_type'],['file','memcache','memcached','redis'])){ |
|
|
$config['app']['cache_type'] = 'file'; |
|
|
} |
|
|
if(!empty($config['app']['lang'])){ |
|
|
config('default_lang', $config['app']['lang']); |
|
|
} |
|
|
|
|
|
config('cache.type', $config['app']['cache_type']); |
|
|
config('cache.timeout',1000); |
|
|
config('cache.host',$config['app']['cache_host']); |
|
|
config('cache.port',$config['app']['cache_port']); |
|
|
config('cache.username',$config['app']['cache_username']); |
|
|
config('cache.password',$config['app']['cache_password']); |
|
|
if($config['app']['cache_type'] != 'file'){ |
|
|
$opt = config('cache'); |
|
|
Cache::$handler = null; |
|
|
} |
|
|
|
|
|
$GLOBALS['config'] = $config; |
|
|
} |
|
|
} |