Просмотр исходного кода

#888 Remove .bmp extension from supported images in all transcoders/storages

Alex Trofimov 8 лет назад
Родитель
Сommit
71803b7d9d

+ 1 - 1
inc/classes/BxDolStorage.php

@@ -1322,7 +1322,7 @@ class BxDolStorageHelperUrl extends BxDolStorageHelperPath
         if ($sTmpFilename = tempnam(BX_DIRECTORY_PATH_TMP, '')) {
             $s = '';
             if (!$sExt) {
-                $s = file_get_contents($aParams['url']);
+                $s = @file_get_contents($aParams['url']);
                 $oFinfo = new finfo(FILEINFO_MIME_TYPE);
                 $sMime = $oFinfo->buffer($s);
                 if (isset($this->aMime2Ext[$sMime]))

+ 2 - 2
modules/base/general/classes/BxBaseModGeneralTemplate.php

@@ -247,8 +247,8 @@ class BxBaseModGeneralTemplate extends BxDolModuleTemplate
         $aAttachmnts = array();
         foreach ($aGhostFiles as $k => $a) {
 
-            $isImage = $oTranscoder && (0 === strncmp('image/', $a['mime_type'], 6)); // preview for images, transcoder object for preview must be defined
-            $isVideo = $aTranscodersVideo && (0 === strncmp('video/', $a['mime_type'], 6)); // preview for videos, transcoder object for video must be defined
+            $isImage = $oTranscoder && (0 === strncmp('image/', $a['mime_type'], 6)) && $oTranscoder->isMimeTypeSupported($a['mime_type']); // preview for images, transcoder object for preview must be defined
+            $isVideo = $aTranscodersVideo && (0 === strncmp('video/', $a['mime_type'], 6)) && $aTranscodersVideo['poster']->isMimeTypeSupported($a['mime_type']); // preview for videos, transcoder object for video must be defined
             $sUrlOriginal = $oStorage->getFileUrlById($a['id']);
             $sImgPopupId = 'bx-messages-atachment-popup-' . $a['id'];
 

+ 3 - 2
modules/boonex/albums/classes/BxAlbumsFormEntry.php

@@ -26,14 +26,15 @@ class BxAlbumsFormEntry extends BxBaseModTextFormEntry
 
         $CNF = &$this->_oModule->_oConfig->CNF;
 
+        $oTranscoder = BxDolTranscoderImage::getObjectInstance($CNF['OBJECT_IMAGES_TRANSCODER_BIG']);
+        
         $sData = '';
         $sExif = '';
         $aExif = false;
         $aFile = $oStorage->getFile($iFileId);
-        if (0 === strncmp('image/', $aFile['mime_type'], 6)) {
+        if ($oTranscoder->isMimeTypeSupported($aFile['mime_type'])) {
             $oImageReize = BxDolImageResize::getInstance();
 
-            $oTranscoder = BxDolTranscoderImage::getObjectInstance($CNF['OBJECT_IMAGES_TRANSCODER_BIG']);            
             $a = $oImageReize->getImageSize($oTranscoder->getFileUrl($iFileId));
             $sData = isset($a['w']) && isset($a['h']) ? $a['w'] . 'x' . $a['h'] : '';
 

+ 2 - 2
modules/boonex/albums/classes/BxAlbumsTemplate.php

@@ -222,8 +222,8 @@ class BxAlbumsTemplate extends BxBaseModTextTemplate
         if (!$aFileInfo)
             return '';
 
-        $isImage = 0 === strncmp('image/', $aFileInfo['mime_type'], 6); // preview for images, transcoder object for preview must be defined
-        $isVideo = $aTranscodersVideo && (0 === strncmp('video/', $aFileInfo['mime_type'], 6)); // preview for videos, transcoder object for video must be defined
+        $isImage = 0 === strncmp('image/', $aFileInfo['mime_type'], 6) && $oTranscoder->isMimeTypeSupported($aFileInfo['mime_type']); // preview for images, transcoder object for preview must be defined
+        $isVideo = $aTranscodersVideo && (0 === strncmp('video/', $aFileInfo['mime_type'], 6)) && $aTranscodersVideo['poster']->isMimeTypeSupported($aFileInfo['mime_type']); // preview for videos, transcoder object for video must be defined
 
         $sMediaTitle = bx_process_output($aMediaInfo['title']);
         $sMediaTitleAttr = bx_html_attribute($aMediaInfo['title']);