/**
  * Finds the path for specified file.
  *
  * @param string $fileOrUrl
  * @return string|boolean
  */
 protected static function path_for_file($fileOrUrl)
 {
     if (preg_match('{^//|http[s]?}', $fileOrUrl)) {
         return $fileOrUrl;
     } elseif (Director::fileExists($fileOrUrl)) {
         $filePath = preg_replace('/\\?.*/', '', Director::baseFolder() . '/' . $fileOrUrl);
         $prefix = Director::baseURL();
         $mtimesuffix = "";
         $suffix = '';
         if (Requirements::get_suffix_requirements()) {
             $mtimesuffix = "?m=" . filemtime($filePath);
             $suffix = '&';
         }
         if (strpos($fileOrUrl, '?') !== false) {
             if (strlen($suffix) == 0) {
                 $suffix = '?';
             }
             $suffix .= substr($fileOrUrl, strpos($fileOrUrl, '?') + 1);
             $fileOrUrl = substr($fileOrUrl, 0, strpos($fileOrUrl, '?'));
         } else {
             $suffix = '';
         }
         return "{$prefix}{$fileOrUrl}{$mtimesuffix}{$suffix}";
     } else {
         return false;
     }
 }
Beispiel #2
0
 /**
  * Finds the path for specified file.
  *
  * @param string $fileOrUrl
  * @return string|boolean 
  */
 protected static function path_for_file($fileOrUrl)
 {
     if (preg_match('/^http[s]?/', $fileOrUrl)) {
         return $fileOrUrl;
     } elseif (Director::fileExists($fileOrUrl)) {
         $prefix = Director::absoluteBaseURL();
         $mtimesuffix = "";
         $suffix = '';
         if (strpos($fileOrUrl, '?') !== false) {
             $suffix = '&' . substr($fileOrUrl, strpos($fileOrUrl, '?') + 1);
             $fileOrUrl = substr($fileOrUrl, 0, strpos($fileOrUrl, '?'));
         }
         if (Requirements::get_suffix_requirements()) {
             $mtimesuffix = "?m=" . filemtime(Director::baseFolder() . '/' . $fileOrUrl);
         }
         return "{$prefix}{$fileOrUrl}{$mtimesuffix}{$suffix}";
     } else {
         return false;
     }
 }