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

Merge branch 'master' of https://github.com/unaio/una

AntonLV 5 лет назад
Родитель
Сommit
53afd2cc46

+ 1 - 1
inc/classes/BxDolTemplate.php

@@ -1387,7 +1387,7 @@ class BxDolTemplate extends BxDolFactory implements iBxDolSingleton
         
         if($s == 'sys_site_submenu'){
             $oPage = BxDolPage::getObjectInstanceByURI();
-            if ($oPage->getSubMenu() == 'disabled'){
+            if ($oPage && $oPage->getSubMenu() == 'disabled'){
                 return;
             }
         }

+ 2 - 1
install/sql/system.sql

@@ -361,7 +361,8 @@ INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `ex
 (@iCategoryId, 'sys_site_splash_enabled', '', '', 'checkbox', '', '', '', 26),
 
 (@iCategoryId, 'sys_site_cover_common', '', '0', 'digit', '', '', '', 27),
-(@iCategoryId, 'sys_unit_cover_profile', '', '0', 'digit', '', '', '', 28);
+(@iCategoryId, 'sys_unit_cover_profile', '', '0', 'digit', '', '', '', 28),
+(@iCategoryId, 'sys_site_cover_disabled', '', '', 'checkbox', '', '', '', 29);
 
 
 --

+ 39 - 2
modules/boonex/analytics/classes/BxAnalyticsModule.php

@@ -51,8 +51,37 @@ class BxAnalyticsModule extends BxDolModule
     */
     public function serviceGetCanvas()
     {
+		$sMsg = $this->checkAllowed();
+		if($sMsg !== CHECK_ACTION_RESULT_ALLOWED){
+			$this->_oTemplate->displayAccessDenied($sMsg, BX_PAGE_EMBED);
+			exit;
+		}
+		
         return $this->_oTemplate->getCanvas();
     }
+	
+	/**
+    * @page service Service Calls
+    * @section bx_analytics Analytics
+    * @subsection bx_analytics-other Other
+    * @subsubsection bx_analytics is_avaliable
+    * 
+    * @code bx_srv('bx_analytics', 'is_avaliable', [...]); @endcode
+    * 
+    * Check avalability for current profile  
+    * 
+    * @return boolean. 
+    * 
+    * @see BxAnalyticsModule::serviceIsAvaliable
+    */
+    /** 
+    * @ref bx_analytics-is_avaliable "is_avaliable"
+    */
+	public function serviceIsAvaliable()
+    {
+		return $this->checkAllowed() === CHECK_ACTION_RESULT_ALLOWED ? true : false;
+    }
+	
           
     /**
     * @page service Service Calls
@@ -97,7 +126,7 @@ class BxAnalyticsModule extends BxDolModule
           
     public function actionGetReports($sModuleName)
     {
-        if(!BxDolAcl::getInstance()->isMemberLevelInSet(192))
+		if(!$this->serviceIsAvaliable())
             return '';
             
         header('Content-Type: application/json');
@@ -140,7 +169,7 @@ class BxAnalyticsModule extends BxDolModule
           
     public function actionGetReportsData($sModuleName, $sReportName, $sDateFrom, $sDateTo, $sType = '')
     {
-        if(!BxDolAcl::getInstance()->isMemberLevelInSet(192))
+        if(!$this->serviceIsAvaliable())
             return '';
         
         if ($sType == 'csv'){
@@ -424,6 +453,14 @@ class BxAnalyticsModule extends BxDolModule
         
         return json_encode($aDataForChart);
     }
+	
+	public function checkAllowed($isPerformAction = false)
+    {
+        $aCheck = checkActionModule(bx_get_logged_profile_id(), 'use analytics', $this->getName(), $isPerformAction);
+        if ($aCheck[CHECK_ACTION_RESULT] !== CHECK_ACTION_RESULT_ALLOWED)
+             return _t('_sys_txt_access_denied');
+        return CHECK_ACTION_RESULT_ALLOWED;
+    }
           
     public function getSelectedModules()
     {

+ 37 - 36
modules/boonex/analytics/install/langs/en.xml

@@ -1,39 +1,40 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources name="en" flag="gb" title="English">
-  <string name="_bx_analytics"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_type"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_category_general"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_page_block_title_canvas"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_page_block_title_system_canvas"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_modules_enabled"><![CDATA[Enabled for modules]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_items_count"><![CDATA[Max number of items]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_default_interval_day"><![CDATA[Default interval in days]]></string>
-  <string name="_bx_analytics_page_title_sys_page"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_page_title_page"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_page_block_title_system_canvas"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_page_block_title_canvas"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_item_title_system_analytics"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_item_title_analytics"><![CDATA[Analytics]]></string>
-  <string name="_bx_analytics_type_top_contents_by_likes"><![CDATA[Top contents by likes]]></string>
-  <string name="_bx_analytics_type_content_growth"><![CDATA[Total numbers]]></string>
-  <string name="_bx_analytics_type_content_speed"><![CDATA[Growth speed]]></string>
-  <string name="_bx_analytics_type_accounts_growth"><![CDATA[Accounts - Total numbers]]></string>
-  <string name="_bx_analytics_type_accounts_speed"><![CDATA[Accounts - Growth speed]]></string>
-  <string name="_bx_analytics_type_top_by_views"><![CDATA[Top by views]]></string>
-  <string name="_bx_analytics_type_most_followed_profiles"><![CDATA[Most followed profiles]]></string>
-  <string name="_bx_analytics_type_most_active_profiles"><![CDATA[Most active profiles]]></string>
-  <string name="_bx_analytics_system_text"><![CDATA[System]]></string>
-  <string name="_bx_analytics_txt_empty_title_item"><![CDATA[Empty title]]></string>
-  <string name="_bx_analytics_txt_item"><![CDATA[Item]]></string>
-  <string name="_bx_analytics_txt_date"><![CDATA[Date]]></string>
-  <string name="_bx_analytics_txt_value"><![CDATA[Value]]></string>
-  <string name="_bx_analytics_txt_total_count"><![CDATA[Total]]></string>
-  <string name="_bx_analytics_txt_count"><![CDATA[{0}]]></string>
-  <string name="_bx_analytics_txt_accounts"><![CDATA[Accounts]]></string>
-  <string name="_bx_analytics_txt_export_to_csv_title"><![CDATA[Export to CSV file]]></string>
-  <string name="_bx_analytics_txt_total_content"><![CDATA[All content]]></string>
-  <string name="_bx_analytics_type_top_by_views_label"><![CDATA[Views]]></string>
-  <string name="_bx_analytics_type_top_by_likes_label"><![CDATA[Likes]]></string>
-  <string name="_bx_analytics_type_top_by_followers_label"><![CDATA[Followed]]></string>
-  <string name="_bx_analytics_type_top_by_activity_label"><![CDATA[Content]]></string>
+	<string name="_bx_analytics"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_type"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_category_general"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_page_block_title_canvas"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_page_block_title_system_canvas"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_modules_enabled"><![CDATA[Enabled for modules]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_items_count"><![CDATA[Max number of items]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_default_interval_day"><![CDATA[Default interval in days]]></string>
+	<string name="_bx_analytics_page_title_sys_page"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_page_title_page"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_page_block_title_system_canvas"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_page_block_title_canvas"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_item_title_system_analytics"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_item_title_analytics"><![CDATA[Analytics]]></string>
+	<string name="_bx_analytics_type_top_contents_by_likes"><![CDATA[Top contents by likes]]></string>
+	<string name="_bx_analytics_type_content_growth"><![CDATA[Total numbers]]></string>
+	<string name="_bx_analytics_type_content_speed"><![CDATA[Growth speed]]></string>
+	<string name="_bx_analytics_type_accounts_growth"><![CDATA[Accounts - Total numbers]]></string>
+	<string name="_bx_analytics_type_accounts_speed"><![CDATA[Accounts - Growth speed]]></string>
+	<string name="_bx_analytics_type_top_by_views"><![CDATA[Top by views]]></string>
+	<string name="_bx_analytics_type_most_followed_profiles"><![CDATA[Most followed profiles]]></string>
+	<string name="_bx_analytics_type_most_active_profiles"><![CDATA[Most active profiles]]></string>
+	<string name="_bx_analytics_system_text"><![CDATA[System]]></string>
+	<string name="_bx_analytics_txt_empty_title_item"><![CDATA[Empty title]]></string>
+	<string name="_bx_analytics_txt_item"><![CDATA[Item]]></string>
+	<string name="_bx_analytics_txt_date"><![CDATA[Date]]></string>
+	<string name="_bx_analytics_txt_value"><![CDATA[Value]]></string>
+	<string name="_bx_analytics_txt_total_count"><![CDATA[Total]]></string>
+	<string name="_bx_analytics_txt_count"><![CDATA[{0}]]></string>
+	<string name="_bx_analytics_txt_accounts"><![CDATA[Accounts]]></string>
+	<string name="_bx_analytics_txt_export_to_csv_title"><![CDATA[Export to CSV file]]></string>
+	<string name="_bx_analytics_txt_total_content"><![CDATA[All content]]></string>
+	<string name="_bx_analytics_type_top_by_views_label"><![CDATA[Views]]></string>
+	<string name="_bx_analytics_type_top_by_likes_label"><![CDATA[Likes]]></string>
+	<string name="_bx_analytics_type_top_by_followers_label"><![CDATA[Followed]]></string>
+	<string name="_bx_analytics_type_top_by_activity_label"><![CDATA[Content]]></string>
+	<string name="_bx_analytics_acl_action_use_analytics"><![CDATA[Use Analytics]]></string>	
 </resources>

+ 4 - 0
modules/boonex/analytics/install/sql/disable.sql

@@ -12,3 +12,7 @@ DELETE FROM `sys_pages_blocks` WHERE `module` = @sName;
 
 -- MENU
 DELETE FROM `sys_menu_items` WHERE `module` = @sName ;
+
+-- ACL
+DELETE `sys_acl_actions`, `sys_acl_matrix` FROM `sys_acl_actions`, `sys_acl_matrix` WHERE `sys_acl_matrix`.`IDAction` = `sys_acl_actions`.`ID` AND `sys_acl_actions`.`Module` = @sName;
+DELETE FROM `sys_acl_actions` WHERE `Module` = @sName;

+ 14 - 3
modules/boonex/analytics/install/sql/enable.sql

@@ -21,9 +21,20 @@ INSERT INTO `sys_objects_page`(`object`, `title_system`, `title`, `module`, `lay
 ('bx_analytics_page', '_bx_analytics_page_title_sys_page', '_bx_analytics_page_title_page', @sName, 5, 2147483647, 1, 'analytics', '', '', '', '', 0, 1, 0, 'BxAnalyticsPage', 'modules/boonex/analytics/classes/BxAnalyticsPage.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_analytics_page', 1,  @sName, '_bx_analytics_page_block_title_system_canvas', '_bx_analytics_page_block_title_canvas', 11, 192, 'service', 'a:2:{s:6:"module";s:12:"bx_analytics";s:6:"method";s:10:"get_canvas";}', 0, 1, 1, 0);
+('bx_analytics_page', 1,  @sName, '_bx_analytics_page_block_title_system_canvas', '_bx_analytics_page_block_title_canvas', 11, 2147483647, 'service', 'a:2:{s:6:"module";s:12:"bx_analytics";s:6:"method";s:10:"get_canvas";}', 0, 1, 1, 0);
 
 -- MENU: account dashboard
 SET @iMoAccountDashboard = (SELECT IFNULL(MAX(`order`), 0) FROM `sys_menu_items` WHERE `set_name`='sys_account_dashboard' LIMIT 1);
-INSERT INTO `sys_menu_items` (`set_name`, `module`, `name`, `title_system`, `title`, `link`, `onclick`, `target`, `icon`, `addon`, `submenu_object`, `visible_for_levels`, `active`, `copyable`, `editable`, `order`) VALUES
-('sys_account_dashboard', @sName, 'dashboard-analytics', '_bx_analytics_item_title_system_analytics', '_bx_analytics_item_title_analytics', 'page.php?i=analytics', '', '', 'certificate col-red', '', '', 192, 1, 0, 1, @iMoAccountDashboard + 1);
+INSERT INTO `sys_menu_items` (`set_name`, `module`, `name`, `title_system`, `title`, `link`, `onclick`, `target`, `icon`, `addon`, `submenu_object`, `visible_for_levels`, `visibility_custom`, `active`, `copyable`, `editable`, `order`) VALUES
+('sys_account_dashboard', @sName, 'dashboard-analytics', '_bx_analytics_item_title_system_analytics', '_bx_analytics_item_title_analytics', 'page.php?i=analytics', '', '', 'certificate col-red', '', '', 2147483647, 'a:2:{s:6:"module";s:12:"bx_analytics";s:6:"method";s:12:"is_avaliable";}', 1, 0, 1, @iMoAccountDashboard + 1);
+
+-- ACL
+INSERT INTO `sys_acl_actions` (`Module`, `Name`, `AdditionalParamName`, `Title`, `Desc`, `Countable`, `DisabledForLevels`) VALUES
+(@sName, 'use analytics', NULL, '_bx_analytics_acl_action_use_analytics', '', 1, 3);
+SET @iIdActionUseAnalytics = LAST_INSERT_ID();
+
+SET @iModerator = 7;
+SET @iAdministrator = 8;
+INSERT INTO `sys_acl_matrix` (`IDLevel`, `IDAction`) VALUES
+(@iModerator, @iIdActionUseAnalytics),
+(@iAdministrator, @iIdActionUseAnalytics);

+ 4 - 0
modules/boonex/artificer/template/css/main.css

@@ -6,3 +6,7 @@ html.hidden {
 .bx-def-unit.absolute {
     position: relative;
 }
+
+.bx-base-profile-cover-block-wrapper .bx-menu-custom.bx-menu-custom-hor{
+    justify-content: center !important;
+}

+ 1 - 0
modules/boonex/english/data/langs/system/en.xml

@@ -658,6 +658,7 @@
 	<string name="_adm_dsg_txt_alt_text"><![CDATA[Logo Text]]></string>
 	<string name="_adm_dsg_txt_cover_common"><![CDATA[Default pages cover]]></string>
 	<string name="_adm_dsg_txt_cover_unit_profile"><![CDATA[Default profile unit cover]]></string>
+	<string name="_adm_dsg_txt_cover_disabled"><![CDATA[Disable pages covers]]></string>
 	<string name="_adm_dsg_txt_splash_enabled"><![CDATA[Enable splash page]]></string>
 	<string name="_adm_dsg_txt_default"><![CDATA[default]]></string>
 	<string name="_adm_dsg_txt_icon_apple"><![CDATA[Apple Touch Devices (152x152)]]></string>

+ 36 - 35
modules/boonex/russian/data/langs/bx_analytics/ru.xml

@@ -1,39 +1,40 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources name="ru" flag="ru" title="Russian">
 <string name="_bx_analytics"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_type"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_category_general"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_page_block_title_canvas"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_page_block_title_system_canvas"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_modules_enabled"><![CDATA[Активна для модулей]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_items_count"><![CDATA[Количество позиций]]></string>
-  <string name="_bx_analytics_adm_stg_cpt_default_interval_day"><![CDATA[Интервал в днях по умолчанию]]></string>
-  <string name="_bx_analytics_page_title_sys_page"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_page_title_page"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_page_block_title_system_canvas"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_page_block_title_canvas"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_item_title_system_analytics"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_item_title_analytics"><![CDATA[Аналитика]]></string>
-  <string name="_bx_analytics_type_top_contents_by_likes"><![CDATA[Наилучшие по лайкам]]></string>
-  <string name="_bx_analytics_type_content_growth"><![CDATA[Общее количество]]></string>
-  <string name="_bx_analytics_type_content_speed"><![CDATA[Скорость роста]]></string>
-  <string name="_bx_analytics_type_accounts_growth"><![CDATA[Аккаунты - общее количество]]></string>
-  <string name="_bx_analytics_type_accounts_speed"><![CDATA[Аккаунты - скорость роста]]></string>
-  <string name="_bx_analytics_type_top_by_views"><![CDATA[Наилучшие по просмотрам]]></string>
-  <string name="_bx_analytics_type_most_followed_profiles"><![CDATA[Наиболее следуемые профайлы]]></string>
-  <string name="_bx_analytics_type_most_active_profiles"><![CDATA[Наиболее активные профайлы]]></string>
-  <string name="_bx_analytics_system_text"><![CDATA[Системные]]></string>
-  <string name="_bx_analytics_txt_empty_title_item"><![CDATA[Пустой заголовок]]></string>
-  <string name="_bx_analytics_txt_item"><![CDATA[Позиция]]></string>
-  <string name="_bx_analytics_txt_date"><![CDATA[Дата]]></string>
-  <string name="_bx_analytics_txt_value"><![CDATA[Заначение]]></string>
-  <string name="_bx_analytics_txt_total_count"><![CDATA[{0} - общее количество]]></string>
-  <string name="_bx_analytics_txt_count"><![CDATA[{0} - количество]]></string>
-  <string name="_bx_analytics_txt_accounts"><![CDATA[Аккаунты]]></string>
-  <string name="_bx_analytics_txt_export_to_csv_title"><![CDATA[Экспорт в файл CSV]]></string>
-  <string name="_bx_analytics_txt_total_content"><![CDATA[Весь контент]]></string>
-  <string name="_bx_analytics_type_top_by_views_label"><![CDATA[Количество просмотров]]></string>
-  <string name="_bx_analytics_type_top_by_likes_label"><![CDATA[Количество лайков]]></string>
-  <string name="_bx_analytics_type_top_by_followers_label"><![CDATA[Количество последователей]]></string>
-  <string name="_bx_analytics_type_top_by_activity_label"><![CDATA[Количество контента]]></string>  
+	<string name="_bx_analytics_adm_stg_cpt_type"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_category_general"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_page_block_title_canvas"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_page_block_title_system_canvas"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_modules_enabled"><![CDATA[Активна для модулей]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_items_count"><![CDATA[Количество позиций]]></string>
+	<string name="_bx_analytics_adm_stg_cpt_default_interval_day"><![CDATA[Интервал в днях по умолчанию]]></string>
+	<string name="_bx_analytics_page_title_sys_page"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_page_title_page"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_page_block_title_system_canvas"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_page_block_title_canvas"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_item_title_system_analytics"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_item_title_analytics"><![CDATA[Аналитика]]></string>
+	<string name="_bx_analytics_type_top_contents_by_likes"><![CDATA[Наилучшие по лайкам]]></string>
+	<string name="_bx_analytics_type_content_growth"><![CDATA[Общее количество]]></string>
+	<string name="_bx_analytics_type_content_speed"><![CDATA[Скорость роста]]></string>
+	<string name="_bx_analytics_type_accounts_growth"><![CDATA[Аккаунты - общее количество]]></string>
+	<string name="_bx_analytics_type_accounts_speed"><![CDATA[Аккаунты - скорость роста]]></string>
+	<string name="_bx_analytics_type_top_by_views"><![CDATA[Наилучшие по просмотрам]]></string>
+	<string name="_bx_analytics_type_most_followed_profiles"><![CDATA[Наиболее следуемые профайлы]]></string>
+	<string name="_bx_analytics_type_most_active_profiles"><![CDATA[Наиболее активные профайлы]]></string>
+	<string name="_bx_analytics_system_text"><![CDATA[Системные]]></string>
+	<string name="_bx_analytics_txt_empty_title_item"><![CDATA[Пустой заголовок]]></string>
+	<string name="_bx_analytics_txt_item"><![CDATA[Позиция]]></string>
+	<string name="_bx_analytics_txt_date"><![CDATA[Дата]]></string>
+	<string name="_bx_analytics_txt_value"><![CDATA[Заначение]]></string>
+	<string name="_bx_analytics_txt_total_count"><![CDATA[{0} - общее количество]]></string>
+	<string name="_bx_analytics_txt_count"><![CDATA[{0} - количество]]></string>
+	<string name="_bx_analytics_txt_accounts"><![CDATA[Аккаунты]]></string>
+	<string name="_bx_analytics_txt_export_to_csv_title"><![CDATA[Экспорт в файл CSV]]></string>
+	<string name="_bx_analytics_txt_total_content"><![CDATA[Весь контент]]></string>
+	<string name="_bx_analytics_type_top_by_views_label"><![CDATA[Количество просмотров]]></string>
+	<string name="_bx_analytics_type_top_by_likes_label"><![CDATA[Количество лайков]]></string>
+	<string name="_bx_analytics_type_top_by_followers_label"><![CDATA[Количество последователей]]></string>
+	<string name="_bx_analytics_type_top_by_activity_label"><![CDATA[Количество контента]]></string>  
+	<string name="_bx_analytics_acl_action_use_analytics"><![CDATA[Использовать Аналитику]]></string>	
 </resources>

+ 1 - 0
modules/boonex/russian/data/langs/system/ru.xml

@@ -657,6 +657,7 @@
 	<string name="_adm_dsg_txt_alt_text"><![CDATA[Текст лого]]></string>
 	<string name="_adm_dsg_txt_cover_common"><![CDATA[Стандартная обложка страницы]]></string>
 	<string name="_adm_dsg_txt_cover_unit_profile"><![CDATA[Стандартная обложка миниатюры профиля]]></string>
+	<string name="_adm_dsg_txt_cover_disabled"><![CDATA[Выключить обложки страниц]]></string>
 	<string name="_adm_dsg_txt_splash_enabled"><![CDATA[Включить титульную страницу]]></string>
 	<string name="_adm_dsg_txt_default"><![CDATA[по умолчанию]]></string>
 	<string name="_adm_dsg_txt_icon_apple"><![CDATA[Устройства Apple Touch (152x152)]]></string>

+ 2 - 0
studio/classes/BxDolStudioDesigner.php

@@ -205,6 +205,8 @@ class BxDolStudioDesigner extends BxTemplStudioWidget
 			$this->oDb->setParam($aCover['setting'], $iIdNew);
 			$oStorage->afterUploadCleanup($iIdNew, $iProfile);
         }
+		
+		$this->oDb->setParam('sys_site_cover_disabled', $oForm->getCleanValue('disabled') == 'on' ? 'on' : '');
 
 		return $this->getJsResult('_adm_dsg_scs_save', true, true, BX_DOL_URL_STUDIO . 'designer.php?page=' . BX_DOL_STUDIO_DSG_TYPE_COVER);
     }

+ 10 - 0
studio/template/scripts/BxBaseStudioDesigner.php

@@ -422,6 +422,16 @@ class BxBaseStudioDesigner extends BxDolStudioDesigner
                     'type' => 'hidden',
                     'name' => 'page',
                     'value' => $this->sPage
+                ),
+				'disabled' => array(
+                    'type' => 'checkbox',
+                    'name' => 'enabled',
+                    'caption' => _t('_adm_dsg_txt_cover_disabled'),
+                    'value' => 'on',
+                    'checked' => getParam('sys_site_cover_disabled') == 'on',
+                    'db' => array (
+                        'pass' => 'Xss',
+                    ),
                 ),
                 'preview' => array(
                     'type' => 'custom',

+ 3 - 0
template/scripts/BxBaseCover.php

@@ -32,6 +32,9 @@ class BxBaseCover extends BxDolCover
      */
     public function display ()
     {
+		if (getParam('sys_site_cover_disabled') == 'on')
+			return '';
+		
         $this->_addJsCss();
 
         if(!empty($this->_aOptions) && is_array($this->_aOptions))