Explorar el Código

#106 - transcoder unification

Alex Trofimov hace 12 años
padre
commit
dca1929c65

+ 2 - 2
image_transcoder.php

@@ -35,12 +35,12 @@ if (!$oTranscoder) {
 
 ob_end_clean();
 
-if (!$oTranscoder->isImageReady($sHandler) && !$oTranscoder->transcode ($sHandler)) {
+if (!$oTranscoder->isFileReady($sHandler) && !$oTranscoder->transcode ($sHandler)) {
     bx_transcoder_error_occured();
     exit;
 }
 
-$sImageUrl = $oTranscoder->getImageUrl($sHandler);
+$sImageUrl = $oTranscoder->getFileUrl($sHandler);
 if (!$sImageUrl) {
     bx_transcoder_error_occured();
     exit;

+ 26 - 26
inc/classes/BxDolTranscoderImage.php

@@ -12,7 +12,7 @@ bx_import('BxDolTranscoderImageQuery');
 
 /**
  * @page objects
- * @section transcoder)images Images Transcoder
+ * @section transcoder_images Images Transcoder
  * @ref BxDolTranscoderImage
  */
 
@@ -76,7 +76,7 @@ bx_import('BxDolTranscoderImageQuery');
  * bx_import('BxDolTranscoderImage');
  * $oTranscoder = BxDolTranscoderImage::getObjectInstance('bx_images_thumb'); // change images transcode object name to your own
  * $oTranscoder->registerHandlers(); // make sure to call it only once! before the first usage, no need to call it every time
- * $sTranscodedImageUrl = $oTranscoder->getImageUrl('my_dog.jpg'); // the name of file, in the case of 'Folder' storage type this is file name
+ * $sTranscodedImageUrl = $oTranscoder->getFileUrl('my_dog.jpg'); // the name of file, in the case of 'Folder' storage type this is file name
  * echo 'My dog : <img src="' . $sUrl . '" />'; // transcoded(resized and/or grayscaled) image will be shown, according to the specified filters
  * @endcode
  *
@@ -84,23 +84,23 @@ bx_import('BxDolTranscoderImageQuery');
 class BxDolTranscoderImage extends BxDol implements iBxDolFactoryObject
 {
     protected $_aObject; ///< object properties
-    protected $_oStorage; ///< storage object, transcoded images are stored here
+    protected $_oStorage; ///< storage object, transcoded files are stored here
     protected $_oDb; ///< database queries object
     protected $_sRetinaSuffix = '@2x'; ///< handler suffix for retina image file
 
     /**
      * constructor
      */
-    protected function __construct($aObject, $oStorage)
+    protected function __construct($aObject, $oStorage, $oDb)
     {
         parent::__construct();
         $this->_aObject = $aObject;
         $this->_oStorage = $oStorage;
-        $this->_oDb = new BxDolTranscoderImageQuery($aObject);
+        $this->_oDb = $oDb;
     }
 
     /**
-     * Get image transcode object instance.
+     * Get transcode object instance.
      * @param $sObject - name of trancode object.
      * @return false on error or instance of BxDolTranscoderImage class.
      */
@@ -125,7 +125,7 @@ class BxDolTranscoderImage extends BxDol implements iBxDolFactoryObject
             return false;
 
         // create instance
-        $o = new BxDolTranscoderImage($aObject, $oStorage);
+        $o = new BxDolTranscoderImage($aObject, $oStorage, new BxDolTranscoderImageQuery($aObject));
 
         return ($GLOBALS['bxDolClasses']['BxDolTranscoderImage!'.$sObject] = $o);
     }
@@ -185,7 +185,7 @@ class BxDolTranscoderImage extends BxDol implements iBxDolFactoryObject
      */
     static public function onAlertResponseFileDeleteLocal ($oAlert, $sObject)
     {
-        $oTranscoder = BxDolTranscoderImage::getObjectInstance($sObject);
+        $oTranscoder = self::getObjectInstance($sObject);
         if (!$oTranscoder)
             return;
 
@@ -200,7 +200,7 @@ class BxDolTranscoderImage extends BxDol implements iBxDolFactoryObject
      */
     static public function onAlertResponseFileDeleteOrig ($oAlert, $sObject)
     {
-        $oTranscoder = BxDolTranscoderImage::getObjectInstance($sObject);
+        $oTranscoder = self::getObjectInstance($sObject);
         if (!$oTranscoder)
             return;
 
@@ -278,15 +278,15 @@ class BxDolTranscoderImage extends BxDol implements iBxDolFactoryObject
     }
 
     /**
-     * Get transcoded image url.
-     * If transcoded image is ready then direct url to this image is returned.
+     * Get transcoded file url.
+     * If transcoded file is ready then direct url to the file is returned.
      * If there is no transcoded data available, then special url is returned, upon opening this url image is transcoded automatically and redirects to the ready transcoed image.
-     * @params $mixedHandler - image handler
-     * @return image url, or false on error.
+     * @params $mixedHandler - file handler
+     * @return file url, or false on error.
      */
-    public function getImageUrl($mixedHandler)
+    public function getFileUrl($mixedHandler)
     {
-        if ($this->isImageReady($mixedHandler)) {
+        if ($this->isFileReady($mixedHandler)) {
 
             $mixedHandler = $this->processHandlerForRetinaDevice($mixedHandler);
 
@@ -309,20 +309,20 @@ class BxDolTranscoderImage extends BxDol implements iBxDolFactoryObject
 
     /**
      * Check if transcoded data is available. No need to call it directly, it is called automatically when it is needed.
-     * @params $mixedHandler - image handler
-     * @params $isCheckOutdated - check if transcoded image outdated
-     * @return false if there is no ready transcoed image is available or it is outdated, true if image is ready
+     * @params $mixedHandler - file handler
+     * @params $isCheckOutdated - check if transcoded file is outdated
+     * @return false if there is no ready transcoded file is available or it is outdated, true if file is ready
      */
-    public function isImageReady ($mixedHandler, $isCheckOutdated = true)
+    public function isFileReady ($mixedHandler, $isCheckOutdated = true)
     {
-        $sMethodImageReady = 'isImageReady_' . $this->_aObject['source_type'];
-        return $this->$sMethodImageReady($mixedHandler, $isCheckOutdated);
+        $sMethodFileReady = 'isFileReady_' . $this->_aObject['source_type'];
+        return $this->$sMethodFileReady($mixedHandler, $isCheckOutdated);
     }
 
     /**
-     * Transcode image, no need to call it directly, it is called automatically when it is needed.
-     * @params $mixedHandler - image handler
-     * @params $iProfileId - optional profile id, to assign transcoded image to, usually it is NOT assigned to any particular profile, so just leave it default
+     * Transcode file, no need to call it directly, it is called automatically when it is needed.
+     * @params $mixedHandler - file handler
+     * @params $iProfileId - optional profile id, to assign transcoded file ownership to, usually it is NOT assigned to any particular profile, so just leave it default
      * @return true on success, false on error
      */
     public function transcode ($mixedHandler, $iProfileId = 0)
@@ -422,7 +422,7 @@ class BxDolTranscoderImage extends BxDol implements iBxDolFactoryObject
 
     // ---------------------------
 
-    protected function isImageReady_Folder ($mixedHandlerOrig, $isCheckOutdated = true)
+    protected function isFileReady_Folder ($mixedHandlerOrig, $isCheckOutdated = true)
     {
         $mixedHandler = $this->processHandlerForRetinaDevice($mixedHandlerOrig);
 
@@ -445,7 +445,7 @@ class BxDolTranscoderImage extends BxDol implements iBxDolFactoryObject
         return true;
     }
 
-    protected function isImageReady_Storage ($mixedHandlerOrig, $isCheckOutdated = true)
+    protected function isFileReady_Storage ($mixedHandlerOrig, $isCheckOutdated = true)
     {
         $mixedHandler = $this->processHandlerForRetinaDevice($mixedHandlerOrig);
 

+ 1 - 1
inc/classes/BxDolUploader.php

@@ -327,7 +327,7 @@ abstract class BxDolUploader extends BxDol
         $a = '';
         $aGhosts = $oStorage->getGhosts($iProfileId, $iContentId);
         foreach ($aGhosts as $aFile) {
-            $sFileIcon = $oImagesTranscoder && 0 == strncmp($aFile['mime_type'], 'image/', 6) ? $oImagesTranscoder->getImageUrl($aFile['id']) : $this->_oTemplate->getIconUrl($oStorage->getIconNameByFileName($aFile['file_name']));
+            $sFileIcon = $oImagesTranscoder && 0 == strncmp($aFile['mime_type'], 'image/', 6) ? $oImagesTranscoder->getFileUrl($aFile['id']) : $this->_oTemplate->getIconUrl($oStorage->getIconNameByFileName($aFile['file_name']));
             $a[$aFile['id']] = array (
                 'file_id' => $aFile['id'],
                 'file_name' => $aFile['file_name'],

+ 1 - 1
modules/base/profile/classes/BxBaseModProfileFormEntry.php

@@ -82,7 +82,7 @@ class BxBaseModProfileFormEntry extends BxBaseModGeneralFormEntry
                 'bx_if:picture' => array (
                     'condition' => $oTranscoder && isset($aValues[$sField]) && $aValues[$sField] ? true : false,
                     'content' => array (
-                        'picture_url' => $oTranscoder && isset($aValues[$sField]) && $aValues[$sField] ? $oTranscoder->getImageUrl($aValues[$sField]) : '',
+                        'picture_url' => $oTranscoder && isset($aValues[$sField]) && $aValues[$sField] ? $oTranscoder->getFileUrl($aValues[$sField]) : '',
                     ),
                 ),
                 'bx_if:no_picture' => array (

+ 1 - 1
modules/base/profile/classes/BxBaseModProfileTemplate.php

@@ -172,7 +172,7 @@ class BxBaseModProfileTemplate extends BxBaseModGeneralTemplate
             bx_import('BxDolTranscoderImage');
             $oImagesTranscoder = BxDolTranscoderImage::getObjectInstance($sTranscodeObject);
             if ($oImagesTranscoder)
-                $sImageUrl = $oImagesTranscoder->getImageUrl($aData[$sField]);
+                $sImageUrl = $oImagesTranscoder->getFileUrl($aData[$sField]);
         }
         return $bSubstituteNoImage && !$sImageUrl ? $this->getImageUrl($sNoImage) : $sImageUrl;
     }

+ 2 - 2
modules/base/text/classes/BxBaseModTextTemplate.php

@@ -39,7 +39,7 @@ class BxBaseModTextTemplate extends BxBaseModGeneralTemplate
             bx_import('BxDolTranscoderImage');
             $oImagesTranscoder = BxDolTranscoderImage::getObjectInstance($CNF['OBJECT_IMAGES_TRANSCODER_PREVIEW']);
             if ($oImagesTranscoder)
-                $sPhotoThumb = $oImagesTranscoder->getImageUrl($aData[$CNF['FIELD_THUMB']]);
+                $sPhotoThumb = $oImagesTranscoder->getFileUrl($aData[$CNF['FIELD_THUMB']]);
         }
 
         // get entry url
@@ -181,7 +181,7 @@ class BxBaseModTextTemplate extends BxBaseModGeneralTemplate
                     'url_original' => $sUrlOriginal,
                     'attr_file_name' => bx_html_attribute($a['file_name']),
                     'popup_id' => $sImgPopupId,
-                    'url_preview' => $oTranscoder->getImageUrl($a['id']),
+                    'url_preview' => $oTranscoder->getFileUrl($a['id']),
                     'popup' =>  BxTemplFunctions::getInstance()->transBox($sImgPopupId, '<img src="' . $sUrlOriginal . '" />', true, true),
                 ),
             );

+ 1 - 1
modules/boonex/timeline/classes/BxTimelineTemplate.php

@@ -806,7 +806,7 @@ class BxTimelineTemplate extends BxBaseModNotificationsTemplate
                         $sPhotoSrcOrig = $oStorage->getFileUrlById($iPhotoId);
 
                         $aResult['content']['images'][] = array(
-                            'src' => $oTranscoder->getImageUrl($iPhotoId),
+                            'src' => $oTranscoder->getFileUrl($iPhotoId),
                             'src_orig' => $sPhotoSrcOrig,
                             'title' => '',
                             'onclick' => $sJsObject . '.showPhoto(this, \'' . $sPhotoSrcOrig . '\')'

+ 1 - 1
samples/transcoder.php

@@ -97,7 +97,7 @@ $(document).ready(function () {
         while (false !== ($sFile = readdir($h))) {
             if ('.' == $sFile[0] || !is_file($sPath . $sFile))
                 continue;
-            $sUrl = $oTranscoder->getImageUrl($sFile);
+            $sUrl = $oTranscoder->getFileUrl($sFile);
             echo $sFile . ' : <img src="' . $sUrl . '" /> <br /> ' . $sUrl . ' <hr />';
         }
     }

+ 1 - 1
studio/template/scripts/BxBaseStudioDesigner.php

@@ -223,7 +223,7 @@ class BxBaseStudioDesigner extends BxDolStudioDesigner
             foreach($aTranscoders as $sTranscoder => $sTitle) {
                 $oTranscoder = BxDolTranscoderImage::getObjectInstance($sTranscoder);
 
-                $sImageUrl = $oTranscoder->getImageUrl($iId);
+                $sImageUrl = $oTranscoder->getFileUrl($iId);
                 if($sImageUrl === false) {
                     setParam('sys_site_icon', 0);
                     break;

+ 1 - 1
template/scripts/BxBaseCmts.php

@@ -234,7 +234,7 @@ class BxBaseCmts extends BxDolCmts
                     $aTmplImages[] = array(
                         'style_prefix' => $this->_sStylePrefix,
                         'js_object' => $this->_sJsObjName,
-                        'image' => $oTranscoder->getImageUrl($aImage['image_id']),
+                        'image' => $oTranscoder->getFileUrl($aImage['image_id']),
                     	'image_orig' => $oStorage->getFileUrlById($aImage['image_id'])
                     );
             }

+ 3 - 3
template/scripts/BxBaseFunctions.php

@@ -311,15 +311,15 @@ class BxBaseFunctions extends BxDol implements iBxDolSingleton
 
             // favicon icon
             $oTranscoder = BxDolTranscoderImage::getObjectInstance(BX_DOL_TRANSCODER_OBJ_ICON_FAVICON);
-            $sImageUrlFav = $oTranscoder->getImageUrl($iId);
+            $sImageUrlFav = $oTranscoder->getFileUrl($iId);
 
             // facebook icon
             $oTranscoder = BxDolTranscoderImage::getObjectInstance(BX_DOL_TRANSCODER_OBJ_ICON_FACEBOOK);
-            $sImageUrlFcb = $oTranscoder->getImageUrl($iId);
+            $sImageUrlFcb = $oTranscoder->getFileUrl($iId);
 
             // apple touch icon
             $oTranscoder = BxDolTranscoderImage::getObjectInstance(BX_DOL_TRANSCODER_OBJ_ICON_APPLE);
-            $sImageUrlApl = $oTranscoder->getImageUrl($iId);
+            $sImageUrlApl = $oTranscoder->getFileUrl($iId);
         }
 
         if(empty($sImageUrlFav))