AntonLV пре 8 година
родитељ
комит
9dc47d14e1

+ 9 - 11
modules/base/general/classes/BxBaseModGeneralModule.php

@@ -1096,21 +1096,19 @@ class BxBaseModGeneralModule extends BxDolModule
 
 	// ====== COMMON METHODS
 
-    public function getEntryImageData($aContentInfo)
+    public function getEntryImageData($aContentInfo, $sField = 'FIELD_THUMB', $aTranscoders = array())
     {
+        if(empty($aTranscoders))
+            $aTranscoders = array('OBJECT_TRANSCODER_COVER', 'OBJECT_IMAGES_TRANSCODER_COVER', 'OBJECT_IMAGES_TRANSCODER_GALLERY');
+
         $CNF = &$this->_oConfig->CNF;
-        if(empty($CNF['FIELD_THUMB']) || empty($aContentInfo[$CNF['FIELD_THUMB']]) || empty($CNF['OBJECT_STORAGE']))
+        if(empty($CNF[$sField]) || empty($aContentInfo[$CNF[$sField]]) || empty($CNF['OBJECT_STORAGE']))
             return false;
 
-        $iId = (int)$aContentInfo[$CNF['FIELD_THUMB']];
-        if(!empty($CNF['OBJECT_TRANSCODER_COVER']))
-            return array('id' => $iId, 'transcoder' => $CNF['OBJECT_TRANSCODER_COVER']);
-
-        if(!empty($CNF['OBJECT_IMAGES_TRANSCODER_COVER']))
-            return array('id' => $iId, 'transcoder' => $CNF['OBJECT_IMAGES_TRANSCODER_COVER']);
-
-        if(!empty($CNF['OBJECT_IMAGES_TRANSCODER_GALLERY']))
-            return array('id' => $iId, 'transcoder' => $CNF['OBJECT_IMAGES_TRANSCODER_GALLERY']);
+        $iId = (int)$aContentInfo[$CNF[$sField]];
+        foreach($aTranscoders as $sTranscoder)
+            if(!empty($CNF[$sTranscoder]))
+                return array('id' => $iId, 'transcoder' => $CNF[$sTranscoder]);
 
         return array('id' => $iId, 'object' => $CNF['OBJECT_STORAGE']);
     }

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

@@ -106,9 +106,9 @@ class BxBaseModTextTemplate extends BxBaseModGeneralTemplate
     public function getTmplVarsText($aData)
     {
         $aVars = parent::getTmplVarsText($aData);
-        
+
         $sImage = '';
-        $mixedImage = $this->getModule()->getEntryImageData($aData);
+        $mixedImage = $this->_getHeaderImage($aData);
         if($mixedImage !== false) {
             if(!empty($mixedImage['object']))
                 $o = BxDolStorage::getObjectInstance($mixedImage['object']);
@@ -317,6 +317,11 @@ class BxBaseModTextTemplate extends BxBaseModGeneralTemplate
 
         return $sResult;
     }
+
+    protected function _getHeaderImage($aData)
+    {
+        return $this->getModule()->getEntryImageData($aData);
+    }
 }
 
 /** @} */

+ 5 - 7
modules/boonex/market/classes/BxMarketPageEntry.php

@@ -36,14 +36,12 @@ class BxMarketPageEntry extends BxBaseModTextPageEntry
 
     public function getCode ()
     {
-    	$sResult = parent::getCode();
-    	$sResult .= $this->_oModule->_oTemplate->getJsCode('entry');
+        $sResult = parent::getCode();
+        $sResult .= $this->_oModule->_oTemplate->getJsCode('entry');
 
-		$this->_oModule->_oTemplate->setCover($this->_aContentInfo);
-
-    	$this->_oModule->_oTemplate->addJs(array('fancybox/jquery.fancybox.pack.js', 'entry.js'));
-		$this->_oModule->_oTemplate->addCss(array(BX_DIRECTORY_PATH_PLUGINS_PUBLIC . 'fancybox/|jquery.fancybox.css', 'entry.css'));
-    	return $sResult;
+        $this->_oModule->_oTemplate->addJs(array('fancybox/jquery.fancybox.pack.js', 'entry.js'));
+        $this->_oModule->_oTemplate->addCss(array(BX_DIRECTORY_PATH_PLUGINS_PUBLIC . 'fancybox/|jquery.fancybox.css', 'entry.css'));
+        return $sResult;
     }
 }
 

+ 5 - 53
modules/boonex/market/classes/BxMarketTemplate.php

@@ -79,59 +79,6 @@ class BxMarketTemplate extends BxBaseModTextTemplate
     	));
     }
 
-    public function setCover($aData)
-    {
-		$CNF = &$this->getModule()->_oConfig->CNF;
-
-		if(empty($aData[$CNF['FIELD_COVER']]))
-			return;
-
-		$mixedOptions = BxDolPage::getObjectInstanceByURI()->getPageCoverParams();
-        if(empty($mixedOptions) || !is_array($mixedOptions))
-        	return;
-
-        //--- Get Cover image URL
-        $oTranscoderCover = BxDolTranscoderImage::getObjectInstance($CNF['OBJECT_IMAGES_TRANSCODER_COVER']);
-		if(empty($oTranscoderCover))
-			return;
-
-		$sCoverUrl = $oTranscoderCover->getFileUrl($aData[$CNF['FIELD_COVER']]);
-		if(empty($sCoverUrl))
-			return;
-
-		//--- Get Thumbnail image URL
-		$sThumbnailUrl = '';
-		$bThumbnailUrl = false;
-		if(!empty($aData[$CNF['FIELD_THUMB']])) {
-		    $oTranscoderThumbnail = BxDolTranscoderImage::getObjectInstance($CNF['OBJECT_IMAGES_TRANSCODER_THUMB']);
-    		if($oTranscoderThumbnail)
-    			$sThumbnailUrl = $oTranscoderThumbnail->getFileUrl($aData[$CNF['FIELD_THUMB']]);
-
-            $bThumbnailUrl = !empty($sThumbnailUrl);
-		}
-
-		$oCover = BxDolCover::getInstance($this);
-		$oCover->setCoverImageUrl($sCoverUrl);
-		$oCover->set(array_merge($mixedOptions, array(
-			'bx_if:image' => array (
-                'condition' => $bThumbnailUrl,
-                'content' => array(
-                	'icon_url' => $sThumbnailUrl
-		        ),
-            ),
-            'bx_if:icon' => array (
-                'condition' => !$bThumbnailUrl,
-                'content' => array(
-                    'icon' => $CNF['ICON']
-                ),
-            ),
-            'bx_if:bg' => array (
-                'condition' => true,
-                'content' => array('image_url' => $sCoverUrl),
-            ),
-		)));
-    }
-
     public function getScreenshots($aData)
     {
     	$oModule = $this->getModule();
@@ -452,6 +399,11 @@ class BxMarketTemplate extends BxBaseModTextTemplate
 
     	return array_intersect_key($aFiles, $aResults);
     }
+
+    protected function _getHeaderImage($aData)
+    {
+        return $this->getModule()->getEntryImageData($aData, 'FIELD_COVER');
+    }
 }
 
 /** @} */

+ 2 - 2
modules/boonex/market/install/langs/en.xml

@@ -65,8 +65,8 @@
 	<string name="_bx_market_form_entry_input_sys_pictures"><![CDATA[Pictures]]></string>
 	<string name="_bx_market_form_entry_input_pictures"><![CDATA[Pictures]]></string>
 	<string name="_bx_market_form_entry_input_pictures_title"><![CDATA[Title]]></string>
-	<string name="_bx_market_form_entry_input_pictures_use_as_thumb"><![CDATA[Product icon]]></string>
-	<string name="_bx_market_form_entry_input_pictures_use_as_cover"><![CDATA[Product cover]]></string>
+	<string name="_bx_market_form_entry_input_pictures_use_as_thumb"><![CDATA[Icon]]></string>
+	<string name="_bx_market_form_entry_input_pictures_use_as_cover"><![CDATA[Header Image]]></string>
 	<string name="_bx_market_form_entry_input_sys_files"><![CDATA[Files]]></string>
 	<string name="_bx_market_form_entry_input_files"><![CDATA[Files]]></string>
 	<string name="_bx_market_form_entry_input_files_use_as_main"><![CDATA[Use as Main]]></string>

+ 12 - 12
modules/boonex/market/install/sql/enable.sql

@@ -57,20 +57,20 @@ INSERT INTO `sys_objects_page`(`object`, `title_system`, `title`, `module`, `lay
 ('bx_market_view_entry', '_bx_market_page_title_sys_view_entry', '_bx_market_page_title_view_entry', 'bx_market', 7, 2147483647, 1, 'view-product', '', '', '', '', 0, 1, 0, 'BxMarketPageEntry', 'modules/boonex/market/classes/BxMarketPageEntry.php');
 
 INSERT INTO `sys_pages_blocks`(`object`, `cell_id`, `module`, `title_system`, `title`, `designbox_id`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `active`, `order`) VALUES
-('bx_market_view_entry', 1, 'bx_market', '', '_bx_market_page_block_title_entry_breadcrumb', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:17:"entity_breadcrumb";}', 0, 0, 1, 0),
-('bx_market_view_entry', 2, 'bx_market', '', '_bx_market_page_block_title_entry_text', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:17:"entity_text_block";}', 0, 0, 1, 0),
-('bx_market_view_entry', 2, 'bx_market', '', '_bx_market_page_block_title_entry_all_actions', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:18:"entity_all_actions";}', 0, 0, 0, 1),
-('bx_market_view_entry', 2, 'bx_market', '', '_bx_market_page_block_title_entry_actions', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:14:"entity_actions";}', 0, 0, 0, 2),
+('bx_market_view_entry', 1, 'bx_market', '', '_bx_market_page_block_title_entry_breadcrumb', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:17:"entity_breadcrumb";}', 0, 0, 1, 1),
+('bx_market_view_entry', 2, 'bx_market', '', '_bx_market_page_block_title_entry_text', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:17:"entity_text_block";}', 0, 0, 1, 1),
+('bx_market_view_entry', 2, 'bx_market', '', '_bx_market_page_block_title_entry_all_actions', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:18:"entity_all_actions";}', 0, 0, 1, 2),
+('bx_market_view_entry', 2, 'bx_market', '', '_bx_market_page_block_title_entry_actions', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:14:"entity_actions";}', 0, 0, 0, 0),
 ('bx_market_view_entry', 2, 'bx_market', '', '_bx_market_page_block_title_entry_comments', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:15:"entity_comments";}', 0, 0, 1, 3),
-('bx_market_view_entry', 2, 'bx_market', '', '_bx_market_page_block_title_entry_author_entries', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:22:"entity_author_entities";}', 0, 0, 1, 4),
-('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_social_sharing', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:21:"entity_social_sharing";}', 0, 0, 1, 0),
+('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_author_entries', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:22:"entity_author_entities";}', 0, 0, 1, 6),
+('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_social_sharing', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:21:"entity_social_sharing";}', 0, 0, 0, 0),
 ('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_info', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:11:"entity_info";}', 0, 0, 1, 2),
-('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_rating', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:13:"entity_rating";}', 0, 0, 1, 3),
-('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_author', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:13:"entity_author";}', 0, 0, 1, 4),
-('bx_market_view_entry', 3, 'bx_market', '_bx_market_page_block_title_sys_entry_context', '_bx_market_page_block_title_entry_context', 11, 2147483647, 'service', 'a:2:{s:6:\"module\";s:9:\"bx_market\";s:6:\"method\";s:14:\"entity_context\";}', 0, 0, 1, 5),
-('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_location', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:15:"entity_location";}', 0, 0, 0, 6),
-('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_location', 3, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:13:"locations_map";s:6:"params";a:2:{i:0;s:9:"bx_market";i:1;s:4:"{id}";}s:5:"class";s:20:"TemplServiceMetatags";}', 0, 0, 1, 7),
-('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_attachments', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:18:"entity_attachments";}', 0, 0, 0, 8);
+('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_rating', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:13:"entity_rating";}', 0, 0, 1, 4),
+('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_author', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:13:"entity_author";}', 0, 0, 1, 3),
+('bx_market_view_entry', 3, 'bx_market', '_bx_market_page_block_title_sys_entry_context', '_bx_market_page_block_title_entry_context', 11, 2147483647, 'service', 'a:2:{s:6:\"module\";s:9:\"bx_market\";s:6:\"method\";s:14:\"entity_context\";}', 0, 0, 1, 1),
+('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_location', 13, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:15:"entity_location";}', 0, 0, 0, 0),
+('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_location', 3, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:13:"locations_map";s:6:"params";a:2:{i:0;s:9:"bx_market";i:1;s:4:"{id}";}s:5:"class";s:20:"TemplServiceMetatags";}', 0, 0, 1, 5),
+('bx_market_view_entry', 3, 'bx_market', '', '_bx_market_page_block_title_entry_attachments', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:9:"bx_market";s:6:"method";s:18:"entity_attachments";}', 0, 0, 0, 0);
 
 
 

+ 13 - 5
modules/boonex/market/template/entry-text.html

@@ -1,6 +1,14 @@
-<bx_if:show_screenshots>
-	<div class="bx-market-ec-slideshow bx-def-margin-bottom">__screenshots__</div>
-</bx_if:show_screenshots>
+<bx_if:show_image>
+    <div class="bx-base-text-entity-image bx-def-margin-bottom bx-def-font-align-center">
+        <img class="bx-def-border-radius-block" src="__entry_image__" />
+    </div>
+</bx_if:show_image>
 <div class="bx-base-text-entity-content bx-market-entity-content bx-def-constraint-list bx-def-constraint-pre bx-def-constraint-object bx-def-constraint-iframe bx-def-constraint-img">
-    <div class="bx-market-ec-description">__entry_text__</div>
-</div>
+    <div class="bx-market-ec-title">
+        <h1>__entry_title__</h1>
+    </div>
+    <div class="bx-market-ec-description bx-def-margin-top">__entry_text__</div>
+</div>
+<bx_if:show_screenshots>
+    <div class="bx-market-ec-slideshow bx-def-margin-top">__screenshots__</div>
+</bx_if:show_screenshots>

+ 2 - 2
modules/boonex/russian/data/langs/bx_market/ru.xml

@@ -65,8 +65,8 @@
 	<string name="_bx_market_form_entry_input_sys_pictures"><![CDATA[Картинки]]></string>
 	<string name="_bx_market_form_entry_input_pictures"><![CDATA[Картинки]]></string>
 	<string name="_bx_market_form_entry_input_pictures_title"><![CDATA[Название]]></string>
-	<string name="_bx_market_form_entry_input_pictures_use_as_thumb"><![CDATA[Иконка продукта]]></string>
-	<string name="_bx_market_form_entry_input_pictures_use_as_cover"><![CDATA[Обложка продукта]]></string>
+	<string name="_bx_market_form_entry_input_pictures_use_as_thumb"><![CDATA[Иконка]]></string>
+	<string name="_bx_market_form_entry_input_pictures_use_as_cover"><![CDATA[Изображение заголовка]]></string>
 	<string name="_bx_market_form_entry_input_sys_files"><![CDATA[Файлы]]></string>
 	<string name="_bx_market_form_entry_input_files"><![CDATA[Файлы]]></string>
 	<string name="_bx_market_form_entry_input_files_use_as_main"><![CDATA[Использовать как главный]]></string>