protected function getIncludeFile($name)
 {
     $subDir = dirname($name);
     $page = basename($name, '.tpl');
     $pagetype = Kurogo::deviceClassifier()->getPagetype();
     $platform = Kurogo::deviceClassifier()->getPlatform();
     $browser = Kurogo::deviceClassifier()->getBrowser();
     if (strlen($subDir)) {
         $subDir .= '/';
     }
     $checkDirs = array('THEME_DIR' => THEME_DIR, 'SITE_APP_DIR' => SITE_APP_DIR, 'SHARED_APP_DIR' => SHARED_APP_DIR, 'APP_DIR' => APP_DIR);
     $searchFiles = DeviceClassifier::buildFileSearchList($pagetype, $platform, $browser, $page, 'tpl');
     foreach ($searchFiles as $file) {
         foreach ($checkDirs as $type => $dir) {
             if ($dir) {
                 $test = realpath_exists("{$dir}/{$subDir}{$file}");
                 if ($test) {
                     Kurogo::log(LOG_DEBUG, __FUNCTION__ . "({$pagetype}-{$platform}-{$browser}) choosing '{$type}/{$file}' for '{$name}'", 'template');
                     return addslashes($test);
                 }
             }
         }
     }
     return $name;
 }
Exemple #2
0
function getFileConfigForDirs($ext, $extFolder, $page, $pagetype, $platform, $browser, $dirs, $subDirs, $pageOnly = false)
{
    $config = array('include' => 'all', 'files' => array());
    foreach ($dirs as $dir) {
        foreach ($subDirs as $subDir) {
            $fullDir = "{$dir}{$subDir}/{$extFolder}/";
            if (!$pageOnly) {
                $commonFiles = array_reverse(DeviceClassifier::buildFileSearchList($pagetype, $platform, $browser, '', $ext, $fullDir));
                $config['files'] = array_merge($config['files'], $commonFiles);
            }
            $pageFiles = array_reverse(DeviceClassifier::buildFileSearchList($pagetype, $platform, $browser, $page, $ext, $fullDir));
            $config['files'] = array_merge($config['files'], $pageFiles);
        }
    }
    return $config;
}