Exemplo n.º 1
0
 public static function init()
 {
     date_default_timezone_set(C('DEFAULT_TIMEZONE'));
     load_ext_file();
     Dispatcher::dispatch();
     if (defined('GROUP_NAME')) {
         if (is_file(CONF_PATH . GROUP_NAME . '/config.php')) {
             C(include CONF_PATH . GROUP_NAME . '/config.php');
         }
         if (is_file(COMMON_PATH . GROUP_NAME . '/function.php')) {
             include COMMON_PATH . GROUP_NAME . '/function.php';
         }
     }
     $templateSet = C('DEFAULT_THEME');
     $gn = strtolower(GROUP_NAME);
     if (in_array($gn, array('home', 'wap')) && C('TMPL_DETECT_THEME')) {
         $t = C('VAR_TEMPLATE');
         $ct = $gn . '_think_template';
         if (isset($_GET[$t])) {
             $templateSet = $_GET[$t];
             if (C('HTML_CACHE_ON') == true && is_dir(TMPL_PATH . GROUP_NAME . '/' . $templateSet)) {
                 YdCache::deleteHtml('all');
             }
         } elseif (cookie($ct)) {
             $templateSet = cookie($ct);
         }
         if (!is_dir(TMPL_PATH . GROUP_NAME . '/' . $templateSet)) {
             $templateSet = C('DEFAULT_THEME');
             if (C('HTML_CACHE_ON') == true && is_dir(TMPL_PATH . GROUP_NAME . '/' . $templateSet)) {
                 YdCache::deleteHtml('all');
             }
         }
         cookie($ct, $templateSet);
     }
     define('THEME_NAME', $templateSet);
     $group = defined('GROUP_NAME') ? GROUP_NAME . '/' : '';
     define('THEME_PATH', TMPL_PATH . $group . (THEME_NAME ? THEME_NAME . '/' : ''));
     define('APP_TMPL_PATH', __ROOT__ . '/' . APP_NAME . (APP_NAME ? '/' : '') . basename(TMPL_PATH) . '/' . $group . (THEME_NAME ? THEME_NAME . '/' : ''));
     C('TEMPLATE_NAME', THEME_PATH . MODULE_NAME . (defined('GROUP_NAME') ? C('TMPL_FILE_DEPR') : '/') . ACTION_NAME . C('TMPL_TEMPLATE_SUFFIX'));
     C('CACHE_PATH', CACHE_PATH . $group);
     return;
 }
Exemplo n.º 2
0
 /**
 +----------------------------------------------------------
 * 应用程序初始化
 +----------------------------------------------------------
 * @access public
 +----------------------------------------------------------
 * @return void
 +----------------------------------------------------------
 */
 public static function init()
 {
     // 设置系统时区
     date_default_timezone_set(C('DEFAULT_TIMEZONE'));
     // 加载动态项目公共文件和配置
     load_ext_file();
     // URL调度
     Dispatcher::dispatch();
     if (defined('GROUP_NAME')) {
         // 加载分组配置文件
         if (is_file(CONF_PATH . GROUP_NAME . '/config.php')) {
             C(include CONF_PATH . GROUP_NAME . '/config.php');
         }
         // 加载分组函数文件
         if (is_file(COMMON_PATH . GROUP_NAME . '/function.php')) {
             include COMMON_PATH . GROUP_NAME . '/function.php';
         }
     }
     /* 获取模板主题名称 */
     /*
     $templateSet =  C('DEFAULT_THEME');
     if(C('TMPL_DETECT_THEME')) {// 自动侦测模板主题
         $t = C('VAR_TEMPLATE');
         if (isset($_GET[$t])){
             $templateSet = $_GET[$t];
         }elseif(cookie('think_template')){
             $templateSet = cookie('think_template');
         }
         // 主题不存在时仍改回使用默认主题
         if(!is_dir(TMPL_PATH.$templateSet))
             $templateSet = C('DEFAULT_THEME');
         cookie('think_template',$templateSet);
     }
     */
     //修改By wang 2013-04-02============================================
     $templateSet = C('DEFAULT_THEME');
     //仅让home分组支持自动切换模板
     $gn = strtolower(GROUP_NAME);
     if (in_array($gn, array('home', 'wap')) && C('TMPL_DETECT_THEME')) {
         // 自动侦测模板主题
         $t = C('VAR_TEMPLATE');
         $ct = $gn . '_think_template';
         if (isset($_GET[$t])) {
             $templateSet = $_GET[$t];
             //更换主题,必须清空静态缓存
             if (C('HTML_CACHE_ON') == true && is_dir(TMPL_PATH . GROUP_NAME . '/' . $templateSet)) {
                 YdCache::deleteHtml('all');
                 //清楚全部Html缓存
             }
         } elseif (cookie($ct)) {
             $templateSet = cookie($ct);
         }
         // 主题不存在时仍改回使用默认主题
         if (!is_dir(TMPL_PATH . GROUP_NAME . '/' . $templateSet)) {
             $templateSet = C('DEFAULT_THEME');
             //切换到默认模板,也需要清空静态缓存
             if (C('HTML_CACHE_ON') == true && is_dir(TMPL_PATH . GROUP_NAME . '/' . $templateSet)) {
                 YdCache::deleteHtml('all');
                 //清楚全部Html缓存
             }
         }
         cookie($ct, $templateSet);
     }
     //==============================================================
     /* 模板相关目录常量 */
     define('THEME_NAME', $templateSet);
     // 当前模板主题名称
     $group = defined('GROUP_NAME') ? GROUP_NAME . '/' : '';
     define('THEME_PATH', TMPL_PATH . $group . (THEME_NAME ? THEME_NAME . '/' : ''));
     define('APP_TMPL_PATH', __ROOT__ . '/' . APP_NAME . (APP_NAME ? '/' : '') . basename(TMPL_PATH) . '/' . $group . (THEME_NAME ? THEME_NAME . '/' : ''));
     C('TEMPLATE_NAME', THEME_PATH . MODULE_NAME . (defined('GROUP_NAME') ? C('TMPL_FILE_DEPR') : '/') . ACTION_NAME . C('TMPL_TEMPLATE_SUFFIX'));
     C('CACHE_PATH', CACHE_PATH . $group);
     return;
 }