Esempio n. 1
0
 /**
  * Returns path of media file
  *
  * @param string $ps_field field name
  * @param string $ps_version version of the media file, as defined in media_processing.conf
  * @param int $pn_page page number, defaults to 1
  * @return string path of the media file
  */
 public function getMediaPath($ps_field, $ps_version, $pn_page = 1)
 {
     $va_media_info = $this->getMediaInfo($ps_field);
     if (!is_array($va_media_info)) {
         return null;
     }
     #
     # Use icon
     #
     if (isset($va_media_info[$ps_version]['USE_ICON']) && ($vs_icon_code = $va_media_info[$ps_version]['USE_ICON'])) {
         return caGetDefaultMediaIconPath($vs_icon_code, $va_media_info[$ps_version]['WIDTH'], $va_media_info[$ps_version]['HEIGHT']);
     }
     #
     # Is this version externally hosted?
     #
     if (isset($va_media_info[$ps_version]["EXTERNAL_URL"]) && $va_media_info[$ps_version]["EXTERNAL_URL"]) {
         return '';
         // no local path for externally hosted media
     }
     #
     # Is this version queued for processing?
     #
     if (isset($va_media_info[$ps_version]["QUEUED"]) && $va_media_info[$ps_version]["QUEUED"]) {
         return null;
     }
     $va_volume_info = $this->_MEDIA_VOLUMES->getVolumeInformation($va_media_info[$ps_version]["VOLUME"]);
     if (!is_array($va_volume_info)) {
         return "";
     }
     if ($va_media_info[$ps_version]["FILENAME"]) {
         return join("/", array($va_volume_info["absolutePath"], $va_media_info[$ps_version]["HASH"], $va_media_info[$ps_version]["MAGIC"] . "_" . $va_media_info[$ps_version]["FILENAME"]));
     } else {
         return "";
     }
 }
Esempio n. 2
0
 public function getMediaPath($ps_data, $ps_version, $pa_options = null)
 {
     if (!($va_media_info = $this->getMediaArray($ps_data))) {
         return false;
     }
     $vn_page = 1;
     if (is_array($pa_options) && isset($pa_options["page"]) && $pa_options["page"] > 1) {
         $vn_page = $pa_options["page"];
     }
     #
     # Use icon
     #
     if (isset($va_media_info[$ps_version]['USE_ICON']) && ($vs_icon_code = $va_media_info[$ps_version]['USE_ICON'])) {
         return caGetDefaultMediaIconPath($vs_icon_code, $va_media_info[$ps_version]['WIDTH'], $va_media_info[$ps_version]['HEIGHT']);
     }
     #
     # Is this version externally hosted?
     #
     if (isset($va_media_info[$ps_version]["EXTERNAL_URL"]) && $va_media_info[$ps_version]["EXTERNAL_URL"]) {
         return '';
         // no local path for externally hosted media
     }
     #
     # Is this version queued for processing?
     #
     if (isset($va_media_info[$ps_version]["QUEUED"]) && $va_media_info[$ps_version]["QUEUED"]) {
         return null;
     }
     $va_volume_info = $this->opo_volume_info->getVolumeInformation($va_media_info[$ps_version]["VOLUME"]);
     if (!is_array($va_volume_info)) {
         return false;
     }
     if ($va_media_info[$ps_version]["FILENAME"]) {
         if (isset($va_media_info[$ps_version]["PAGES"]) && $va_media_info[$ps_version]["PAGES"] > 1) {
             if ($vn_page < 1) {
                 $vn_page = 1;
             }
             if ($vn_page > $va_media_info[$ps_version]["PAGES"]) {
                 $vn_page = 1;
             }
             return join("/", array($va_volume_info["absolutePath"], $va_media_info[$ps_version]["HASH"], $va_media_info[$ps_version]["MAGIC"] . "_" . $va_media_info[$ps_version]["FILESTEM"] . "_" . $vn_page . "." . $va_media_info[$ps_version]["EXTENSION"]));
         } else {
             return join("/", array($va_volume_info["absolutePath"], $va_media_info[$ps_version]["HASH"], $va_media_info[$ps_version]["MAGIC"] . "_" . $va_media_info[$ps_version]["FILENAME"]));
         }
     } else {
         return false;
     }
 }