コード例 #1
0
ファイル: Html.php プロジェクト: ppiedaderawnet/concrete5
 public function css($file, $pkgHandle = null)
 {
     $asset = new CssAsset();
     // if the first character is a / then that means we just go right through, it's a direct path
     if (substr($file, 0, 4) == 'http' || substr($file, 0, 2) == '//' || strpos($file, '?') > 0) {
         // we can't cache this file, so we make sure to say it's not local. It may BE local –but we can't cache it.
         $asset->setAssetURL($file);
         $asset->setAssetIsLocal(false);
     } else {
         if (substr($file, 0, 1) == '/') {
             $asset->setAssetURL($file);
             // if we're in a relative directory, strip the relative part of the $file, since it'll
             // duplicate in DIR_BASE
             if (DIR_REL != '') {
                 $file = substr($file, strlen(DIR_REL));
             }
             $asset->setAssetPath(DIR_BASE . $file);
         } else {
             $v = View::getInstance();
             // checking the theme directory for it. It's just in the root.
             if ($v instanceof View && $v->getThemeDirectory() != '' && file_exists($v->getThemeDirectory() . '/' . $file)) {
                 $asset->setAssetURL($v->getThemePath() . '/' . $file);
                 $asset->setAssetPath($v->getThemeDirectory() . '/' . $file);
             } else {
                 if (file_exists(DIR_APPLICATION . '/' . DIRNAME_CSS . '/' . $file)) {
                     $asset->setAssetURL(REL_DIR_APPLICATION . '/' . DIRNAME_CSS . '/' . $file);
                     $asset->setAssetPath(DIR_APPLICATION . '/' . DIRNAME_CSS . '/' . $file);
                 } else {
                     if ($pkgHandle != null) {
                         if (file_exists(DIR_PACKAGES . '/' . $pkgHandle . '/' . DIRNAME_CSS . '/' . $file)) {
                             $asset->setAssetURL(REL_DIR_PACKAGES . '/' . $pkgHandle . '/' . DIRNAME_CSS . '/' . $file);
                             $asset->setAssetPath(DIR_PACKAGES . '/' . $pkgHandle . '/' . DIRNAME_CSS . '/' . $file);
                         } else {
                             if (file_exists(DIR_BASE_CORE . '/' . DIRNAME_PACKAGES . '/' . $pkgHandle . '/' . DIRNAME_CSS . '/' . $file)) {
                                 $asset->setAssetURL(ASSETS_URL . '/' . DIRNAME_PACKAGES . '/' . $pkgHandle . '/' . DIRNAME_CSS . '/' . $file);
                                 $asset->setAssetPath(DIR_BASE_CORE . '/' . DIRNAME_PACKAGES . '/' . $pkgHandle . '/' . DIRNAME_CSS . '/' . $file);
                             }
                         }
                     }
                 }
             }
         }
     }
     if (!$asset->getAssetURL()) {
         $asset->setAssetURL(ASSETS_URL_CSS . '/' . $file);
         $asset->setAssetPath(DIR_BASE_CORE . '/' . DIRNAME_CSS . '/' . $file);
     }
     return $asset;
 }