Explorar o código

Modules updates.

AntonLV %!s(int64=4) %!d(string=hai) anos
pai
achega
c31a53374d
Modificáronse 100 ficheiros con 12323 adicións e 0 borrados
  1. 55 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/install/config.php
  2. 26 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/install/installer.php
  3. 7 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/install/langs/en.xml
  4. 10 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/install/sql/enable.sql
  5. 17 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/install/sql/install.sql
  6. 83 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/classes/BxArtificerAlertsResponse.php
  7. 82 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/classes/BxArtificerConfig.php
  8. 97 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_forum/css/main.css
  9. 28 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_forum/unit_gallery.html
  10. 86 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_market/unit_gallery.html
  11. 341 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/css/view.css
  12. 89 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/item_outline.html
  13. 91 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/item_timeline.html
  14. 5 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_custom_hor_bx_timeline_menu_item_actions.html
  15. 13 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_custom_item_hor.html
  16. 11 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_custom_item_ver.html
  17. 7 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_custom_ver_bx_timeline_menu_item_manage.html
  18. 18 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_vertical_bx_timeline_menu_item_share.html
  19. 102 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_general/css/main.css
  20. 5 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_groups/css/main.css
  21. 256 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_profile/css/main.css
  22. 6 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_profile/menu_custom_actions.html
  23. 133 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_text/css/main.css
  24. 120 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/_header_js_custom.html
  25. 28 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/cover.html
  26. 89 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/default.less
  27. 370 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/forms.css
  28. 106 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/general.css
  29. 213 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/menu.css
  30. 54 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/score.css
  31. 5 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/logo_main.html
  32. 6 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_custom_hor_sys_cmts_item_actions.html
  33. 11 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_custom_item_sys_cmts_item_actions.html
  34. 11 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_custom_item_sys_cmts_item_manage.html
  35. 7 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_custom_ver_sys_cmts_item_manage.html
  36. 21 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_main.html
  37. 24 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_profile_followings.html
  38. 17 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_profile_followings_subitems.html
  39. 13 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_toolbar.html
  40. 25 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_vertical_more_less.html
  41. 23 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/profile_avatar.html
  42. 21 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/profile_stats.html
  43. 118 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/pt_application.html
  44. 10 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/score_counter_label.html
  45. 216 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplFunctions.php
  46. 38 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplMenuAccountNotifications.php
  47. 74 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplMenuSite.php
  48. 66 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/sidebar_account.html
  49. 68 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/config.php
  50. 48 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/langs/en.xml
  51. 22 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/sql/disable.sql
  52. 6 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/sql/enable.sql
  53. 48 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/sql/install.sql
  54. 130 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/js/sidebar.js
  55. 64 0
      modules/boonex/artificer/updates/13.0.2_13.0.3/source/js/utils.js
  56. 51 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/install/config.php
  57. 26 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/install/installer.php
  58. 5 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/install/langs/en.xml
  59. 15 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/install/sql/enable.sql
  60. 13 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/install/sql/install.sql
  61. 22 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/classes/BxDecorousAlertsResponse.php
  62. 32 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/_header_js_toolbar.html
  63. 929 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/css/default.less
  64. 371 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/css/general.css
  65. 343 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/css/menu.less
  66. 56 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplMenuSite.php
  67. 68 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/config.php
  68. 308 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/langs/en.xml
  69. 11 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/sql/disable.sql
  70. 16 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/sql/enable.sql
  71. 444 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/sql/install.sql
  72. 15 0
      modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/sql/uninstall.sql
  73. 51 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/install/config.php
  74. 26 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/install/installer.php
  75. 5 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/install/langs/en.xml
  76. 15 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/install/sql/enable.sql
  77. 17 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/install/sql/install.sql
  78. 22 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/classes/BxLucidAlertsResponse.php
  79. 36 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/_header_js_toolbar.html
  80. 1343 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/css/default.less
  81. 195 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/css/general.css
  82. 1053 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/css/menu-dropdown.css
  83. 648 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/css/menu.less
  84. 91 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplMenuSite.php
  85. 68 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/config.php
  86. 303 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/langs/en.xml
  87. 16 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/sql/disable.sql
  88. 25 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/sql/enable.sql
  89. 667 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/sql/install.sql
  90. 15 0
      modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/sql/uninstall.sql
  91. 51 0
      modules/boonex/stripe_connect/updates/13.0.1_13.0.2/install/config.php
  92. 13 0
      modules/boonex/stripe_connect/updates/13.0.1_13.0.2/install/installer.php
  93. 94 0
      modules/boonex/stripe_connect/updates/13.0.1_13.0.2/source/classes/BxStripeConnectTemplate.php
  94. 68 0
      modules/boonex/stripe_connect/updates/13.0.1_13.0.2/source/install/config.php
  95. 51 0
      modules/boonex/tasks/updates/13.0.1_13.0.2/install/config.php
  96. 13 0
      modules/boonex/tasks/updates/13.0.1_13.0.2/install/installer.php
  97. 726 0
      modules/boonex/tasks/updates/13.0.1_13.0.2/source/classes/BxTasksModule.php
  98. 149 0
      modules/boonex/tasks/updates/13.0.1_13.0.2/source/install/config.php
  99. 85 0
      modules/boonex/tasks/updates/13.0.1_13.0.2/source/js/tasks.js
  100. 112 0
      modules/boonex/tasks/updates/13.0.1_13.0.2/source/template/css/main.css

+ 55 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/install/config.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'title' => 'Artificer',
+    'version_from' => '13.0.2',
+    'version_to' => '13.0.3',
+    'vendor' => 'BoonEx',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/artificer/updates/update_13.0.2_13.0.3/',
+    'home_uri' => 'artificer_update_1302_1303',
+
+    'module_dir' => 'boonex/artificer/',
+    'module_uri' => 'artificer',
+
+    'db_prefix' => 'bx_artificer_',
+    'class_prefix' => 'BxArtificer',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 1,
+        'update_files' => 1,
+        'update_languages' => 1,
+        'clear_db_cache' => 1,
+    ),
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Boonex Artificer Template',
+
+    /**
+     * Files Section
+     */
+    'delete_files' => array(
+        'data/template/system/create_post_form.html',
+        'data/template/system/form_field_switcher.html',
+        'data/template/system/menu_profile_stats.html'
+    ),
+);

+ 26 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/install/installer.php

@@ -0,0 +1,26 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ */
+
+class BxArtificerUpdater extends BxDolStudioUpdater
+{
+    function __construct($aConfig)
+    {
+        parent::__construct($aConfig);
+    }
+
+    public function update($aParams)
+    {
+        $aResult = parent::update($aParams);
+        if(!$aResult['result'])
+            return $aResult;
+
+        $oCacheUtilities = BxDolCacheUtilities::getInstance();
+        $oCacheUtilities->clear('css');
+        $oCacheUtilities->clear('template');
+
+        return $aResult;
+    }
+}

+ 7 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/install/langs/en.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources name="en" flag="gb" title="English">
+	<string_add name="_bx_artificer_stg_cpt_option_header_stretched"><![CDATA[Stretched Header]]></string_add>
+	<string_add name="_bx_artificer_txt_color_scheme_light"><![CDATA[Light]]></string_add>
+    <string_add name="_bx_artificer_txt_color_scheme_dark"><![CDATA[Dark]]></string_add>
+    <string_add name="_bx_artificer_txt_color_scheme_system"><![CDATA[System]]></string_add>
+</resources>

+ 10 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/install/sql/enable.sql

@@ -0,0 +1,10 @@
+SET @sName = 'bx_artificer';
+
+
+-- ALERTS
+SET @iHandler := (SELECT `id` FROM `sys_alerts_handlers` WHERE `name`=@sName LIMIT 1);
+
+DELETE FROM `sys_alerts` WHERE `unit`='system' AND `action` IN ('change_logo', 'change_mark') AND `handler_id`=@iHandler;
+INSERT INTO `sys_alerts` (`unit`, `action`, `handler_id`) VALUES
+('system', 'change_logo', @iHandler),
+('system', 'change_mark', @iHandler);

+ 17 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/install/sql/install.sql

@@ -0,0 +1,17 @@
+SET @sName = 'bx_artificer';
+
+SET @iCategoryId = (SELECT `id` FROM `sys_options_categories` WHERE `name`='bx_artificer_system' LIMIT 1);
+
+DELETE FROM `sys_options` WHERE `name`=CONCAT(@sName, '_header_stretched');
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_header_stretched'), '_bx_artificer_stg_cpt_option_header_stretched', '', 'checkbox', '', '', '', 3);
+
+
+SET @iSystemCategoryId = (SELECT `id` FROM `sys_options_categories` WHERE `name`='system' LIMIT 1);
+SET @iSystemCategoryOrder = (SELECT IFNULL(MAX(`order`), 0) FROM `sys_options` WHERE `category_id`=@iSystemCategoryId LIMIT 1);
+
+DELETE FROM `sys_options` WHERE `name` IN ('bx_artificer_site_logo_width', 'bx_artificer_site_logo_height', 'bx_artificer_site_mark', 'bx_artificer_site_logo_aspect_ratio', 'bx_artificer_site_mark_aspect_ratio');
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iSystemCategoryId, CONCAT(@sName, '_site_mark'), '', '0', 'digit', '', '', '', @iSystemCategoryOrder + 1),
+(@iSystemCategoryId, CONCAT(@sName, '_site_logo_aspect_ratio'), '', '', 'digit', '', '', '', @iSystemCategoryOrder + 2),
+(@iSystemCategoryId, CONCAT(@sName, '_site_mark_aspect_ratio'), '', '', 'digit', '', '', '', @iSystemCategoryOrder + 3);

+ 83 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/classes/BxArtificerAlertsResponse.php

@@ -0,0 +1,83 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    Artificer Artificer template
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+
+class BxArtificerAlertsResponse extends BxBaseModTemplateAlertsResponse
+{
+    function __construct()
+    {
+        $this->_sModule = 'bx_artificer';
+
+        parent::__construct();
+    }
+
+    protected function _processSystemChangeLogo($oAlert)
+    {
+        $sPrefix = $this->_oModule->_oConfig->getPrefix('option');
+
+        if(!in_array($oAlert->aExtras['option'], ['sys_site_logo', $sPrefix . 'site_logo']))
+            return;
+
+        setParam($sPrefix . 'site_logo_aspect_ratio', '');
+    }
+
+    protected function _processSystemChangeMark($oAlert)
+    {
+        $sPrefix = $this->_oModule->_oConfig->getPrefix('option');
+
+        if(!in_array($oAlert->aExtras['option'], ['sys_site_mark', $sPrefix . 'site_mark']))
+            return;
+
+        setParam($sPrefix . 'site_mark_aspect_ratio', '');
+    }
+
+    protected function _processSystemGetObject($oAlert)
+    {
+        if(!$this->_isActive())
+            return;
+
+        if(empty($oAlert->aExtras['type']))
+            return;
+
+        switch($oAlert->aExtras['type']) {
+            case 'menu':
+                if(!($oAlert->aExtras['object'] instanceof BxBaseModGeneralMenuViewActions))
+                    break;
+
+                $oAlert->aExtras['object']->setShowAsButton(false);
+                break;
+        }
+    }
+
+    protected function _processProfileUnit($oAlert)
+    {
+        if(!$this->_isActive())
+            return;
+
+        $sModule = $oAlert->aExtras['module'];
+        $oModule = BxDolModule::getInstance($sModule);
+        if(!$oModule)
+            return;
+
+        $sTemplate = !empty($oAlert->aExtras['template']) && is_array($oAlert->aExtras['template']) ? $oAlert->aExtras['template'][0] : $oAlert->aExtras['template'];
+        $sClassSize = $this->_oModule->_oConfig->getThumbSize(isset($oAlert->aExtras['template'][1]) ? $oAlert->aExtras['template'][1] : '', $sTemplate);
+
+        $aTmplVars['class_size'] = $sClassSize;
+        $aTmplVars['bx_if:show_thumb_letter']['content']['class_size'] = $sClassSize;
+        $aTmplVars['bx_if:show_thumb_image']['content']['class_size'] = $sClassSize;
+        
+        $aTmplVars['bx_if:show_thumbnail']['content']['class_size'] = $sClassSize;
+        $aTmplVars['bx_if:show_thumbnail']['content']['bx_if:show_thumb_letter']['content']['class_size'] = $sClassSize;
+        $aTmplVars['bx_if:show_thumbnail']['content']['bx_if:show_thumb_image']['content']['class_size'] = $sClassSize;
+    }
+}
+
+/** @} */

+ 82 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/classes/BxArtificerConfig.php

@@ -0,0 +1,82 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    Artificer Artificer template
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+bx_import('BxBaseModTemplateConfig');
+
+class BxArtificerConfig extends BxBaseModTemplateConfig
+{
+    protected $_aReplacements;
+
+    protected $_sThumbSizeDefault;
+    protected $_aThumbSizes;
+    protected $_aThumbSizeByTemplate;
+
+    function __construct($aModule)
+    {
+        parent::__construct($aModule);
+
+        $this->_iLogoHeight = 48;
+        $this->_iMarkHeight = 48;
+
+        $this->_aPrefixes = [
+            'option' => 'bx_artificer_'
+        ];
+
+        $this->_aReplacements = [
+            'bx-def-margin-sec-neg' => '-m-2',
+        ];
+                
+        $this->_sThumbSizeDefault = 'thumb';
+        $this->_aThumbSizes = [
+            'icon' => 'h-8 w-8',
+            'thumb' => 'h-10 w-10',
+            'ava' => 'h-24 w-24',
+            'ava-big' => 'w-48 h-48'
+        ];
+        $this->_aThumbSizeByTemplate = [
+            'unit_with_cover.html' => 'h-24 w-24' //--- 'ava' size
+        ];
+        
+        
+    }
+
+    public function getLogoParams()
+    {
+    	$sPrefix = $this->getPrefix('option');
+
+    	return [
+            $sPrefix . 'site_logo',
+            $sPrefix . 'site_mark',
+            $sPrefix . 'site_logo_alt'
+    	];
+    }
+
+    public function getReplacements()
+    {
+        return $this->_aReplacements;
+    }
+
+    public function getThumbSize($sName = '', $sTemplate = '')
+    {
+        if (empty($sName))
+            $sName = 'thumb';
+        
+        if(!empty($sName) && isset($this->_aThumbSizes[$sName]))
+            return $this->_aThumbSizes[$sName];
+
+        if(!empty($sTemplate) && isset($this->_aThumbSizeByTemplate[$sTemplate]))
+            return $this->_aThumbSizeByTemplate[$sTemplate];
+
+        return $this->_sThumbSizeDefault;
+    }
+}
+
+/** @} */

+ 97 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_forum/css/main.css

@@ -0,0 +1,97 @@
+@import url(../../../../../forum/template/css/main.css);
+
+/*-- Participants --*/
+div.bx-forum-participants.left,
+div.bx-forum-participants.none,
+div.bx-forum-participants.right {
+    float: none;
+}
+div.bx-forum-participants.left {
+    -webkit-justify-content: flex-start;
+    justify-content: flex-start;
+}
+div.bx-forum-participants.right {
+    -webkit-flex-direction: row-reverse;
+    flex-direction: row-reverse;
+}
+div.bx-forum-participants .bx-forum-participant {
+    float: none;
+}
+div.bx-forum-participants.left .bx-forum-participant,
+div.bx-forum-participants.none .bx-forum-participant {
+    float: none;
+    margin-right: 0.75rem;
+}
+.bx-forum-participants.right .bx-forum-participant {
+    float: none;
+    margin-left: 0.75rem;
+}
+.bx-forum-participant .bx-forum-participant-alert-last-replier {
+    left: -0.375rem;
+    right: auto;
+    top: -0.375rem;
+    bottom: auto;
+}
+.bx-forum-participant .bx-forum-participant-alert-author {
+    left: -0.375rem;
+    right: auto;
+    top: auto;
+    bottom: -0.375rem;
+}
+
+
+/*-- Grid: Preview --*/
+.bx-forum-grid-preview .bx-base-general-unit-meta ul.bx-menu-object-bx_forum_snippet_meta_counters li a {
+    display: -webkit-flex;
+    display: flex;
+}
+
+/* forum units - new view, for UNA14 need to migrate in general */
+.bx-base-unit-showcase-wrapper.bx-forum-wrapper{
+    white-space:normal;
+    text-align: left !important;
+}
+.bx-base-unit-showcase-wrapper.bx-forum-wrapper:not(.flickity-enabled) .bx-base-text-unit-showcase{
+    width: 100%
+}
+
+.bx-media-desktop .bx-layout-column-half .bx-base-unit-showcase-wrapper.flickity-enabled.bx-forum-wrapper .bx-base-text-unit-showcase,
+.bx-media-desktop .bx-layout-column-wide .bx-base-unit-showcase-wrapper.flickity-enabled.bx-forum-wrapper .bx-base-text-unit-showcase {
+    width:calc(33%);
+}
+
+.bx-media-desktop #sys_search_results  .bx-base-unit-showcase-wrapper.flickity-enabled.bx-forum-wrapper .bx-base-text-unit-showcase,
+.bx-media-desktop .bx-layout-column-fullwidth  .bx-base-unit-showcase-wrapper.flickity-enabled.bx-forum-wrapper .bx-base-text-unit-showcase {
+    width:calc(25%);
+}
+.bx-artificer .bx-base-unit-showcase-wrapper.flickity-enabled.bx-forum-wrapper .flickity-slider .bx-base-text-unit-showcase > div {
+    margin-left: 0.5rem !important;
+    margin-right: 0.5rem !important;
+}
+
+.bx-base-unit-showcase-wrapper.flickity-enabled.bx-forum-wrapper{
+    margin-left: -0.5rem;
+    margin-right: -0.5rem;
+}
+
+.bx-artificer .bx-base-unit-showcase-wrapper.flickity-enabled.bx-forum-wrapper .flickity-slider .bx-base-text-unit-showcase{
+    margin-left: 0px !important;
+    margin-right: 0rem !important;
+}
+.bx-base-unit-showcase-wrapper.flickity-enabled.bx-forum-wrapper .bx-base-text-unit-showcase{
+    padding-left: 0px !important;
+    padding-right: 0px !important;
+}
+#bx-forum-snippet-meta-main{
+    margin-left: 0px;
+}
+.bx-menu-meta-item-ex {
+    margin-right: 0px !important;
+}
+.bx-menu-meta-item-ex span:nth-child(2){
+    margin-left: 0.375rem;
+}
+.bx-menu-meta-item-ex .bx-menu-meta-icon{
+    min-width: 16px;
+    text-align: center;
+}

+ 28 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_forum/unit_gallery.html

@@ -0,0 +1,28 @@
+<div onclick="location.href='__content_url__'" class="__class__ w-full bx-base-text-unit bx-base-text-unit-gallery bx-def-gal-unit-size group p-1 -m-1">
+    <div class="bg-white dark:bg-gray-800 shadow ring-1 ring-gray-300 dark:ring-gray-700 rounded-md xl:mx-auto h-full">
+        <div class="h-full space-y-4 p-1 pb-4 flex flex-col justify-between">
+            <bx_if:thumb>
+                <a href="__content_url__" title="__summary_attr__">   <img class="flex grow-0 w-full aspect-video overflow-y-auto align-top  object-cover rounded" src="__gallery_url__" alt=""></a>  
+            </bx_if:thumb>
+            <div class="grow-none px-3 mt-4 text-lg leading-tight font-semibold text-gray-700 group-hover:text-gray-900 dark:text-gray-200 dark:group-hover:text-white">
+                <a href="__content_url__" title="__summary_attr__" class=" text-lg leading-tight font-semibold text-gray-600 group-hover:text-gray-900 dark:text-gray-300 dark:group-hover:text-white">__title__</a>
+            </div>               
+            <bx_if:no_thumb>  
+                <div class="grow relative rounded w-full max-w-full sm:aspect-video overflow-hidden font-normal text-sm  text-gray-500 group-hover:text-gray-600 dark:text-gray-400 dark:group-hover:text-gray-300">
+                    <div class="absolute top-auto bottom-0  w-full h-1/4 bg-gradient-to-b from-white/0 to-white dark:from-gray-900/0 dark:to-gray-800"></div>
+                    <div class=" px-3">__summary_plain__</div>
+                </div>
+            </bx_if:no_thumb>
+            <div class="px-3">
+                __badges__
+            </div>
+            <bx_if:meta>
+                <div class="bx-base-general-unit-meta flex grow-0 px-2">
+                    <div class="inline-flex flex-wrap text-xs font-medium">
+                        __meta__
+                    </div>
+                </div>
+            </bx_if:meta>
+        </div>
+    </div>
+</div>

+ 86 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_market/unit_gallery.html

@@ -0,0 +1,86 @@
+<div class="__class__  bx-base-text-unit bx-base-text-unit-gallery bx-def-gal-unit-size p-2">
+    <div class="bx-market-unit-gallery-cnt bx-def-box bx-def-box-round-corners bx-def-color-bg-box w-full">
+        <!-- Author section -->
+        <bx_if:show_section_author>
+            <div class="bx-market-unit-cnt p-4">
+                <div class="bx-market-unit-author flex items-center">
+                    <div class="bx-market-unit-author-avatar bx-def-thumb bx-def-thumb-size">__author_unit__</div>
+                    <div class="bx-market-unit-author-info flex-1 pl-4">
+                        <div class="bx-market-unit-author-name bx-def-font-middle bx-def-font-light">__author_width_date__</div>
+                    </div>
+                    <div class="bx-market-unit-actions">__actions__</div>
+                </div>
+            </div>
+        </bx_if:show_section_author>
+
+        <!-- Main section -->
+        <div class="bx-market-unit-cnt bx-market-unit-cover">
+            <bx_if:show_cover_raw>
+                <a href="__content_url__" title="__summary_attr__">
+                    <div class="bx-base-text-unit-thumb bx-base-text-unit-thumb-raw">__cover_raw__</div>
+                </a>
+            </bx_if:show_cover_raw>
+            <bx_if:show_cover>
+                <a href="__content_url__" title="__summary_attr__">
+                    <div class="bx-base-text-unit-thumb bx-def-gal-div-size bx-def-font-middle bg-cover bg-center bg-no-repeat" style="background-image:url(__cover_url__)">
+                        <div class="bx-base-text-unit-strecher">__strecher__</div>
+                    </div>
+                </a>
+            </bx_if:show_cover>
+            <bx_if:show_cover_empty>
+            <div class="bx-base-text-unit-no-thumb bx-def-gal-div-size p-4 box-border bx-def-font-middle bx-def-font-grayed">
+                __summary_plain__
+                <div class="bx-base-text-unit-strecher">__strecher__</div>
+            </div>
+            </bx_if:show_cover_empty>
+        </div>
+        <div class="bx-market-unit-cnt p-4">
+            <div class="bx-market-unit-info flex items-center">
+                <div class="bx-market-unit-icon bx-def-thumb-size bx-def-round-corners">
+                    <a href="__content_url__"> 
+                        <bx_if:show_icon>
+                            <img class="bx-market-unit-icon bx-def-thumb-size bx-def-round-corners" src="__icon_url__" />
+                        </bx_if:show_icon>
+                        <bx_if:show_icon_empty>
+                        <div class="bx-market-unit-icon-empty bx-def-thumb-size flex justify-center items-center bg-gray-100 dark:bg-gray-700 rounded-md">
+                            <i class="sys-icon __icon__"></i>
+                        </div>
+                        </bx_if:show_icon_empty>
+                    </a>
+                </div>
+                <div class="bx-market-unit-title ml-4 first:ml-0">
+                    <div class="bx-market-unit-title-badges">
+                        <a class=" bx-def-font-h3" href="__content_url__" title="__title_attr__">__title__</a> 
+                        __badges__
+                    </div>
+                    <bx_if:meta><div class="bx-base-general-unit-meta">__meta__</div></bx_if:meta>
+                </div>
+            </div>
+        </div>
+
+        <!-- Pricing section -->
+        <bx_if:show_section_pricing>
+            <div class="bx-market-unit-cnt px-4 pb-4">
+                <div class="text-center">
+                    <bx_if:show_single>
+                        <a class="bx-market-ui-price bx-btn bx-btn-small bx-def-margin-sec-top-auto" href="javascript:void(0)" onclick="javascript:__price_single_onclick__">__price_single__</a>
+                    </bx_if:show_single>
+                    <bx_if:show_recurring>
+                        <a class="bx-market-ui-price bx-btn bx-btn-small bx-def-margin-sec-top-auto" href="javascript:void(0)" onclick="javascript:__price_recurring_onclick__">__price_recurring__</a>
+                    </bx_if:show_recurring>
+                    <bx_if:show_free>
+                        <a class="bx-market-ui-price bx-btn bx-btn-small bx-def-margin-sec-top-auto" href="__price_free_href__"><bx_text:_bx_market_txt_get_for_free /></a>
+                    </bx_if:show_free>
+                </div>
+            </div>
+        </bx_if:show_section_pricing>
+
+        <!-- Voting section -->
+        <bx_if:show_section_voting>
+            <div class="bx-market-unit-cnt flex justify-between items-center px-4 pb-4">
+                <div class="bx-market-fcell fc-left">__voting__</div>
+                <div class="bx-market-fcell fc-right bx-def-font-bold">__pricing__</div>
+            </div>
+        </bx_if:show_section_voting>
+    </div>
+</div>

+ 341 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/css/view.css

@@ -0,0 +1,341 @@
+/*--
+import url(../../../../../timeline/template/css/view.css);
+--*/
+
+/*--- Dynamic Browsing: Menu ---*/
+.bx-tl-menu-feeds.bx-menu-ver li img, 
+.bx-tl-menu-feeds.bx-menu-ver li .sys-icon {
+    display: inline-block;
+    vertical-align: top;
+    width: 1.5rem;
+    height: 1.5rem;
+
+    background-size: 1.25rem 1.25rem;
+    background-position: center center;
+
+    line-height: 1.5rem;
+    font-size: 1.0rem;
+}
+.bx-tl-menu-feeds.bx-menu-ver li .bx-menu-show {
+    display: none;
+}
+.bx-tl-menu-feeds.bx-menu-ver li .bx-menu-hide {
+    display: inline;
+}
+.bx-tl-menu-feeds.bx-menu-ver li.bx-mi-collapsed .bx-menu-show {
+    display: inline;
+}
+.bx-tl-menu-feeds.bx-menu-ver li.bx-mi-collapsed .bx-menu-hide {
+    display: none;
+}
+.bx-tl-menu-feeds.bx-menu-ver li.bx-mi-collapsed .bx-menu-item-subitems {
+    display: none;
+}
+
+/*--- Filters Style ---*/
+div.bx-tl-view-filters {
+    min-width: 14rem;
+    max-width: 20rem;
+}
+div.bx-tl-view-filters div.bx-form-section-wrapper:first-child {
+    margin-top: 0;
+}
+div.bx-tl-view-filters div.bx-form-section-content {
+    padding-top: 0;
+    padding-bottom: 0;
+}
+
+/*--- Load More Style ---*/
+div.bx-tl-view-timeline div.bx-tl-load-more {
+    padding-top: 0px;
+}
+
+/*--- Item Style: Timeline ---*/
+div.bx-tl-view-timeline div.bx-tl-items,
+div.bx-tl-view-search div.bx-tl-items,
+div.bx-tl-view-item div.bx-tl-items {
+    margin-left: 0px;
+    margin-right: 0px;
+}
+
+/*--- Item Meta Info Style ---*/
+.bx-tl-item-meta ul.bx-menu-custom li:first-child .bx-tl-item-meta-div {
+    display: none;
+}
+
+/*--- Item Content Style ---*/
+div.bx-tl-item-content form {
+    padding: 1rem 1rem 0 1rem;
+}
+
+div.bx-tl-item-text div.bx-tl-content {
+    position: relative;
+    max-height: 16rem;
+}
+div.bx-tl-item-text div.bx-tl-content.bx-tl-overflow {
+    margin-bottom: 0;
+}
+div.bx-tl-item-text div.bx-tl-content.bx-tl-overflow:before {
+    position: absolute;
+    bottom: 0;
+    width: 100%;
+    height: 20%;
+
+    content: '';
+}
+
+/*--- Item Activity (Actions and Manage are different menus) ---*/
+div.bx-tl-item div.bx-tl-item-activity .bx-menu-custom.bx-menu-custom-hor {
+    flex-wrap: wrap;
+}
+div.bx-tl-item div.bx-tl-item-activity.bx-tl-ia-counters .bx-menu-custom.bx-menu-custom-hor li > a,
+div.bx-tl-item div.bx-tl-item-activity.bx-tl-ia-counters .bx-menu-custom.bx-menu-custom-hor li > div,
+div.bx-tl-item div.bx-tl-item-activity.bx-tl-ia-counters .bx-menu-custom.bx-menu-custom-hor li > span {
+    margin-top: 1.0rem;
+}
+
+.bx-menu-object-bx_timeline_menu_item_manage .menu-custom-item-ver,
+.bx-menu-object-bx_timeline_menu_item_manage .menu-custom-item-ver a,
+.bx-menu-object-bx_timeline_menu_item_manage .bx-report-element-holder {
+    width: 100%;
+    display: block;
+}
+.bx-menu-object-bx_timeline_menu_item_manage .bx-report-element-holder {
+    padding: 0px !important;
+}
+.bx-tl-owner-avatar .bx-def-thumb-size{
+    width: 2.5rem;
+    height: 2.5rem;
+}
+.bx-tl-item-content video,
+.bx-tl-item-attachment img{
+    border-radius: .25rem;
+}
+
+/*--- Menu: Item Manage ---*/
+.bx-menu-object-bx_timeline_menu_item_manage .sys-action-do-text {
+    margin-left: 0rem;
+}
+
+/*--- Item Action Style ---*/
+div.bx-tl-item div.bx-tl-item-action .bx-tl-timeline-owner-name .bx-tl-ton-div:first-child {
+    display: none;
+}
+
+/*+++ Item Text +++*/
+div.bx-tl-view-outline div.bx-tl-item-text div.bx-tl-title {
+    font-weight: bold;
+}
+div.bx-tl-view-outline div.bx-tl-content-show-more a {
+    font-weight: bold;
+}
+
+/*+++ Item Image +++*/
+div.bx-tl-view-search div.bx-tl-item-images {
+    margin-left: 0px;
+    margin-right: 0px;
+}
+div.bx-tl-view-search div.bx-tl-item-image {
+    margin-right: 2px;
+    margin-right: 0.125rem;
+}
+div.bx-tl-view-timeline div.bx-tl-item-image,
+div.bx-tl-view-outline div.bx-tl-item-image,
+div.bx-tl-view-item div.bx-tl-item-image {
+    width: 100%;
+    text-align: center;
+    overflow: hidden;
+}
+div.bx-tl-view-search div.bx-tl-item-image img {
+    height: 12.5rem;
+}
+div.bx-tl-view-timeline div.bx-tl-item-images.bx-tl-ii-gallery div.bx-tl-item-image img,
+div.bx-tl-view-item div.bx-tl-item-images.bx-tl-ii-gallery div.bx-tl-item-image img,
+div.bx-tl-view-timeline div.bx-tl-item-images.bx-tl-ii-single div.bx-tl-item-image img,
+div.bx-tl-view-item  div.bx-tl-item-images.bx-tl-ii-single div.bx-tl-item-image img {
+    position: relative;
+    display: block;
+    max-width: 100%;
+    margin-left: auto;
+    margin-right: auto;
+}
+div.bx-tl-view-outline div.bx-tl-item-image img {
+    max-width: 100%;
+    object-fit: cover;
+    object-position: center center;
+}
+
+/*+++ Item Video +++*/
+div.bx-tl-view-timeline div.bx-tl-item-video,
+div.bx-tl-view-outline div.bx-tl-item-video,
+div.bx-tl-view-item div.bx-tl-item-video {
+    width: 100%;
+}
+.bx-tl-video-iframe {
+    width: 100%;
+    border: none;
+}
+div.bx-tl-view div.bx-tl-item-videos.bx-tl-iv-gallery div.bx-tl-item-video video,
+div.bx-tl-view div.bx-tl-item-videos.bx-tl-iv-single div.bx-tl-item-video video {
+    display: block;
+    max-width: 100%;
+    margin-left: auto;
+    margin-right: auto;
+}
+
+/*+++ Item Attachment +++*/
+div.bx-tl-view div.bx-tl-item-attachments {
+    position: relative;
+    white-space: nowrap;
+    overflow-x: auto;
+}
+div.bx-tl-view div.bx-tl-item-attachments div.bx-tl-item-attachment {
+    position: relative;
+    display: -webkit-inline-flex;
+    display: inline-flex;
+    -webkit-justify-content: center;
+    justify-content: center;  
+
+    width: 100%;
+    vertical-align: middle;
+}
+div.bx-tl-view div.bx-tl-item-attachments div.bx-tl-item-attachment img {
+    position: relative;
+    display: block;
+    max-width: 100%;
+    margin-left: auto;
+    margin-right: auto;
+}
+div.bx-tl-view-outline div.bx-tl-item-attachment img {
+    max-width: 100%;
+    object-fit: cover;
+    object-position: center center;
+}
+
+/*+++ Video +++*/
+div.bx-tl-view-timeline div.bx-tl-item-attachment video,
+div.bx-tl-view-outline div.bx-tl-item-attachment video,
+div.bx-tl-view-item div.bx-tl-item-attachment video {
+    display: block;
+    max-width: 100%;
+    margin-left: auto;
+    margin-right: auto;
+}
+div.bx-tl-item-attachment .bx-tl-item-video {
+    position: relative;
+}
+div.bx-tl-item-attachment .bx-tl-iv-duration {
+    position: absolute;
+    right: 0.25rem;
+    bottom: 0.25rem;
+    background-color: rgba(255, 255, 255, 0.8);
+}
+
+
+/*+++ Showcase Layout +++*/
+div.bx-tl-view div.bx-tl-item-attachments.bx-tl-ia-showcase {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-flex-wrap: wrap;
+    flex-wrap: wrap;
+    -webkit-justify-content: space-between;
+    justify-content: space-between;
+}
+div.bx-tl-view div.bx-tl-item-attachments.bx-tl-ia-showcase div.bx-tl-item-attachment {
+    box-sizing: border-box;
+    width: 33.2%;
+    height: 8.5rem;
+    border: 1px solid transparent;
+}
+div.bx-tl-view div.bx-tl-item-attachments.bx-tl-ia-showcase div.bx-tl-item-attachment.bx-tl-ia-first,
+div.bx-tl-view div.bx-tl-item-attachments.bx-tl-ia-showcase.bx-tl-ia-i2 div.bx-tl-item-attachment {
+    width: 100%;
+    height: auto;
+}
+div.bx-tl-view div.bx-tl-item-attachments.bx-tl-ia-showcase.bx-tl-ia-i3 div.bx-tl-item-attachment:not(.bx-tl-ia-first) {
+    width: 50%;
+}
+div.bx-tl-item-attachments.bx-tl-ia-showcase a,
+div.bx-tl-item-attachments.bx-tl-ia-showcase img {
+    position: relative;
+    display: block;
+    width: 100%;
+    height: 100%;
+}
+div.bx-tl-item-attachments.bx-tl-ia-showcase img {
+    object-fit: cover;
+}
+div.bx-tl-item-attachments.bx-tl-ia-showcase .bx-tl-item-more {
+    position: absolute;
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+    -webkit-justify-content: center;
+    justify-content: center;
+
+    top: 0;
+    left: 0;
+    width: 100%;
+    height: 100%;
+    background-color: rgba(0, 0, 0, 0.7);
+
+    font-size: 2.5rem;
+}
+div.bx-tl-item-attachments.bx-tl-ia-showcase .bx-tl-item-more,
+div.bx-tl-item-attachments.bx-tl-ia-showcase .bx-tl-item-more a {
+    color: #ffffff;
+}
+
+
+/*+++ Slider Styles  +++*/
+div.bx-tl-item-images .flickity-slider,
+div.bx-tl-item-videos .flickity-slider,
+div.bx-tl-item-attachments .flickity-slider {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+}
+
+/*+++ Item Link +++*/
+div.bx-tl-view-outline div.bx-tl-item-link {
+    text-align: center;
+}
+div.bx-tl-view-outline div.bx-tl-il-thumbnail img {
+    width: 100%;
+    max-width: 100px;
+    height: 100%;
+    max-height: 100px;
+}
+div.bx-tl-view-outline div.bx-tl-il-embed iframe,
+div.bx-tl-view-timeline div.bx-tl-il-embed iframe {
+    width: 100%;
+}
+
+/*--- Item Brief Style ---*/
+div.bx-tl-bview-images {
+    position: relative;
+}
+div.bx-tl-bview-image.bx-tl-bvi-single,
+div.bx-tl-bview-images div.bx-tl-bview-image {
+    width: 100%;
+    height: calc(100vh - 7rem);
+    text-align: center;
+}
+div.bx-tl-bview-image.bx-tl-bvi-single img,
+div.bx-tl-bview-images div.bx-tl-bview-image:not(.bx-tl-bvi-single) img {
+    position: relative;
+    max-width: 100% !important;
+    max-height: 100% !important;
+    margin-left: auto;
+    margin-right: auto;
+}
+div.bx-tl-bview-image.bx-tl-bvi-single {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+    -webkit-justify-content: center;
+    justify-content: center;
+}

+ 89 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/item_outline.html

@@ -0,0 +1,89 @@
+<div id="__html_id__" class="__style_prefix__-item __class__">
+    <a name="timeline-event-__id__"></a>
+    <div class="__style_prefix__-item-ind p-2">
+        <div class="__style_prefix__-item-cnt bx-def-box bx-def-box-round-corners bx-def-color-bg-box __class_content__">
+            <div class="__style_prefix__-blink-plate"></div>
+            <bx_if:show_note>
+                <div class="__style_prefix__-item-notes mt-3 md:mt-4">
+                    <bx_repeat:notes>
+                        <div class="__style_prefix__-item-note mt-2 first:mt-0 text-sm text-gray-500 dark:text-gray-400">
+                            <div class="__style_prefix__-in-text mx-3 md:mx-4 lg:mx-6<bx_if:show_note_color> col-__item_note_color__</bx_if:show_note_color>">__item_note__</div>
+                        </div>
+                    </bx_repeat:notes>
+                </div>
+                <div class="__style_prefix__-in-divider  bx-def-hr mt-3 md:mt-4 lg:mt-4"></div>
+            </bx_if:show_note>
+            <div class="__style_prefix__-item-owner flex items-center px-3 md:px-4 mt-3 md:mt-4 __class_owner__"> 
+                <div class="__style_prefix__-owner-avatar flex-shrink-0">__item_owner_unit__</div>
+                <div class="__style_prefix__-owner-info ml-3">
+                    <div class="__style_prefix__-owner-name flex flex-wrap">
+                        <a href="__item_owner_url__" class="__style_prefix__-owner-name bx-def-font-author mr-1 hover:text-gray-900 dark:hover:text-white whitespace-nowrap" title="__item_owner_title__">__item_owner_name__</a>
+                        <bx_if:show_owner_actions>
+                            <span class="__style_prefix__-owner-actions bx-def-font-meta">
+                                <bx_repeat:owner_actions>
+                                    <span class="__style_prefix__-oa-div mr-1">&#183;</span><a class="__style_prefix__-owner-action" href="__href__" onclick="__onclick__" title="__title__"><i class="sys-icon __icon__"></i></a>
+                                </bx_repeat:owner_actions>
+                            </span>
+                        </bx_if:show_owner_actions>
+                    </div>
+                    <div class="__style_prefix__-item-meta bx-def-font-meta flex flex-wrap">
+                        <bx_if:show_menu_item_meta>
+                            <span class="__style_prefix__-meta mr-1">__meta__</span>
+                        </bx_if:show_menu_item_meta>
+                        <bx_if:show_item_action>
+                            <span class="__style_prefix__-div mr-1">&#183;</span>
+                            <div class="__style_prefix__-item-action mr-1">
+                                <span class="mr-1 lowercase">__item_owner_action__</span>
+                                <bx_if:show_timeline_owner>
+                                    <span class="mr-1"><bx_text:_bx_timeline_txt_to /></span> 
+                                    <span class="__style_prefix__-timeline-owner-name mr-1">
+                                        <bx_repeat:owners><span class="__style_prefix__-ton-div">, </span><a href="__owner_url__" class="__style_prefix__-ton-item">__owner_username__</a></bx_repeat:owners>
+                                    </span> 
+                                </bx_if:show_timeline_owner>
+                            </div>
+                        </bx_if:show_item_action>
+                        <bx_if:show_pinned>
+                            <span class="__style_prefix__-pinned mr-1">
+                                <i class="sys-icon thumbtack" title="<bx_text_attribute:_bx_timeline_txt_pinned />"></i>
+                            </span>
+                        </bx_if:show_pinned>
+                        <bx_if:show_sticked>
+                            <span class="__style_prefix__-sticked mr-1">
+                                <i class="sys-icon thumbtack" title="<bx_text_attribute:_bx_timeline_txt_sticked />"></i>
+                            </span>
+                        </bx_if:show_sticked>
+                        <bx_if:show_hot>
+                            <span class="__style_prefix__-hot mr-1">
+                                <i class="sys-icon fire" title="<bx_text_attribute:_bx_timeline_txt_hot />"></i>
+                            </span>
+                        </bx_if:show_hot>
+                    </div>
+                </div>
+            </div>
+            
+            <div class="__style_prefix__-item-content __style_prefix__-ic-__content_type__ bx-clearfix">__content__</div>
+            <bx_if:show_location>
+                <div class="__style_prefix__-item-location mx-3 md:mx-4 mt-3 md:mt-4 bx-def-font-grayed bx-clearfix">__location__</div>
+            </bx_if:show_location>
+            <bx_if:show_fields>
+                <div class="__style_prefix__-item-fields mx-3 md:mx-4 mt-3 md:mt-4 bx-def-font-grayed bx-clearfix">__fields__</div>
+            </bx_if:show_fields>
+            <bx_if:show_menu_item_counters>
+                <div class="__style_prefix__-item-activity __style_prefix__-ia-counters space-x-4 px-2 md:px-3 pb-2 md:pb-3">__menu_item_counters__</div>
+            </bx_if:show_menu_item_counters>
+            <div class="flex justify-between space-x-8 p-3 md:p-4 border-t border-gray-200 dark:border-gray-700">
+                <bx_if:show_menu_item_actions>
+                    <div class="__style_prefix__-item-activity">__menu_item_actions__</div>
+                </bx_if:show_menu_item_actions>
+               <bx_if:show_manage>
+                <div class="__style_prefix__-item-manage">
+                    <a class="group bx-stl-mil-sm" href="javascript:void(0)" onclick="__onclick__">
+                        <span class="bx-menu-item-icon bx-def-align-center leading-5"><i class="sys-icon ellipsis-h"></i></span>
+                    </a>
+                </div>
+            </bx_if:show_manage>
+            </div>
+            <div class="__style_prefix__-item-comments-holder">__comments__</div>
+        </div>
+    </div>
+</div>

+ 91 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/item_timeline.html

@@ -0,0 +1,91 @@
+<div id="__html_id__" class="__style_prefix__-item __class__ bx-def-thumb-size-min-height relative pb-3 md:pb-4 lg:pb-6 bx-clearfix">
+    <a name="timeline-event-__id__"></a>
+    <div class="__style_prefix__-item-cnt bx-def-box bx-def-box-round-corners bx-def-color-bg-box __class_content__">
+        <div class="__style_prefix__-blink-plate"></div>
+        <bx_if:show_note>
+            <div class="__style_prefix__-item-notes mt-3 md:mt-4">
+                <bx_repeat:notes>
+                    <div class="__style_prefix__-item-note mt-2 first:mt-0 text-sm text-gray-500 dark:text-gray-400">
+                        <div class="__style_prefix__-in-text mx-3 md:mx-4 lg:mx-6<bx_if:show_note_color> col-__item_note_color__</bx_if:show_note_color>">__item_note__</div>
+                    </div>
+                </bx_repeat:notes>
+            </div>
+            <div class="__style_prefix__-in-divider bx-def-hr mt-3 md:mt-4 lg:mt-4"></div>
+        </bx_if:show_note>
+        <div class="__style_prefix__-item-owner flex items-center px-3 md:px-4 mt-3 md:mt-4 __class_owner__"> 
+            <div class="__style_prefix__-owner-avatar flex-shrink-0">__item_owner_unit__</div>
+            <div class="__style_prefix__-owner-info ml-3">
+                <div class="__style_prefix__-owner-name flex flex-wrap">
+                    <a href="__item_owner_url__" class="__style_prefix__-owner-name bx-def-font-author mr-1 hover:text-gray-900 dark:hover:text-white whitespace-nowrap" title="__item_owner_title__">__item_owner_name__</a> 
+                    <bx_if:show_owner_actions>
+                        <span class="__style_prefix__-owner-actions bx-def-font-meta">
+                            <bx_repeat:owner_actions>
+                                <span class="__style_prefix__-oa-div mr-1">&#183;</span><a class="__style_prefix__-owner-action" href="__href__" onclick="__onclick__">__content__</a>
+                            </bx_repeat:owner_actions>
+                        </span>
+                    </bx_if:show_owner_actions>
+                </div>
+                <div class="__style_prefix__-item-meta bx-def-font-meta flex flex-wrap">
+                    <bx_if:show_menu_item_meta>
+                        <span class="__style_prefix__-meta mr-1">__meta__</span>
+                    </bx_if:show_menu_item_meta>
+                    <bx_if:show_item_action>
+                        <span class="__style_prefix__-div mr-1">&#183;</span>
+                        <div class="__style_prefix__-item-action mr-1">
+                            <span class="mr-1 lowercase">__item_owner_action__<i class="sys-icon __item_icon__ ml-2"></i></span>
+                            <bx_if:show_timeline_owner>
+                                <span class="mr-1"><bx_text:_bx_timeline_txt_to /></span> 
+                                <span class="__style_prefix__-timeline-owner-name mr-1">
+                                    <bx_repeat:owners><span class="__style_prefix__-ton-div">, </span><a href="__owner_url__" class="__style_prefix__-ton-item">__owner_username__</a></bx_repeat:owners>
+                                </span> 
+                            </bx_if:show_timeline_owner>
+                        </div>
+                    </bx_if:show_item_action>
+                    <bx_if:show_pinned>
+                        <span class="__style_prefix__-div mr-1">&#183;</span>
+                        <span class="__style_prefix__-pinned ml-1">
+                            <i class="sys-icon thumbtack" title="<bx_text_attribute:_bx_timeline_txt_pinned />"></i>
+                        </span>
+                    </bx_if:show_pinned>
+                    <bx_if:show_sticked>
+                        <span class="__style_prefix__-div mr-1">&#183;</span>
+                        <span class="__style_prefix__-sticked ml-1">
+                            <i class="sys-icon thumbtack" title="<bx_text_attribute:_bx_timeline_txt_sticked />"></i>
+                        </span>
+                    </bx_if:show_sticked>
+                    <bx_if:show_hot>
+                        <span class="__style_prefix__-div mr-1">&#183;</span>
+                        <span class="__style_prefix__-hot ml-1">
+                            <i class="sys-icon fire" title="<bx_text_attribute:_bx_timeline_txt_hot />"></i>
+                        </span>
+                    </bx_if:show_hot>
+                </div>
+                
+            </div>
+        </div>
+        
+        <div class="__style_prefix__-item-content __style_prefix__-ic-__content_type__ bx-clearfix">__content__</div>
+        <bx_if:show_location>
+            <div class="__style_prefix__-item-location mx-3 md:mx-4 mt-3 md:mt-4 bx-def-font-grayed bx-clearfix">__location__</div>
+        </bx_if:show_location>
+        <bx_if:show_fields>
+            <div class="__style_prefix__-item-fields mx-3 md:mx-4 mt-3 md:mt-4 bx-def-font-grayed bx-clearfix">__fields__</div>
+        </bx_if:show_fields>
+        <bx_if:show_menu_item_counters>
+            <div class="__style_prefix__-item-activity __style_prefix__-ia-counters space-x-4 px-2 md:px-3 pb-2 md:pb-3">__menu_item_counters__</div>
+        </bx_if:show_menu_item_counters>
+        <div class="flex justify-between space-x-8 p-3 md:p-4 border-t border-gray-200 dark:border-gray-700">
+            <bx_if:show_menu_item_actions>
+                <div class="__style_prefix__-item-activity">__menu_item_actions__</div>
+            </bx_if:show_menu_item_actions>
+            <bx_if:show_manage>
+                <div class="__style_prefix__-item-manage">
+                    <a class="group bx-stl-mil-sm" href="javascript:void(0)" onclick="__onclick__">
+                        <span class="bx-menu-item-icon bx-def-align-center leading-5"><i class="sys-icon ellipsis-h"></i></span>
+                    </a>
+                </div>
+            </bx_if:show_manage>
+        </div>
+        <div class="__style_prefix__-item-comments-holder">__comments__</div>
+    </div>
+</div>

+ 5 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_custom_hor_bx_timeline_menu_item_actions.html

@@ -0,0 +1,5 @@
+<ul id="__html_id__" class="bx-menu-custom bx-menu-custom-hor bx-menu-hor-inline<bx_if:show_more_auto_class> bx-menu-more-auto</bx_if:show_more_auto_class> bx-menu-object-__object__ flex justify-start items-start space-x-2">
+    <bx_repeat:menu_items>
+        <li class="bx-menu-item bx-menu-item-__name____class__ bx-stl-mil-sm group">__item__</li>
+    </bx_repeat:menu_items>
+</ul>__js_code__

+ 13 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_custom_item_hor.html

@@ -0,0 +1,13 @@
+<span class="__class_wrp__ menu-custom-item-hor mci-action">
+    <a class="__class_link__ flex items-center" href="__link__" onclick="__onclick__" title="__title_attr__"__attrs__>
+        <span class="flex items-center">
+            <span class="bx-menu-item-icon bx-stl-mii-sm group-hover:text-gray-700 dark:group-hover:text-gray-300">
+                <bx_include_auto:menu_icon.html />
+            </span>
+            <bx_if:title>
+                <span class="bx-menu-item-title bx-stl-mit">__title__</span>
+            </bx_if:title>
+        </span>
+    </a>
+    <bx_if:addon>__addon__</bx_if:addon>
+</span>

+ 11 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_custom_item_ver.html

@@ -0,0 +1,11 @@
+<span class="__class_wrp__ menu-custom-item-ver mci-manage">
+    <a class="__class_link__ flex items-center space-x-1" href="__link__" onclick="__onclick__" title="__title_attr__"__attrs__>
+        <span class="flex items-center">
+            <span class="bx-menu-item-icon bx-stl-mii-sm group-hover:text-gray-700 dark:group-hover:text-gray-300">
+                <bx_include_auto:menu_icon.html />
+            </span>
+            <bx_if:title><span class="bx-menu-item-title bx-stl-mit">__title__</span></bx_if:title>
+        </span>
+    </a>
+    <bx_if:addon>__addon__</bx_if:addon>
+</span>

+ 7 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_custom_ver_bx_timeline_menu_item_manage.html

@@ -0,0 +1,7 @@
+<div class="w-full md:w-56 box-border">
+    <ul class="bx-menu-custom bx-menu-custom-ver bx-menu-object-__object__ bx-clearfix">
+        <bx_repeat:menu_items>
+            <li class="bx-menu-item bx-menu-item-__name____class__ bx-stl-mil-sm group">__item__</li>
+        </bx_repeat:menu_items>
+    </ul>
+</div>

+ 18 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/bx_timeline/menu_vertical_bx_timeline_menu_item_share.html

@@ -0,0 +1,18 @@
+<ul class="bx-menu-ver bx-menu-object-__object__ bx-clearfix">
+    <bx_repeat:menu_items>
+        <li class="bx-menu-item __name__ __class_add__ bx-stl-mil-sm group">
+            <a class="__name__ flex flex-2 items-center truncate" href="__link__" onclick="__onclick__" __attrs__>
+                <span class="bx-menu-item-icon bx-stl-mii-sm group-hover:text-gray-700 dark:group-hover:text-gray-300">
+                    <bx_include_auto:menu_icon.html />
+                </span>
+                <span class="bx-menu-item-title bx-stl-mit">__title__</span>
+            </a>
+        </li>
+    </bx_repeat:menu_items>
+</ul>
+<script language="javascript">
+    $(document).ready(function () {
+        // add default class to active menu items
+        $('.bx-menu-ver > li.bx-menu-tab-active').not('.bx-def-color-bg-active').addClass('bx-def-color-bg-active');
+    });
+</script>

+ 102 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_general/css/main.css

@@ -0,0 +1,102 @@
+/* attachments */
+.bx-base-general-attachments .bx-base-general-attachment video,
+.flickity-enabled .flickity-viewport .flickity-slider .bx-base-general-attachment video {
+    max-width:100%;
+    max-height:100%;
+}
+.bx-base-general-attachment a div {
+    text-overflow: ellipsis;
+    overflow: hidden;
+}
+.bx-base-general-attachment a canvas {
+    position:absolute;
+    top:0;
+    left:0;
+}
+
+.bx-base-general-attachment-sound {
+    position:relative;
+    height:100%;
+}
+.bx-base-general-attachment-sound-file-name,
+.bx-base-general-attachment-sound-player {
+  display: flex;
+  justify-content: center;
+  align-content: center;
+  flex-direction: column;
+}
+.bx-base-general-attachment-sound-file-name {
+    height:9.25rem;
+}
+.bx-base-general-attachment-sound-player {
+    height:3.25rem;
+}
+
+/* unit meta */
+.bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor {
+    -webkit-flex-wrap: wrap;
+    flex-wrap: wrap;
+}
+.bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor > li {
+    white-space: nowrap;
+}
+.bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor > li.bx-menu-item-nl {
+    display: none;
+    width: 100%;
+    height: 0;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor > li.bx-menu-item-nl {
+    display: block;
+}
+.bx-base-general-unit-meta ul.bx-menu-custom li:first-child .bx-base-general-unit-meta-div {
+    display: none;
+}
+.bx-base-general-unit-meta ul.bx-menu-custom li .bx-metatags-keyword {
+    margin: 0px;
+    line-height: normal;
+}
+
+/* Browsing by labels */
+.bx-base-general-lables-tree-parent-0, 
+.bx-base-general-lables-tree-parent-0 ul {
+    list-style-type: none;
+    padding-left: 2rem;
+}
+.bx-base-general-lables-tree-parent-0 {
+    margin: 0px;
+}
+.bx-base-general-lables-tree-parent-0 li {
+    padding: 0px;
+}
+.bx-base-general-lables-tree-parent-0 li i.sys-icon {
+    display: inline-block;
+    width: 0.625rem;
+    margin-left: -1rem;
+}
+.bx-badge-icon{
+    color:inherit;
+}
+
+/* more menu */
+.bx-menu-submenu-more-auto .sys-action-do-icon,
+.bx-menu-submenu-more-auto .bx-vote-do-icon,
+.bx-menu-submenu-more-auto .bx-favorite-do-icon,
+.bx-menu-submenu-more-auto .bx-feature-do-icon,
+.bx-menu-submenu-more-auto .bx-report-do-icon,
+.bx-menu-submenu-more-auto .bx-score-do-icon {
+    height: 1.25rem;
+    width: 1.25rem;
+    align-items: center;
+    justify-content: center;
+}
+.sys-action-counter-holder .bx-view-counter-label {
+    padding: 0px;
+}
+.bx-base-unit-showcase-wrapper {
+    display: block;
+    white-space: nowrap;
+    overflow: hidden;
+}
+.bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase{
+    display: inline-block;
+}

+ 5 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_groups/css/main.css

@@ -0,0 +1,5 @@
+/*--- Unit Meta ---*/
+.bx-base-groups-unit-with-cover .bx-base-pofile-unit-info .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor {
+    -webkit-justify-content: flex-start;
+    justify-content: flex-start;
+}

+ 256 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_profile/css/main.css

@@ -0,0 +1,256 @@
+/*--- Units ---*/
+.bx-base-pofile-units-wrapper:not(.bx-base-unit-showcase-wrapper) {
+    display: -webkit-flex;
+    display: flex;
+
+    -webkit-align-items: stretch;
+    align-items: stretch;
+
+    -webkit-flex-wrap: wrap;
+    flex-wrap: wrap;
+
+    -webkit-justify-content: flex-start;
+    justify-content: flex-start;
+}
+
+.bx-base-pofile-units-wrapper .bx-base-pofile-unit-with-cover {
+    -webkit-flex: 0 0 100%;
+    flex: 0 0 100%;
+
+    overflow: hidden;
+}
+.bx-base-unit-showcase-wrapper.bx-sc-enabled .bx-base-pofile-unit-with-cover {
+    height: 100%;
+}
+
+.bx-base-pofile-unit-with-cover .bx-base-pofile-unit-online {
+    right: 0.5rem;
+    bottom: 0.5rem;
+}
+.bx-base-pofile-cover-thumb .bx-base-pofile-unit-online {
+    width: 1rem;
+    height: 1rem;
+    right: 1.25rem;
+    bottom: 1.25rem;
+}
+
+/*--- Units: Showcase view ---*/
+.bx-base-unit-showcase-wrapper {
+    text-align: center;
+}
+
+.bx-base-unit-showcase-wrapper .bx-base-pofile-unit-wo-info-showcase {
+    display: inline-block;
+    vertical-align: top;
+}
+
+/*+++ MEDIA: tablet2 +++*/
+.bx-media-tablet2 .bx-layout-column-wide .bx-base-pofile-units-wrapper .bx-base-pofile-unit-with-cover,
+.bx-media-tablet2 #sys_search_results .bx-base-pofile-units-wrapper .bx-base-pofile-unit-with-cover,
+.bx-media-tablet2 .bx-layout-column-fullwidth .bx-base-pofile-units-wrapper .bx-base-pofile-unit-with-cover {
+    -webkit-flex: 0 0 49.8%;
+    -ms-flex: 0 0 49.8%;
+    flex: 0 0 49.8%;
+}
+
+.bx-media-tablet2 .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-showcase {
+    width:calc(50%);
+}
+.bx-media-tablet2 .bx-layout-column-thin .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-showcase {
+    width:calc(100%);
+}
+
+.bx-media-tablet2 .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-wo-info-showcase {
+    width:calc(10.0%);
+}
+.bx-media-tablet2 .bx-layout-column-thin .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-wo-info-showcase {
+    width:calc(16.6%);
+}
+
+/*+++ MEDIA: desktop +++*/
+.bx-media-desktop .bx-layout-column-wide .bx-base-pofile-units-wrapper .bx-base-pofile-unit-with-cover {
+    -webkit-flex: 0 0 49.8%;
+    -ms-flex: 0 0 49.8%;
+    flex: 0 0 49.8%;
+}
+.bx-media-desktop #sys_search_results .bx-base-pofile-units-wrapper .bx-base-pofile-unit-with-cover,
+.bx-media-desktop .bx-layout-column-fullwidth .bx-base-pofile-units-wrapper .bx-base-pofile-unit-with-cover {
+    -webkit-flex: 0 0 33.25%;
+    -ms-flex: 0 0 33.25%;
+    flex: 0 0 33.25%;
+}
+
+.bx-media-desktop .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-showcase {
+    width:calc(33.3%);
+}
+.bx-media-desktop .bx-layout-column-thin .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-showcase {
+    width:calc(100%);
+}
+.bx-media-desktop .bx-layout-column-half .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-showcase {
+    width:calc(50%);
+}
+
+.bx-media-desktop .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-wo-info-showcase {
+    width:calc(6.25%);
+}
+.bx-media-desktop .bx-layout-column-thin .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-wo-info-showcase {
+    width:calc(25.0%);
+}
+.bx-media-desktop .bx-layout-column-half .bx-base-unit-showcase-wrapper .bx-base-pofile-unit-wo-info-showcase {
+    width:calc(10.0%);
+}
+
+
+/*--- Unit ---*/
+p.bx-base-pofile-unit-thumb.bx-def-icon-size {
+    font-size: 1.125rem;
+}
+p.bx-base-pofile-unit-thumb.bx-def-thumb-size {
+    font-size: 1.75rem;
+}
+p.bx-base-pofile-unit-thumb.bx-def-ava-size {
+    font-size: 2.375rem;
+}
+p.bx-base-pofile-unit-thumb.bx-def-ava-big-size {
+    font-size: 3rem;
+}
+
+
+/*--- Unit Meta ---*/
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor {
+    -webkit-justify-content: center;
+    justify-content: center;
+    -webkit-align-items: center;
+    align-items: center;
+
+    width: 100%;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor > li {
+    -webkit-flex: 1 1 auto;
+    flex: 1 1 auto;
+    margin: 0 0.25rem;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor > li.bx-menu-item-nl {
+    margin: 0;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor .bx-menu-item-nl ~ li {
+    margin-top: 0.5rem;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor .bx-menu-item-nl ~ li .bx-base-profile-unit-meta-item {
+    display: block;
+    width: 100%;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor .bx-menu-item-nl ~ li .bx-base-profile-unit-meta-item .bx-btn {
+    display: block;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor .bx-menu-item-nl ~ li .bx-base-profile-unit-meta-item {
+    padding: 0;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor .bx-menu-item-nl ~ li .bx-base-profile-unit-meta-item .bx-btn {
+    text-align: center;
+}
+.bx-base-pofile-unit-with-cover .bx-base-general-unit-meta ul.bx-menu-custom.bx-menu-custom-hor .bx-base-pofile-unit .bx-def-icon-size {
+    width: 1.5rem;
+    height: 1.5rem;
+}
+
+
+/*--- Entry: Profile Cover ---*/
+.bx-base-pofile-cover-wrapper.bx-no-cover .bx-base-pofile-cover-bg  {
+    height: 50%;
+}
+.bx-base-pofile-cover-wrapper.bx-no-cover .bx-base-pofile-cover-info {
+    padding-top: 1rem;
+}
+.bx-base-pofile-cover-wrapper.bx-no-cover .bx-base-pofile-ci-cnt {
+    margin-top: 0;
+}
+.bx-base-profile-cover-meta .bx-menu-custom.bx-menu-custom-hor {
+    -webkit-align-items: center;
+    align-items: center;
+    -webkit-flex-wrap: wrap;
+    flex-wrap: wrap;
+}
+.bx-base-profile-cover-meta .bx-menu-custom.bx-menu-custom-hor li {
+    margin-right: 1.25rem;
+}
+.bx-base-profile-cover-meta .bx-menu-custom.bx-menu-custom-hor li:last-child {
+    margin-right: 0;
+}
+.bx-base-profile-cover-meta .bx-menu-custom.bx-menu-custom-hor li .sys-meta-div {
+    display: none;
+}
+.bx-base-profile-cover-meta .bx-menu-custom.bx-menu-custom-hor li .bx-base-bages-container {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: flex-start;
+    align-items: flex-start;
+}
+
+/*--- Entry: Profile Actions ---*/
+div.bx-base-general-entity-actions {
+    position: relative;
+    width: 100%;
+}
+.bx-base-pofile-cover-actions div.bx-base-general-entity-actions {
+    position: absolute;
+}
+.bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor {
+    -webkit-justify-content: center;
+    justify-content: center;
+}
+.bx-media-desktop .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor {
+    -webkit-justify-content: flex-end;
+    justify-content: flex-end;
+}
+div.bx-base-general-entity-actions .bx-menu-custom-hor > li .sys-action-element-holder a {
+    display: block;
+}
+div.bx-base-general-entity-actions .bx-menu-custom-hor li.bx-menu-item-more-auto .bx-popup .bx-menu-custom-ver .bx-menu-item {
+    border-color: transparent;
+    border-radius: 0;
+    box-shadow: none;
+}
+div.bx-base-general-entity-actions .bx-menu-custom-hor li.bx-menu-item-more-auto .bx-popup .bx-menu-custom-ver .bx-menu-item,
+div.bx-base-general-entity-actions .bx-menu-custom-hor li.bx-menu-item-more-auto .bx-popup .bx-menu-custom-ver .bx-menu-item .bx-base-general-entity-action,
+div.bx-base-general-entity-actions .bx-menu-custom-hor li.bx-menu-item-more-auto .bx-popup .bx-menu-custom-ver .bx-menu-item .sys-action,
+div.bx-base-general-entity-actions .bx-menu-custom-hor li.bx-menu-item-more-auto .bx-popup .bx-menu-custom-ver .bx-menu-item .sys-action-element-holder {
+    width: 100%;
+}
+div.bx-base-general-entity-actions .bx-menu-custom-hor li.bx-menu-item-more-auto .bx-popup .bx-menu-custom-ver .bx-menu-item .sys-action-counter-holder:not(.bx-score-counter-holder) {
+    margin-right: 1rem;
+}
+
+.bx-media-desktop .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor > .bx-menu-item-more-auto > .bx-base-general-entity-action > a > .bx-mi-text,
+.bx-media-tablet .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor > .bx-menu-item-more-auto > .bx-base-general-entity-action > a > .bx-mi-text {
+    display: none;
+}
+.bx-media-phone .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor > .bx-menu-item-more-auto > .bx-base-general-entity-action > a > .bx-mi-text {
+    display: inline;
+}
+.bx-media-phone .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor > li:not(.bx-menu-item-more-auto) a,
+.bx-media-phone .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor > li:not(.bx-menu-item-more-auto) .sys-action-do,
+.bx-media-phone .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor > li.bx-menu-item-more-auto > span > a {
+    -webkit-flex-direction: column;
+    flex-direction: column;
+    -webkit-align-items: center;
+    align-items: center;
+
+    height: auto;
+}
+.bx-media-phone .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor > li:not(.bx-menu-item-more-auto) a span,
+.bx-media-phone .bx-base-pofile-cover-actions div.bx-base-general-entity-actions .bx-menu-custom-hor > li.bx-menu-item-more-auto > span > a span.bx-mi-text {
+    margin: 0;
+    padding: 0;
+}
+
+/*--- Entry: Profile Cover block ---*/
+.bx-base-profile-cover-block-wrapper .bx-base-pofile-cover-actions div.bx-base-general-entity-actions{
+    position: relative;
+}
+
+/*--- Entry: Profile Description block ---*/
+.bx-base-profile-entity-content.bx-def-vanilla-html {
+    margin-top: 1.5rem;
+    margin-bottom: 1.5rem;
+}

+ 6 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_profile/menu_custom_actions.html

@@ -0,0 +1,6 @@
+<ul id="__html_id__" class="bx-menu-custom bx-menu-custom-hor bx-menu-hor-inline<bx_if:show_more_auto_class> bx-menu-more-auto</bx_if:show_more_auto_class> bx-menu-object-__object__ flex items-stretch space-y-0 space-x-3">
+    <bx_repeat:menu_items>
+        <li class="bx-menu-item bx-menu-item-__name____class__ group inline-flex items-center px-4 py-2 first:ml-0 border border-gray-300 dark:border-gray-700 shadow-sm hover:shadow-md text-sm font-medium rounded-md text-gray-700 dark:text-gray-300 dark:hover:text-white hover:text-gray-800 bg-white dark:bg-gray-800 dark:hover:bg-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500">__item__</li>
+    </bx_repeat:menu_items>
+</ul>
+__js_code__

+ 133 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/mod_text/css/main.css

@@ -0,0 +1,133 @@
+/*-- Unit --*/
+.bx-base-text-unit-cnt {
+    width: 100%;
+}
+.bx-base-text-unit-cover {
+	position: relative;
+}
+.bx-base-text-unit-cover img {
+    position: relative;
+    display: block;
+
+    width: 100%;
+    height: 300px;
+    object-fit: cover;
+}
+
+/*-- Browsing: Search results --*/
+.bx-base-text-unit-gallery-wrapper {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: stretch;
+    align-items: stretch;
+    -webkit-flex-wrap: wrap;
+    flex-wrap: wrap;
+    -webkit-justify-content: flex-start;
+    justify-content: flex-start;
+}
+
+.bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery {
+    display: -webkit-flex;
+    display: flex;
+
+    -webkit-flex: 0 0 100%;
+    flex: 0 0 100%;
+
+    overflow:hidden;
+}
+.bx-base-unit-showcase-wrapper .flickity-slider {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: stretch;
+    align-items: stretch;
+    -webkit-flex-wrap: wrap;
+    flex-wrap: wrap;
+    -webkit-justify-content: flex-start;
+    justify-content: flex-start;
+}
+.bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase {
+    margin: 0;
+    padding: 0.25rem;
+}
+
+.bx-base-unit-showcase-wrapper.bx-sc-enabled .bx-base-text-unit-showcase {
+    height: calc(100% - 3px);
+}
+
+/*-- MEDIA: phone2 --*/
+.bx-media-phone2 .bx-layout-column-half .bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery,
+.bx-media-phone2 .bx-layout-column-thin .bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery {
+    -webkit-flex: 0 0 49.8%;
+    flex: 0 0 49.8%;
+}
+
+.bx-media-phone2 .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase {
+   width:calc(50%);
+}
+
+/*-- MEDIA: tablet2 --*/
+.bx-media-tablet2 .bx-layout-column-wide .bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery,
+.bx-media-tablet2 .bx-layout-column-fullwidth .bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery,
+.bx-media-tablet2 #sys_search_results .bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery {
+    -webkit-flex: 0 0 49.8%;
+    flex: 0 0 49.8%;
+}
+
+.bx-media-tablet2 .bx-layout-column-wide .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase,
+.bx-media-tablet2 .bx-layout-column-fullwidth .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase,
+.bx-media-tablet2 #sys_search_results .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase {
+   width: calc(50%);
+}
+
+/*-- MEDIA: desktop --*/
+.bx-media-desktop .bx-layout-column-wide .bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery {
+    -webkit-flex: 0 0 49.8%;
+    flex: 0 0 49.8%;
+}
+.bx-media-desktop #sys_search_results .bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery,
+.bx-media-desktop .bx-layout-column-fullwidth .bx-base-text-unit-gallery-wrapper .bx-base-text-unit-gallery {
+    -webkit-flex: 0 0 33.25%;
+    flex: 0 0 33.25%;
+}
+
+.bx-media-desktop .bx-layout-column-thin .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase {
+   width:calc(100%);
+}
+
+.bx-media-desktop .bx-layout-column-half .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase,
+.bx-media-desktop .bx-layout-column-wide .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase {
+   width:calc(50%);
+}
+
+.bx-media-desktop #sys_search_results  .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase,
+.bx-media-desktop .bx-layout-column-fullwidth  .bx-base-unit-showcase-wrapper .bx-base-text-unit-showcase {
+   width:calc(33.3%);
+}
+
+/*-- Entry: Text block --*/
+.bx-base-text-entity-image img {
+    width: 100%;
+}
+
+/*-- Entry: Actions Menu --*/
+.bx-base-general-entity-actions .bx-menu-custom-hor li.bx-menu-item-more-auto .bx-popup .bx-menu-custom .bx-menu-item {
+    width: 100%;
+    border-color: transparent;
+    border-radius: 0;
+    box-shadow: none;
+}
+.bx-base-general-entity-actions .bx-menu-custom-hor > .bx-menu-item-more-auto > .bx-base-general-entity-action > a > .bx-mi-text {
+    display: none;
+}
+
+/*-- Entry: Author block --*/
+.sys-author-info .sys-author-profile ul.bx-menu-custom.bx-menu-custom-hor {
+    -webkit-align-items: center;
+    align-items: center;
+}
+.sys-author-info .sys-author-profile ul.bx-menu-custom.bx-menu-custom-hor > li {
+    margin-left: 1rem;
+}
+.sys-author-info .sys-author-profile ul.bx-menu-custom.bx-menu-custom-hor > li:first-child {
+    margin-left: 0;
+}

+ 120 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/_header_js_custom.html

@@ -0,0 +1,120 @@
+<script language="javascript">
+    $(document).ready(function () {
+        bx_activate_anim_icons('#283C50');
+
+        var aSidebars = ['site', 'account'];
+        for(var i in aSidebars) {
+            if(typeof(aSidebars[i]) != 'string')
+                continue;
+
+            $('.bx-sidebar-' + aSidebars[i] + '-trigger').on('click', function(event) {
+                event.preventDefault();
+
+                var aMatches = $(this).attr('class').match(/bx-sidebar-(.*)-trigger/);
+                if(!aMatches || aMatches.length != 2)
+                    return;
+
+                bx_sidebar_toggle(aMatches[1]);
+            });
+
+            $('.bx-sidebar .bx-sidebar-' + aSidebars[i] + '-bg').on('click', function(event){
+                event.preventDefault();
+
+                var aMatches = $(this).attr('class').match(/bx-sidebar-(.*)-bg/);
+                if(!aMatches || aMatches.length != 2)
+                    return;
+                
+                bx_sidebar_toggle(aMatches[1]);
+            });
+
+            $('.bx-sidebar .bx-sidebar-' + aSidebars[i] + '-close').on('click', function(event){
+                event.preventDefault();
+
+                var aMatches = $(this).attr('class').match(/bx-sidebar-(.*)-close/);
+                if(!aMatches || aMatches.length != 2)
+                    return;
+
+                bx_sidebar_toggle(aMatches[1]);
+            });
+        }
+    });
+
+    function bx_sidebar_get(sType) {
+        return $('.bx-sidebar.bx-sidebar-' + sType);
+    }
+
+    function bx_sidebar_active(sType) {
+        var oSidebar = bx_sidebar_get(sType);
+        if(!oSidebar || oSidebar.length == 0)
+            return false;
+
+        return oSidebar.hasClass('bx-sidebar-active');
+    }
+    
+    function bx_sidebar_toggle(sType) {
+        var oSidebar = bx_sidebar_get(sType);
+        oSidebar.toggleClass('bx-sidebar-active', !bx_sidebar_active(sType));
+    }
+
+    function bx_sidebar_dropdown_toggle(oLink) {
+        $(oLink).parents('.bx-sidebar-item:first').toggleClass('bx-si-dropdown-open').find('.bx-si-dropdown-icon').toggleClass('rotate-0 rotate-90');
+
+        return false;
+    }
+
+    function bx_site_search_show(oButtom) {
+        var oButton = $(oButtom).parents('.bx-ti-search-button');
+        oButton.addClass('bx-tis-button-hidden');
+
+        var oBox = oButton.parents('.bx-ti-search').find('.bx-ti-search-box');
+        oBox.addClass('bx-tis-box-shown');
+
+        setTimeout(function () {
+            $(document).on('click.bx-site-search-phone touchend.bx-site-search-phone', function (event) {
+                if ($(event.target).parents('.sys-search-results-quick,.bx-ti-search-box,.bx-ti-search-button').length || $(event.target).filter('.sys-search-results-quick,.bx-ti-search-box,.bx-ti-search-button').length)
+                    event.stopPropagation();
+                else {
+                    bx_site_search_close_all_opened();
+                    oBox.removeClass('bx-tis-box-shown');
+                    oButton.removeClass('bx-tis-button-hidden');
+                }
+            });
+        }, 10);
+    }
+
+    function bx_site_search_complete(oContainer, oData) {
+        if(!oData) {
+            if(oContainer.is(':visible'))
+                oContainer.hide();
+
+            return;
+        }
+
+        oContainer.show();
+
+        setTimeout(function () {
+            var iWidthPrev = $(window).width();
+            $(window).on('resize.bx-site-search', function () {
+                if($(this).width() == iWidthPrev)
+                    return;
+
+                iWidthPrev = $(this).width();
+                bx_site_search_close_all_opened();
+            });
+ 
+            $(document).on('click.bx-site-search touchend.bx-site-search', function (event) {
+                if ($(event.target).parents('.sys-search-results-quick').length || $(event.target).filter('.sys-search-results-quick').length || e === event.target)
+                    event.stopPropagation();
+                else
+                    bx_site_search_close_all_opened();
+            });
+
+        }, 10);
+    }
+
+    function bx_site_search_close_all_opened() {
+        $('.sys-search-results-quick:visible').each(function () {
+            $(this).hide();
+        });
+    }
+</script>

+ 28 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/cover.html

@@ -0,0 +1,28 @@
+<bx_if:logged_in>
+<style>
+    .bx-hide-when-logged-in {
+        display:none !important;
+    }
+</style>
+</bx_if:logged_in>
+<div class="bx-menu-toolbar-padding pt-16">
+    <div class="bx-cover-gap overflow-hidden">
+        <div class="bx-cover-wrapper<bx_if:empty_cover_class> bx-cover-empty</bx_if:empty_cover_class> relative" <bx_if:bg>style="background-image:url(__image_url__)"</bx_if:bg>>
+            <div class="bx-cover-gradient bx-def-page-width relative mx-auto"></div>
+            <div class="relative mx-auto py-16 text-center">
+                <bx_if:image>
+                    <div class="bx-cover-image">
+                        <img class="border rounded-md" style="background-image:url(__icon_url__)" src="<bx_icon_url:spacer.gif />" />
+                    </div>
+                </bx_if:image>
+                <div class="bx-cover-title flex justify-center items-center">
+                    <div class="text-4xl font-bold tracking-tight text-gray-900 dark:text-gray-50">
+                        <span class="block pb-1 relative">__title__</span>
+                        <span class="block pb-1 bg-clip-text text-transparent bg-gradient-to-r from-green-500 to-blue-500"></span>
+                    </div>
+                </div>
+                <div class="bx-cover-actions">__actions__</div>
+            </div>
+        </div>
+    </div>
+</div>

+ 89 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/default.less

@@ -0,0 +1,89 @@
+@import (reference) '../../../../../../../template/css/_mixins.less';
+
+/**
+ * Is used for inputs and buttons. They should have the same value 
+ * because Input and Button can be positioned in one line.
+ */
+@base-input-box-sizing: border-box;
+
+.bx-def-page-width {
+    width: @bx-page-width;
+}
+
+/*--- Fonts ---*/
+.bx-def-vanilla-html {
+    margin-left: auto;
+    margin-right: auto;
+}
+.bx-layout-column-thin .bx-def-vanilla-html,
+.bx-layout-column-half .bx-def-vanilla-html,
+.bx-layout-column-wide .bx-def-vanilla-html {
+    max-width: none;
+}
+.bx-layout-column-fullwidth .bx-base-text-entity-content.bx-def-vanilla-html {
+    margin-top: 1.5rem;
+    margin-bottom: 1.5rem;
+}
+.bx-def-vanilla-html.bx-def-constraint-pre pre {
+    max-width: none;
+    overflow: auto;
+}
+
+/*--- Unit ---*/
+.bx-def-unit .bx-def-unit-line .bx-def-ui-div:first-child {
+    display: none;
+}
+
+/*--- Alerts ---*/
+.bx-def-unit-alert,
+.bx-def-unit-alert-small,
+.bx-def-unit-alert-middle {
+    font-size: @bx-font-size-small - 2;
+}
+
+/*--- Image/thumbnail/gallery ---*/
+.bx-def-unit .bx-def-unit-info,
+.bx-def-unit .bx-def-unit-img,
+.bx-def-unit img {
+    display: inherit;
+}
+
+/*--- Live Search ---*/
+.bx-def-unit-live-search .bx-def-unit-img:not(.empty) {
+    background-size:cover;
+    background-repeat:no-repeat;
+    background-position:center center;
+}
+.bx-def-unit-live-search .bx-def-unit-img-empty {
+    position: relative;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+}
+.bx-def-unit-live-search .bx-def-unit-img-empty i {
+    font-size: 1.2rem;
+}
+
+/*--- unit sizes ---*/
+.bx-def-gal-img-size {
+    .width(@bx-size-gallery-img-width);
+    .height(@bx-size-gallery-img-height);
+}
+.bx-def-gal-div-size {
+    width: 100%;
+    height: 12.5rem;
+}
+
+/*--- z-index ---*/
+.bx-def-z-index-front {
+    z-index:100;
+}
+.bx-def-z-index-nav {
+    z-index:5000;
+}
+.bx-def-z-index-overlay {
+    z-index:9700;
+}
+.bx-def-z-index-modal {
+    z-index:10000;
+}

+ 370 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/forms.css

@@ -0,0 +1,370 @@
+/*--
+import url(../../../../../../../template/css/forms.css);
+--*/
+
+.bx-form-advanced-wrapper .bx-form-section-wrapper:first-child {
+    margin-top:0;
+}
+
+.bx-form-advanced-wrapper .bx-form-section-divider:first-child {
+    border-top:none; 
+    padding-top:0; 
+}
+
+.bx-form-advanced-wrapper .bx-form-section-divider:first-child .bx-form-section-content {
+    padding-top:0; 
+}
+
+.bx-form-advanced-wrapper .bx-form-section-wrapper:last-child .bx-form-section-content {
+    padding-bottom:0;
+}
+
+.bx-form-advanced-wrapper .bx-form-section-wrapper:first-child .bx-form-row-view-wrapper:first-child {
+    padding-top:0;
+}
+
+.bx-form-input-wrapper-pgc {
+    position: relative;
+}
+
+
+/*-- Section Toggler ---*/
+.bx-form-section-wrapper {
+    position: relative;
+}
+
+.bx-form-section {
+    margin: 0;
+    padding: 0;
+    border: none;
+}
+
+.bx-form-section-header legend {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+    -webkit-flex-wrap: wrap;
+    flex-wrap: wrap;
+
+    line-height: 1.25rem;
+    text-transform: uppercase;
+}
+
+.bx-form-section-header legend u {
+    cursor: pointer;
+}
+
+.bx-form-section-header span {
+    width: 100%;
+    padding-left: 1.25rem;
+
+    white-space: nowrap;
+    text-transform: none;
+    font-size: 0.75rem;
+}
+
+.bx-form-section-hidden .bx-form-section-content {
+    display:none;
+}
+
+.bx-form-collapsable .bx-form-section-toggler {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+    -webkit-justify-content: center;
+    justify-content: center;
+
+    width: 1.25rem;
+    height: 1.25rem;
+
+    text-decoration: none;
+
+    -moz-transform: rotate(90deg);
+    -webkit-transform: rotate(90deg);
+    -ms-transform: rotate(90deg);
+    -o-transform: rotate(90deg);
+
+    -webkit-transition: all 0.5s ease;
+    -moz-transition: all 0.5s ease;
+    -ms-transition: all 0.5s ease;
+    -o-transition: all 0.5s ease;
+
+    line-height: 1.25rem;
+}
+
+.bx-form-collapsed .bx-form-section-toggler {
+    -moz-transform: rotate(0deg);
+    -webkit-transform: rotate(0deg);
+    -ms-transform: rotate(0deg);
+    -o-transform: rotate(0deg);
+}
+
+.bx-form-section-toggler .sys-icon {
+    font-size:0.875rem;
+}
+
+/*--- One Line fields ---*/
+.bx-form-element-wrapper-oneline .bx-form-element {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-flex-flow: row nowrap;
+    flex-flow: row nowrap;
+    -webkit-align-items: flex-start;
+    align-items: flex-start;
+    -webkit-justify-content: flex-start;
+    justify-content: flex-start;
+}
+
+
+/*-- Form field: Password --*/
+.bx-artificer .bx-form-input-wrapper-password > a {
+    position: absolute;
+    z-index: 1000;
+    
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+    -webkit-justify-content: center;
+    justify-content: center;
+
+    top: 0;
+    right: 0;    
+    height: 100%;
+
+    margin: 0 0.5rem;
+}
+.bx-artificer .bx-form-input-password {
+    position: relative;
+
+    -moz-box-sizing: border-box;
+    -ms-box-sizing: border-box;
+    -webkit-box-sizing: border-box;
+    box-sizing: border-box;
+
+    width: 100%;
+    height: 100%;
+
+    margin: 0;
+    padding: 0.5rem 0;
+
+    border: 0;
+    background-color: transparent;
+}
+.bx-artificer .bx-form-input-password:focus {
+    border-color: transparent;
+    outline: none;
+    box-shadow: none;
+}
+
+
+/*-- Form field: Price --*/
+.bx-form-element .bx-form-value .bx-form-input-wrapper-price {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: stretch;
+    align-items: stretch;
+}
+.bx-form-element .bx-form-value .bx-form-input-wrapper-price span {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+
+    width: auto;
+    border-right-width: 0;
+    border-top-right-radius: 0;
+    border-bottom-right-radius: 0;
+}
+.bx-form-element .bx-form-value .bx-form-input-price:not(:first-child) {
+    border-top-left-radius: 0;
+    border-bottom-left-radius: 0;
+}
+
+
+/*-- Form field: Date/Time Pickers --*/
+.bx-form-datepicker-modal {
+    z-index: 10001 !important;
+}
+
+
+/*-- Form field: Switcher --*/
+.bx-switcher-cont input {
+   display: none !important;
+}
+
+
+/*-- Form field: Checkbox/Radio Set --*/
+.bx-form-input-wrapper-checkbox_set label,
+.bx-artificer .bx-form-input-wrapper-radio_set label {
+    margin-left: 0.5rem;
+    vertical-align: text-bottom;
+}
+
+
+/*--- Form field: File ---*/
+.bx-form-input-wrapper-file .bx-btn {
+    display: inline-block;
+    float: none;
+}
+.bx-form-input-file {
+    position: fixed;
+    top: -1000px;
+
+    border: none;
+    background-color: transparent;
+    visibility: hidden;
+}
+
+
+/*--- Form field: Location ---*/
+.bx-form-element .bx-form-value input,
+.bx-form-element .bx-form-value select {
+    display: inline-block;
+}
+.bx-form-element .bx-form-input-location-country,
+.bx-form-element .bx-form-input-location-zip,
+.bx-form-element .bx-form-input-location-state,
+.bx-form-element .bx-form-input-location-city {
+    width:49%;
+}
+.bx-form-element .bx-form-input-location-street {
+    width:83%;
+}
+.bx-form-element .bx-form-input-location-street_number {
+    width:15%;
+}
+.bx-form-element .bx-form-input-location-street_number,
+.bx-form-element .bx-form-input-location-street,
+.bx-form-element .bx-form-input-location-state,
+.bx-form-element .bx-form-input-location-city {
+    margin-bottom: 0.25rem;
+}
+.bx-form-element .bx-form-input-location-street,
+.bx-form-element .bx-form-input-location-state,
+.bx-form-element .bx-form-input-location-country {
+    margin-left: 0.25rem;
+}
+
+.bx-form-element .bx-form-input-location-cont .bx-form-input-location-status-cont {
+    float:none;
+    width:98%;
+    line-height:normal;
+}
+.bx-form-element .bx-form-input-location-status {
+    float:left;
+}
+.bx-form-element .bx-form-input-location-copyright {
+    float:right;
+}
+
+.bx-form-element .bx-form-input-location-auto-cont {
+    display:table;
+}
+.bx-form-element .bx-form-input-location-auto-cont > div {
+    display: table-cell;
+    vertical-align: middle;
+}
+
+
+/*--- Form field: Auto-siggestion ---*/
+
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels) {
+    float: left;
+    padding: 0.125rem 0;
+    height: auto;
+    box-shadow: none;
+    min-height: 2.375rem;
+}
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels) b {
+    display: block;
+    float: left;
+    margin: 0 0.125rem;
+    padding-right: 1.5rem;
+    border-radius: 1.25rem;
+
+    line-height: 2rem;
+    white-space: nowrap;
+    font-weight: normal;    
+    cursor: pointer;
+}
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels) b.val-wo-icon {
+    padding-left: 1.5rem;
+}
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels) b:hover {
+    opacity: 0.7;
+}
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels) b:after {
+    font-family: 'sys-user', 'sys-user-fal';
+    content: "\f00d";    
+    position:absolute;    
+    padding:0 0.5em;
+    margin-left: 0.5em;
+    font-size:0.7em;
+    font-weight:bold;
+}
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels).bx-form-input-disabled b {
+    cursor: default;
+}
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels).bx-form-input-disabled b:after{
+    display: none;
+}
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels) input {
+    float: left;
+    width: auto;
+    margin: 0;
+    padding: 0 0 0 0.5rem;
+    border: 0;
+    box-shadow: none;
+}
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels) .bx-account-unit-wo-info,
+.bx-form-value .bx-form-input-autotoken:not(.bx-form-input-labels) .bx-base-pofile-unit-wo-info {
+    display: inline-block;
+    vertical-align: top;
+
+    margin-right: 0.5rem;
+}
+.sys-labels .bx-form-input-text.bx-form-input-autotoken b:first-child{
+    margin-left: 2px !important;
+}
+
+.sys-labels .bx-form-input-text.bx-form-input-autotoken.bx-form-input-disabled b{
+    height: 2rem;
+    line-height: 2rem;
+}
+
+.bx-form-value .sys-labels .bx-form-input-autotoken.bx-form-input-labels{
+    padding: 0 !important;
+    padding-top: 2px !important;
+}
+.sys-labels .bx-form-input-text.bx-form-input-autotoken
+{
+    min-height: 2.375rem !important;
+}
+.bx-form-value .bx-form-input-labels > a {
+    margin-left: 0.5rem;
+}
+.bx-form-value .bx-form-input-labels > a:first-child {
+    margin-left: 0;
+}
+.select2-container {
+    width:100% !important;
+}
+.bx-form-input-select {
+    -webkit-appearance:none;
+}
+
+/* tiny mce */
+.bx-form-input-wrapper-html .gray-theme.fr-toolbar.fr-top{
+   border-radius: .375rem .375rem 0 0 !important; 
+}
+.bx-form-input-wrapper-html .fr-wrapper{
+    border-radius: 0 0 .375rem .375rem !important; 
+    border-bottom-color: #CCCCCC !important;
+}
+.bx-form-input-wrapper-html .second-toolbar{
+    border-bottom:none !important;
+}
+

+ 106 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/general.css

@@ -0,0 +1,106 @@
+/*--
+import url(../../../../../../../template/css/general.css);
+--*/
+
+
+/*--- Toolbar ---*/
+.bx-toolbar-anim {
+    -webkit-transition: all .25s ease-in-out;
+    -moz-transition: all .25s ease-in-out;
+    -o-transition: all .25s ease-in-out;
+    transition: all .25s ease-in-out
+}
+.bx-toolbar-reset {
+    -webkit-transform: translateY(0);
+    -ms-transform: translateY(0);
+    transform: translateY(0)
+}
+.bx-toolbar-up {
+    -webkit-transform: translateY(-100%);
+    -ms-transform: translateY(-100%);
+    transform: translateY(-100%)
+}
+.bx-toolbar-item.bx-ti-logo a:hover {
+    text-decoration: none;
+}
+.bx-toolbar-item.bx-ti-search .bx-ti-search-button a {
+    text-decoration: none;
+}
+.bx-toolbar-item.bx-ti-search .bx-tis-button-hidden {
+    display: none;
+}
+.bx-toolbar-item.bx-ti-search .bx-tis-box-shown {
+    position: absolute;
+    display: block;
+}
+.bx-toolbar-item.bx-ti-search .bx-form-advanced .bx-loading-ajax {
+    top: 0;
+    max-height: 100%;
+}
+.bx-toolbar-item.bx-ti-search .bx-form-advanced-wrapper .bx-form-section-wrapper:first-child {
+    margin-top: 0;
+}
+.bx-toolbar-item.bx-ti-search .sys-search-results-quick {
+    position: absolute;
+    z-index: 10;
+}
+
+
+/*--- Page Submenu ---*/
+.bx-menu-main-bar-cnt {
+    height: 3.25rem;
+}
+
+.bx-menu-main-bar:not(.bx-menu-more-auto) .bx-menu-main-bar-cnt > div {
+    overflow-x: auto;
+}
+
+.bx-menu-main-bar-gap.bx-menu-main-bar-hidden,
+.bx-menu-main-bar-wrapper.bx-menu-main-bar-hidden,
+.bx-menu-main-bar.bx-menu-main-bar-hidden {
+    display: none;
+}
+
+
+/*--- Profile Avatar ---*/
+.bx-db-content.bx-content-padding-block .bx-profile-avatar-cnt {
+    margin-left: -0.25rem;
+    margin-right: -0.25rem;
+}
+#bx-profile-switcher .bx-pas-list .bx-def-hr:first-child {
+    display: none;
+}
+
+/*--- Profile Stats ---*/
+.bx-menu-vertical-more-less li.bx-psmi-show-more,
+.bx-menu-vertical-more-less li.bx-psmi-show-less {
+    text-transform: uppercase;
+    font-size: 0.875rem;
+}
+
+.bx-menu-vertical-more-less li.bx-psmi-show-more:hover,
+.bx-menu-vertical-more-less li.bx-psmi-show-less:hover {
+    background-color: transparent;
+}
+
+/*--- Author Info ---*/
+.sys-author-profile .bx-menu-custom.bx-menu-custom-hor > li:first-child .bx-base-general-unit-meta-div {
+    display: none;
+}
+
+/*--- Join/Login Forms ---*/
+#sys_account .bx-form-element .bx-form-input-submit.bx-btn,
+#sys-form-login .bx-form-element .bx-form-input-submit.bx-btn {
+    width: 100%;
+    -webkit-justify-content: center;
+    justify-content: center;
+    text-align: center;
+}
+#bx-form-element-submit_text .bx-form-value {
+    text-align: right;
+}
+
+/*--- Page Type: Application ---*/
+.bx-menu-panel-item .bx-profile-avatar .bx-profile-avatar-cnt {
+    min-height: 2.5rem;
+}

+ 213 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/menu.css

@@ -0,0 +1,213 @@
+/*--
+import url(../../../../../../../template/css/menu.css);
+--*/
+
+ul.bx-menu-hor,
+ul.bx-menu-custom-hor,
+ul.bx-menu-notif,
+ul.bx-menu-verlit,
+ul.bx-menu-ver,
+ul.bx-menu-custom-ver,
+ul.bx-menu-main,
+ul.bx-menu-main-submenu,
+ul.bx-menu-toolbar,
+ul.bx-menu-floating-blocks-wide,
+ul.bx-menu-floating-blocks-big,
+ul.bx-menu-floating-blocks-dash,
+ul.bx-menu-floating-blocks,
+ul.bx-menu-inter,
+ul.bx-menu-inter-vert,
+ul.bx-menu-btns-ver,
+ul.bx-menu-btns-hor,
+ul.bx-menu-btns-icon-hor {
+    padding: 0;
+    margin: 0;
+    list-style: none;
+}
+
+li.bx-mi-aux {}
+li.bx-mi-hidden {
+    display: none;
+}
+
+/* --- Vertical, Vertical lite, Custom Vertical Menus ---*/
+.bx-menu-ver li,
+.bx-menu-verlit li,
+.bx-menu-custom-ver li {
+    margin-top: 1px;
+}
+.bx-menu-ver li:first-child,
+.bx-menu-verlit li:first-child,
+.bx-menu-custom-ver li:first-child {
+    margin-top: 0px;
+}
+
+/*--- Vertical, Vertical lite, Custom Vertical Menus (in Popup) ---*/
+.bx-popup .bx-menu-custom-ver li > span {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+    -webkit-justify-content: space-between;
+    justify-content: space-between;
+    width: 100%;
+    padding-right: 1.0rem;
+}
+.bx-popup .bx-menu-custom-ver li > span .bx-menu-addon {
+    padding-right: 0;
+}
+
+/* --- Horizontal, Custom Horizontal Menus --- */
+.bx-menu-custom .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-custom .bx-menu-item,
+.bx-menu-custom .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-custom .bx-menu-item a,
+.bx-menu-custom .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-custom .bx-menu-item > span {
+    border-radius: 0;
+}
+
+/*--- Interactive Menu ---*/
+.bx-menu-inter li.bx-menu-inter-hidden,
+.bx-menu-inter-vert li.bx-menu-inter-hidden {
+    display: none;
+}
+
+/*--- Custom Menu with More Auto ---*/
+.bx-menu-main-submenu.bx-menu-more-auto .bx-menu-item.bx-menu-item-more-auto,
+.bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-item.bx-menu-item-more-auto {
+    display: none;
+}
+.bx-menu-more-auto .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-item a.p-2,
+.bx-menu-more-auto .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-item a.px-2 {
+    padding-left: 1rem;
+    padding-right: 1rem;
+}
+
+/*--- Page Main menu ---*/
+.bx-menu-main .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-custom .bx-menu-item,
+.bx-menu-main .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-custom .bx-menu-item a {
+    border-radius: 0;
+}
+
+/*--- Page Submenu ---*/
+.bx-menu-main-submenu {
+    -webkit-justify-content: center;
+    justify-content: center;
+}
+.bx-menu-main-submenu .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-custom .bx-menu-item > a {
+    width: 100%;
+    padding: 0.5rem 1.0rem; 
+    text-align: left;
+}
+.bx-menu-main-submenu .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-custom .bx-menu-item .bx-mi-underline {
+    display: none;
+}
+
+/*--- Toolbar Menu ---*/
+.bx-menu-toolbar .bx-menu-toolbar-item .bx-menu-item-addon {
+    position: absolute;
+    top: -0.375rem;
+    right: -0.375rem;
+    padding: 0 0.25rem;
+}
+.bx-menu-toolbar .bx-menu-toolbar-item .bx-menu-toolbar-item-unit .bx-base-pofile-unit-online {
+    display: none;
+}
+
+/*--- Account Popup ---*/
+#bx-sliding-menu-account .bx-menu-account-popup .bx-menu-item-addon.bx-def-unit-alert {
+    position: relative;
+    padding: 0 0.25rem;
+}
+#bx-sliding-menu-account .bx-menu-account-popup-profile-switcher-link {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-justify-content: center;
+    justify-content: center;
+}
+
+/*--- Add Popup ---*/
+div.bx-popup-menu-main.sys-add-content ul {
+    flex-direction: column;
+}
+
+/*--- Pannel Menu ---*/
+.bx-menu-panel {}
+
+.bx-main-column.bx-mc-narrowed .bx-menu-panel .bx-menu-panel-item .bx-mpi-toggle-hidden {
+    position: absolute;
+    display: none;
+}
+
+.bx-mc-narrowed .bx-menu-panel li .bx-stl-mil {
+    -webkit-justify-content: center;
+    justify-content: center;
+
+    padding-left: 0;
+    padding-right: 0;
+}
+.bx-mc-narrowed .bx-menu-panel li .bx-stl-mii {
+    width: 100%;
+    text-align: center;
+}
+.bx-mc-narrowed .bx-menu-panel li .bx-stl-mii,
+.bx-mc-narrowed .bx-menu-panel li .bx-stl-mii > * {
+    margin: 0;
+}
+.bx-mc-narrowed .bx-menu-panel .bx-def-thumb-size {
+    width: 2rem;
+    height: 2rem;
+}
+.bx-mc-narrowed .bx-menu-panel .bx-profile-avatar-cnt {
+    -webkit-justify-content: center;
+    justify-content: center;
+}
+
+/*--- Profile Stats/Followings Menu ---*/
+.bx-db-content .bx-profile-stats .bx-profile-avatar-cnt,
+.bx-db-content .bx-profile-stats .bx-menu-vertical-more-less,
+.bx-db-content.bx-content-padding-block .bx-menu-vertical-more-less,
+.bx-db-content.bx-content-padding-block .bx-menu-profile-followings {
+    margin: -0.75rem;
+}
+.bx-main.bx-pt-application .bx-main-column.narrow .bx-menu-vertical-more-less,
+.bx-main.bx-pt-application .bx-main-column.narrow .bx-menu-profile-followings {
+    margin-left: -0.75rem;
+    margin-right: -0.75rem;
+}
+
+/*--- Profile Followings Menu ---*/
+.bx-menu-ver.bx-menu-object-sys_profile_followings li .bx-menu-show {
+    display: none;
+}
+.bx-menu-ver.bx-menu-object-sys_profile_followings li .bx-menu-hide {
+    display: inline;
+}
+.bx-menu-ver.bx-menu-object-sys_profile_followings li.bx-mi-collapsed .bx-menu-show {
+    display: inline;
+}
+.bx-menu-ver.bx-menu-object-sys_profile_followings li.bx-mi-collapsed .bx-menu-hide {
+    display: none;
+}
+.bx-menu-ver.bx-menu-object-sys_profile_followings li.bx-mi-collapsed .bx-menu-item-subitems {
+    display: none;
+}
+
+/*--- Profiles meta menu ---*/
+.sys-action-counter-icon .sys-icon{
+    width: 1rem;
+    height: 1rem;
+    font-size: 0.75rem;
+    line-height: 1.1rem;
+    text-align: center;
+}
+.sys-action-counter-icon .sys-icon.sys-icon-emoji{
+    line-height: 1rem;
+}
+.sys-action-counter-iconset .bx-def-icon-size{
+    width: 1.5rem;
+    height: 1.5rem;
+}
+.sys-action-counter-iconset .bx-base-pofile-unit-wo-info,
+.sys-action-counter-iconset .sys-action-counter-icon
+{
+    margin-left: -.25rem;
+}

+ 54 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/css/score.css

@@ -0,0 +1,54 @@
+/*--
+import url(../../../../../../../template/css/score.css);
+--*/
+
+/*--- Voted By ---*/
+div.bx-score-by-list {}
+div.bx-score-by-list-cnt {
+    max-height: 12.5rem;
+    min-width: 13.75rem;
+    overflow: auto;
+}
+div.bx-score-by-list div.bx-base-pofile-unit {
+    float: none;
+    margin-right: 0px;
+    margin-bottom: 0px;
+}
+div.bx-score-by-item {
+    display: -webkit-flex;
+    display: flex;
+    align-items: center;
+    -webkit-align-items: center;
+    flex-wrap: nowrap;
+    -webkit-flex-wrap: nowrap;
+}
+div.bx-score-by-item .bx-score-bi-user,
+div.bx-score-by-item .bx-score-bi-info,
+div.bx-score-by-item .bx-score-bi-vote {
+    -webkit-flex: 0 1 auto; 
+    -ms-flex: 0 1 auto; 
+    flex: 0 1 auto;
+}
+div.bx-score-by-item .bx-score-bi-info {
+    -webkit-flex-grow: 3; 
+    flex-grow: 3;
+}
+div.bx-score-by-item .bx-score-bi-vote {
+    width: 1.25rem;
+    height: 1.25rem;
+}
+
+
+/*--- Counter Styles ---*/
+.bx-score-counter .bx-score-counter-label .bx-score-counter-text {
+    width: auto;
+    height: auto;
+    margin-left: 0.5rem;
+    margin-right: 0.5rem;
+}
+.bx-base-general-entity-actions .bx-menu-custom-hor.bx-menu-more-auto .bx-score-counter-holder {
+    border-width: 0;
+}
+.bx-base-general-entity-actions .bx-menu-custom-hor.bx-menu-more-auto .bx-score-counter-holder .bx-score-counter-label {
+    padding: 0;
+}

+ 5 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/logo_main.html

@@ -0,0 +1,5 @@
+<a __attrs__>
+    <bx_if:show_title><span>__logo__</span></bx_if:show_title>
+    <bx_if:show_image><img class="__class__" style="__style__" src="__src__" id="bx-logo" alt="__alt__" /></bx_if:show_image>
+    <bx_if:show_image_mini><img class="__class__" style="__style__" src="__src__" id="bx-mark" alt="__alt__" /></bx_if:show_image_mini>
+</a>

+ 6 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_custom_hor_sys_cmts_item_actions.html

@@ -0,0 +1,6 @@
+<ul id="__html_id__" class="bx-menu-custom bx-menu-custom-hor bx-menu-hor-inline<bx_if:show_more_auto_class> bx-menu-more-auto</bx_if:show_more_auto_class> bx-menu-object-__object__ flex justify-start space-x-2 pb-3 md:pb-4">
+    <bx_repeat:menu_items>
+        <li class="bx-menu-item bx-menu-item-__name____class__ bx-stl-mil-sm group">__item__</li>
+    </bx_repeat:menu_items>
+</ul>
+__js_code__

+ 11 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_custom_item_sys_cmts_item_actions.html

@@ -0,0 +1,11 @@
+<span class="__class_wrp__">
+    <a class="__class_link__ flex items-center" href="__link__" onclick="__onclick__" title="__title_attr__"__attrs__>
+        <span class="bx-menu-item-icon bx-stl-mii-sm group-hover:text-gray-700 dark:group-hover:text-gray-300">
+            <bx_include_auto:menu_icon.html />
+        </span>
+        <bx_if:title>
+            <span class="bx-menu-item-title bx-stl-mit">__title__</span>
+        </bx_if:title>
+    </a>
+    <bx_if:addon>__addon__</bx_if:addon>
+</span>

+ 11 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_custom_item_sys_cmts_item_manage.html

@@ -0,0 +1,11 @@
+<span class="__class_wrp__">
+    <a class="__class_link__ flex items-center" href="__link__" onclick="__onclick__" title="__title_attr__"__attrs__>
+        <span class="bx-menu-item-icon bx-stl-mii-sm group-hover:text-gray-700 dark:group-hover:text-gray-300">
+            <bx_include_auto:menu_icon.html />
+        </span>
+        <bx_if:title>
+            <span class="bx-menu-item-title bx-stl-mit">__title__</span>
+        </bx_if:title>
+    </a>
+    <bx_if:addon>__addon__</bx_if:addon>
+</span>

+ 7 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_custom_ver_sys_cmts_item_manage.html

@@ -0,0 +1,7 @@
+<div class="w-full md:w-56 box-border">
+    <ul class="bx-menu-custom bx-menu-custom-ver bx-menu-object-__object__">
+        <bx_repeat:menu_items>
+            <li class="bx-menu-item bx-menu-item-__name____class__ bx-stl-mil-sm group">__item__</li>
+        </bx_repeat:menu_items>
+    </ul>
+</div>

+ 21 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_main.html

@@ -0,0 +1,21 @@
+<ul id="__html_id__" class="bx-menu-main<bx_if:show_more_auto_class> bx-menu-more-auto</bx_if:show_more_auto_class> bx-menu-object-__object__ flex flex-nowrap space-x-2">
+    <bx_repeat:menu_items>
+        <li class="bx-menu-item bx-menu-item-__name__ __class_add__ rounded-md">
+            <a href="__link__" onclick="__onclick__" class="bx-stl-mil group"__attrs__>
+                <div class="bx-menu-item-icon bx-menu-floating-blocks-icon bx-stl-mii group-hover:text-gray-700 dark:group-hover:text-gray-300">
+                    <bx_include_auto:menu_icon.html />
+                </div>
+                <bx_if:title>
+                    <div class="bx-menu-item-title bx-menu-floating-blocks-title bx-stl-mit whitespace-nowrap">__title__</div>
+                </bx_if:title>
+            </a>__popup__
+        </li>
+    </bx_repeat:menu_items>
+</ul>
+<script language="javascript">
+    $(document).ready(function () {
+        // add default class to active menu items
+        $('.bx-menu-floating-blocks > li.bx-menu-tab-active').not('.bx-def-color-bg-active').addClass('bx-def-color-bg-active');
+    });
+</script>
+__js_code__

+ 24 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_profile_followings.html

@@ -0,0 +1,24 @@
+<ul class="bx-menu-profile-followings bx-menu-ver bx-menu-object-__object__ space-y-2">
+    <bx_repeat:menu_items>
+        <li class="bx-menu-item bx-menu-item-__name__ __class_add__">
+            <div class="bx-menu-item-cnt">
+                <div class="bx-menu-item-link bx-stl-mil">
+                    <a class="flex items-center w-full" href="__link__" onclick="__onclick__"__attrs__>
+                        <span class="bx-menu-item-title bx-stl-mit uppercase" sidebar-toggle-item>__title__</span>
+                    </a>
+                    <span class="bx-menu-collapse pl-2" sidebar-toggle-item>
+                        <a href="javascript:void(0)" onclick="javascript:bx_menu_toggle(this, '__object__', '__name__')">
+                            <i class="sys-icon chevron-up bx-menu-hide"></i>
+                            <i class="sys-icon chevron-down bx-menu-show"></i>
+                        </a>
+                    </span>
+                </div>
+                <bx_if:show_subitems>
+                    <div class="bx-menu-item-subitems pt-2">
+                        <ul class="bx-menu-item-subitems bx-menu-pf-subitems bx-menu-ver space-y-2">__subitems__</ul>
+                    </div>
+                </bx_if:show_subitems>
+            </div>
+        </li>
+    </bx_repeat:menu_items>
+</ul>

+ 17 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_profile_followings_subitems.html

@@ -0,0 +1,17 @@
+<bx_repeat:menu_items>
+    <li class="bx-menu-subitem bx-menu-subitem-__name__ __class_add__">
+        <div class="bx-menu-item-cnt bx-stl-mil">
+            <a class="flex items-center pl-2 truncate" href="__link__" onclick="__onclick__"__attrs__>
+                <span class="bx-menu-item-icon bx-stl-mii group-hover:text-gray-700 dark:group-hover:text-gray-300">
+                    <bx_include_auto:menu_icon.html />
+                </span>
+                <span class="bx-menu-item-title bx-stl-mit" sidebar-toggle-item>__title__</span>
+            </a>
+            <bx_if:addon>
+                <div class="bx-menu-addon bx-stl-mia group-hover:text-gray-800 dark:group-hover:text-gray-100">
+                    <div class="bx-menu-addon-cnt bx-def-label menu">__addon__</div>
+                </div>
+            </bx_if:addon>
+        </div>
+    </li>
+</bx_repeat:menu_items>

+ 13 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_toolbar.html

@@ -0,0 +1,13 @@
+<ul class="bx-menu-toolbar bx-menu-object-__object__ flex items-center pr-0 md:pr-2">
+    <bx_repeat:menu_items>
+        <li id="bx-menu-toolbar-item-__name__" class="bx-menu-toolbar-item bx-menu-item-__name__ group relative inline-flex items-center ml-2 first:ml-0 text-gray-600 dark:text-gray-400 hover:text-gray-800 dark:hover:text-gray-200 text-base font-medium leading-6 border border-transparent hover:border-gray-200/50 active:border-gray-300 dark:hover:border-gray-700/50 dark:active:border-gray-700 bg-gray-100 dark:bg-gray-700/50 active:bg-gray-300 dark:active:bg-black/50 hover:bg-gray-200/50 dark:hover:bg-gray-700/50 rounded-full __class_add__">
+            <a href="__link__" onclick="__onclick__" class="inline-block rounded-full __class_add_a__"__attrs__>
+                <bx_if:icon><span class="relative flex items-center justify-center h-8 w-8 md:h-10 md:w-10"><i class="sys-icon __icon__"></i></bx_if:icon>
+                <bx_if:icon-a><i class="sys-icon-a" data-rotate="down" data-icon="__icon-a__" data-color="#fff"></i></bx_if:icon-a>
+                <bx_if:image><img class="" src="__icon_url__" /></bx_if:image>
+                <bx_if:icon-html>__icon__</bx_if:icon-html>
+                <bx_if:unit><div class="bx-menu-toolbar-item-unit">__unit__</div></bx_if:unit><bx_if:addon>__addonf__</bx_if:addon><bx_if:title><span class="bx-menu-toolbar-item-title sr-only">__title__</span></bx_if:title>
+            </a>
+        </li>
+    </bx_repeat:menu_items>
+</ul>

+ 25 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/menu_vertical_more_less.html

@@ -0,0 +1,25 @@
+<ul class="bx-menu-vertical-more-less bx-menu-ver bx-menu-object-__object__ space-y-2">
+    <bx_repeat:menu_items>
+        <li class="bx-menu-item-__name__ __class_add__ rounded-md">
+            <div class="bx-menu-item-cnt bx-stl-mil group">
+                <a class="flex flex-2 items-center truncate" href="__link__" onclick="__onclick__"__attrs__>
+                    <span class="bx-menu-item-icon bx-stl-mii group-hover:text-gray-700 dark:group-hover:text-gray-300">
+                        <bx_include_auto:menu_icon.html />
+                    </span>
+                    <span class="bx-menu-item-title bx-stl-mit" sidebar-toggle-item>__title__</span>
+                </a>
+                <bx_if:addon>
+                    <div class="bx-menu-addon bx-stl-mia flex-none group-hover:text-gray-800 dark:group-hover:text-gray-100" sidebar-toggle-item>
+                        <div class="bx-menu-addon-cnt">__addon__</div>
+                    </div>
+                </bx_if:addon>
+            </div>
+        </li>
+    </bx_repeat:menu_items>
+</ul>
+<script language="javascript">
+    $(document).ready(function () {
+        // add default class to active menu items
+        $('.bx-menu-ver > li.bx-menu-tab-active').not('.bx-def-color-bg-active').addClass('bx-def-color-bg-active');
+    });
+</script>

+ 23 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/profile_avatar.html

@@ -0,0 +1,23 @@
+<div class="bx-profile-avatar text-gray-600 dark:text-gray-300">
+    <div class="bx-profile-avatar-cnt relative flex items-center">
+        <div class="bx-pa-img absolute">__profile_unit__</div>
+        <div class="bx-pa-info w-full" sidebar-toggle-item>
+            <div class="bx-pa-info-cnt flex flex-col justify-center h-10 pl-10 pr-4 box-border">
+                <div class="bx-pai-line text-gray-600 dark:text-gray-300 hover:text-gray-800 dark:hover:text-white font-semibold truncate">
+                    <a href="__profile_url__" title="__profile_title_attr__">__profile_title__</a>
+                </div>
+                <div class="bx-pai-line text-green-600 dark:text-green-400 text-xs font-normal truncate uppercase tracking-wider">
+                    <!--<bx_include_auto:menu_icon.html />--><span>__profile_acl_title__</span>
+                </div>
+            </div>
+        </div>
+        <bx_if:show_switcher_icon>
+            <div class="bx-pa-actions absolute right-0" sidebar-toggle-item>
+                <a class="block" href="__switcher_url__" onclick="__switcher_onclick__">
+                    <div class="bx-pa-action flex items-center justify-center h-8 w-8 bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 rounded-full"><i class="sys-icon arrows-alt-v flex-shrink-0 text-gray-400 group-hover:text-gray-500"></i></div>
+                </a>
+            </div>
+        </bx_if:show_switcher_icon>
+    </div>
+</div>
+__switcher__

+ 21 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/profile_stats.html

@@ -0,0 +1,21 @@
+<div class="bx-profile-stats bx-def-border-radius-block">
+    <div class="bx-profile-stats-cnt bx-def-padding">
+        <div class="bx-ps-user">
+            <div class="bx-profile-avatar-cnt bx-stl-mil-hover group flex items-center px-2 py-1.5 rounded-md cursor-pointer" onclick="window.location.href='__profile_url__'">
+                <div class="bx-pa-img absolute">__profile_unit__</div>
+                <div class="bx-pa-info w-full">
+                    <div class="bx-pa-info-cnt flex flex-col justify-center h-10 pl-10 box-border">
+                        <div class="bx-pai-line text-gray-600 dark:text-gray-300 group-hover:text-gray-800 dark:group-hover:text-white font-semibold truncate">__profile_title__</div>
+                        <div class="bx-pai-line text-green-600 dark:text-green-400 text-xs truncate uppercase tracking-wider font-normal">
+                            <div><!--<bx_include_auto:menu_icon.html />--><span>__profile_acl_title__</span></div>
+                        </div>
+                    </div>
+                </div>
+                <!--<div class="bx-pa-actions">
+                    <div class="bx-pa-action flex items-center justify-center h-5 w-5 ml-2"><i class="sys-icon arrows-alt-v flex-shrink-0 text-gray-400 group-hover:text-gray-500"></i></div>
+                </div>-->    
+            </div>
+            <div class="bx-ps-menu mt-5 pt-3">__menu__</div>
+        </div>
+    </div>
+</div>

+ 118 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/pt_application.html

@@ -0,0 +1,118 @@
+<bx_include_auto:_header.html />
+<div class="bx-main bx-pt-application <bx_injection:injection_main_class />">
+    <bx_injection:top />
+    <!-- BEG: Navigation -->
+    <nav class="fixed z-30 w-full bg-white border-b border-gray-200 dark:bg-gray-800 dark:border-gray-700">
+        <div class="px-3 py-3 lg:px-5 lg:pl-3">
+            <div class="flex items-center justify-between">
+                <div class="flex flex-1 items-center justify-start">
+                    <!-- Mobile: Hamburger -->
+                    <div class="flex-none items-center lg:hidden mr-4 hidden">
+                        <bx_menu:sys_toolbar_site />
+                    </div>
+
+                    <button id="toggleSidebar" aria-expanded="true" aria-controls="sidebar" class="hidden p-2 mr-6 text-gray-600 rounded cursor-pointer lg:inline hover:text-gray-900 hover:bg-gray-100 dark:text-gray-400 dark:hover:text-white dark:hover:bg-gray-700">
+                      <svg class="w-6 h-6" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h6a1 1 0 110 2H4a1 1 0 01-1-1zM3 15a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1z" clip-rule="evenodd"></path></svg>
+                    </button>
+                    <button id="toggleSidebarMobile" aria-expanded="true" aria-controls="sidebar" class="p-2 mr-2 text-gray-600 rounded cursor-pointer lg:hidden hover:text-gray-900 hover:bg-gray-100 focus:bg-gray-100 dark:focus:bg-gray-700 focus:ring-2 focus:ring-gray-100 dark:focus:ring-gray-700 dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white">
+                      <svg id="toggleSidebarMobileHamburger" class="w-6 h-6" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h6a1 1 0 110 2H4a1 1 0 01-1-1zM3 15a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1z" clip-rule="evenodd"></path></svg>
+                      <svg id="toggleSidebarMobileClose" class="hidden w-6 h-6" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg>
+                    </button>
+                    <!-- Logo -->
+                    <div id="bx-logo-container" class="bx-toolbar-item bx-ti-left bx-ti-logo flex-none items-center">
+                        <bx_injection:injection_logo_before />
+                        __main_logo__
+                        <bx_injection:injection_logo_after />
+                    </div>
+                    <!-- Menu -->
+                    <div class="bx-toolbar-item bx-ti-menu flex-2 w-64 ml-4">
+                        <div id="bx-menu-toolbar-1-container" class="bx-toolbar-item bx-ti-menu w-full">
+                            <bx_menu:sys_application />
+                        </div>
+                    </div>
+                    <!-- Search -->
+                    <div class="bx-toolbar-item bx-ti-search flex flex-1 items-center justify-end">
+                        <div class="bx-ti-search-box flex items-start md:min-w-88 mx-4 rounded-md shadow-lg lg:shadow-none hidden lg:block">
+                            <div class="relative w-full">__sys_site_search__</div>
+                        </div>
+                        <div class="bx-ti-search-button relative flex items-center mx-2 text-gray-500 dark:text-gray-300 hover:text-gray-800 dark:hover:text-gray-100 border border-transparent rounded-full bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 block lg:hidden">
+                            <a href="javascript:void(0)" onclick="javascript:bx_site_search_show(this)">
+                                <span class="relative flex items-center justify-center h-8 w-8 md:h-10 md:w-10">
+                                    <i class="sys-icon search"></i>
+                                </span>
+                            </a>
+                        </div>
+                    </div>
+                </div>
+                <div class="flex items-center">
+                    <!-- Members Toolbar -->
+                    <bx_menu:sys_toolbar_member />
+                </div>
+            </div>
+        </div>
+    </nav>
+    <!-- END: Navigation -->
+
+    <div class="bx-main-content flex pt-16 overflow-hidden">
+        <!-- BEG: Sidebar -->
+        <aside id="sidebar" class="bx-main-column narrow fixed top-0 left-0 z-20 flex flex-col flex-shrink-0 hidden w-64 h-full pt-16 duration-75 lg:flex transition-width" aria-label="Sidebar">
+            <div class="bx-mc-border relative flex flex-col flex-1 min-h-0 pt-0 bg-white border-r border-gray-200 dark:bg-gray-800 dark:border-gray-700">
+                <div class="flex flex-col flex-1 py-2 overflow-y-auto">
+                    <div class="bx-mc-cnt flex-1 px-4 space-y-1 bg-white divide-y divide-gray-200 dark:bg-gray-800 dark:divide-gray-700">
+                        <bx_menu:sys_site_panel />
+                    </div>
+                </div>
+                <div class="absolute bottom-0 left-0 justify-center hidden w-full p-4 space-x-4 lg:flex" sidebar-bottom-menu>
+                    <!-- Some button based menu may be here -->
+                </div>
+            </div>
+        </aside>
+        <div class="fixed inset-0 z-10 hidden bg-gray-900/50 dark:bg-gray-900/90" id="sidebarBackdrop"></div>
+        <!-- END: Sidebar -->    
+
+        <!-- BEG: Main Content -->
+        <div id="main-content" class="bx-main-column wide relative w-full h-full overflow-y-auto lg:ml-64">
+            <main>
+                <bx_injection:injection_between_cover_logo />
+                __cover__
+                <bx_injection:injection_between_cover_top_menu />
+                <div id="bx-menu-main-bar-wrapper" class="bx-menu-main-bar-wrapper bg-white dark:bg-gray-900 border-b border-gray-200 dark:border-gray-800 __site_submenu_hidden__">
+                    <div id="bx-menu-main-bar" class="bx-menu-main-bar __site_submenu_class__ mx-auto px-4 sm:px-6 lg:px-8 box-border">
+                        <div class="bx-menu-main-bar-cnt relative -mb-px">
+                            <div class="absolute w-full text-center">
+                                <bx_injection:injection_top_menu_before />
+                                <bx_menu:sys_site_submenu />
+                                <bx_injection:injection_top_menu_after />
+                            </div>
+                        </div>
+                    </div>
+                </div>
+                <bx_injection:injection_between_content_menu />
+                <div id="bx-content-wrapper">
+                    __informer__
+                    <div class="bx-page-wrapper mx-auto px-3 md:px-4 lg:px-6 box-border">
+                        <div id="bx-content-container" class="bx-content-container">
+                            <div id="bx-content-main" class="bx-content-main my-2 lg:my-3">
+                                <bx_injection:injection_content_before />
+                                __page_main_code__
+                                <bx_injection:injection_content_after />
+                                <bx_injection:banner_bottom />
+                            </div> <!-- #bx-content-main -->
+                            <bx_injection:injection_between_content_footer />
+                        </div> <!-- #bx-content-container -->
+                    </div> <!-- .bx-page-wrapper -->
+                </div> <!-- #bx-content-wrapper -->
+            </main>
+            <footer class="p-4 m-4 bg-white rounded-lg shadow md:flex md:items-center md:justify-between md:p-6 xl:p-8 dark:bg-gray-800">
+                <bx_injection:injection_footer_before />
+                <div id="bx-menu-bottom">
+                    <bx_menu:sys_footer />
+                </div>
+                <bx_injection:injection_footer_after />
+            </footer>
+        </div>
+        <!-- END: Main Content -->
+    </div>
+    <bx_menu:sys_site_action />
+</div> <!-- .bx-main -->
+<bx_include_auto:_footer.html />

+ 10 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/score_counter_label.html

@@ -0,0 +1,10 @@
+<span class="sys-action-counter-label __style_prefix__-counter-label flex items-center text-xs font-medium">
+    <bx_if:show_icon>
+        <span class="sys-action-counter-icon __style_prefix__-counter-icon relative flex items-center justify-center ring-1  h-6 w-6 ring-white dark:ring-gray-700 h-6 w-6 bg-gray-200 dark:bg-gray-700 rounded-full">
+            <i class="sys-icon __name__"></i>
+        </span>
+    </bx_if:show_icon>
+    <bx_if:show_text>
+        <span class="sys-action-counter-text __style_prefix__-counter-text ml-1.5">__text__</span>
+    </bx_if:show_text>
+</span>

+ 216 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplFunctions.php

@@ -0,0 +1,216 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    UnaTemplate UNA Template Classes
+ * @{
+ */
+
+bx_import('BxDolDesigns');
+
+class BxTemplFunctions extends BxBaseFunctions
+{
+    public function __construct($oTemplate = null)
+    {
+        parent::__construct($oTemplate);
+    }
+
+    function getMainLogo($aParams = array())
+    {
+        $oDesigns = BxDolDesigns::getInstance();
+
+        $sTitle = getParam('site_title');
+        $bTitle = !empty($sTitle);
+
+        $sAlt = $oDesigns->getSiteLogoAlt();
+        if(empty($sAlt) && $bTitle)
+            $sAlt = $sTitle;
+        $sAltAttr = bx_html_attribute($sAlt, BX_ESCAPE_STR_QUOTE);
+
+        $bTmplVarsShowTitle = $bTitle;
+        $aTmplVarsShowImage = [];
+        $aTmplVarsShowImageMini = [];
+
+        //--- Logo image
+        $bDefault = false;
+        if(($sFileUrl = $this->getMainLogoUrl()) !== false || ($bDefault = (!$bTitle && ($sFileUrl = $this->_oTemplate->getImageUrl('logo-generic.svg')) != ''))) {
+            $bTmplVarsShowTitle = false;
+            $aTmplVarsShowImage = [
+                'class' => '',
+                'style' => '',
+                'src' => $sFileUrl,
+                'alt' => $sAltAttr
+            ];
+
+            $iLogoHeight = (int)$oDesigns->getSiteLogoHeight();
+            $sLogoHeight = $iLogoHeight > 0 ? 'height:' . round($iLogoHeight/16, 3) . 'rem;' : '';
+
+            //--- Default Logo
+            if($bDefault) {
+                list($iDlWidth, $iDlHeight) = bx_get_svg_image_size($sFileUrl);
+                $fDlAspectRation = $iDlHeight ? $iDlWidth / $iDlHeight : BxDolDesigns::$fLogoAspectRatioDefault;
+
+                $iLogoWidth = $iLogoHeight * $fDlAspectRation;
+            }
+            else
+                $iLogoWidth = $oDesigns->getSiteLogoWidth();
+
+            $sLogoWidth = $iLogoWidth > 0 ? 'width:' . round($iLogoWidth/16, 3) . 'rem;' : '';
+
+            $aTmplVarsShowImage['style'] = $sLogoWidth . ' ' . $sLogoHeight;
+        }
+
+        //--- Mark image
+        $bDefault = false;
+        if(($sFileUrl = $this->getMainMarkUrl()) !== false || ($bDefault = (!$bTitle && ($sFileUrl = $this->_oTemplate->getImageUrl('mark-generic.svg')) != ''))) {
+            $aTmplVarsShowImage['class'] = 'hidden lg:block';
+
+            $aTmplVarsShowImageMini = [
+                'class' => 'block lg:hidden',
+                'style' => '',
+                'src' => $sFileUrl,
+                'alt' => $sAltAttr
+            ];
+
+            $iMarkHeight = (int)$oDesigns->getSiteMarkHeight();
+            $sMarkHeight = $iMarkHeight > 0 ? 'height:' . round($iMarkHeight/16, 3) . 'rem;' : '';
+
+            //--- Default Mark
+            if($bDefault) {
+                list($iDmWidth, $iDmHeight) = bx_get_svg_image_size($sFileUrl);
+                $fDmAspectRation = $iDmHeight ? $iDmWidth / $iDmHeight : BxDolDesigns::$fMarkAspectRatioDefault;
+                    
+                $iMarkWidth = $iMarkHeight * $fDmAspectRation;
+            }
+            else
+                $iMarkWidth = $oDesigns->getSiteMarkWidth();
+
+            $sMarkWidth = $iMarkWidth > 0 ? 'width:' . round($iMarkWidth/16, 3) . 'rem;' : '';
+
+            $aTmplVarsShowImageMini['style'] = $sMarkWidth . ' ' . $sMarkHeight;
+        }
+
+        $aAttrs = [
+            'href' => BX_DOL_URL_ROOT, 
+            'title' => $sAltAttr
+        ];
+        if(!empty($aParams['attrs']) && is_array($aParams['attrs']))
+            $aAttrs = array_merge($aAttrs, $aParams['attrs']);
+
+        return $this->_oTemplate->parseHtmlByName('logo_main.html', [
+            'attrs' => bx_convert_array2attrs($aAttrs),
+            'bx_if:show_title' => [
+                'condition' => $bTmplVarsShowTitle,
+                'content' => [
+                    'logo' => $sTitle,
+                ]
+            ],
+            'bx_if:show_image' => [
+                'condition' => !empty($aTmplVarsShowImage),
+                'content' => $aTmplVarsShowImage
+            ],
+            'bx_if:show_image_mini' => [
+                'condition' => !empty($aTmplVarsShowImageMini),
+                'content' => $aTmplVarsShowImageMini
+            ]
+        ]);
+    }
+
+    public function TemplPageAddComponent($sKey)
+    {
+        $mixedResult = false;
+
+        switch($sKey) {
+            case 'sys_header_width':
+                $mixedResult = '';
+                if(getParam('bx_artificer_header_stretched') != 'on')
+                    $mixedResult = parent::TemplPageAddComponent($sKey);
+                break;
+
+            case 'sys_site_search':
+                $oSearch = new BxTemplSearch();
+                $oSearch->setLiveSearch(true);
+                $mixedResult = $oSearch->getForm(BX_DB_PADDING_DEF, false, true) . $oSearch->getResultsContainer();
+                break;
+
+            default:
+                $mixedResult = parent::TemplPageAddComponent($sKey);
+        }
+
+        return $mixedResult;
+    }    
+
+    protected function getInjFooterPopupMenus() 
+    {
+        $sContent = '';
+
+        $oSearch = new BxTemplSearch();
+        $oSearch->setLiveSearch(true);
+        $sContent .= $this->_oTemplate->parsePageByName('search.html', array(
+            'search_form' => $oSearch->getForm(BX_DB_CONTENT_ONLY),
+            'results' => $oSearch->getResultsContainer(),
+        ));
+
+        if(isLogged())
+            $sContent .= $this->_oTemplate->getMenu('sys_add_content');
+
+        return $sContent;
+    }
+
+    protected function getInjFooterSidebarSite() 
+    {
+        $oSearch = new BxTemplSearch();
+        $oSearch->setLiveSearch(true);
+        $sSearch = $oSearch->getForm(BX_DB_CONTENT_ONLY);
+
+        $sLogoUrl = $this->getMainLogoUrl();
+        $bLogoUrl = !empty($sLogoUrl);
+
+        $sLogoText = BxDolDesigns::getInstance()->getSiteLogoAlt();
+        if(empty($sLogoText))
+            $sLogoText = getParam('site_title');
+
+        return $this->_oTemplate->parsePageByName('sidebar_site.html', array(
+            'bx_if:show_logo_image' => array(
+                'condition' => $bLogoUrl,
+                'content' => array(
+                    'logo_url' => $sLogoUrl,
+                    'logo_text' => $sLogoText
+                )
+            ),
+            'bx_if:show_logo_text' => array(
+                'condition' => !$bLogoUrl,
+                'content' => array(
+                    'logo_text' => $sLogoText
+                )
+            ),
+            'search_form' => $sSearch,
+        ));
+    }
+
+    protected function getInjFooterSidebarAccount() 
+    {
+        $oProfile = BxDolProfile::getInstance();
+        if(!$oProfile)
+            return '';
+
+        $sSwitcher = '';
+        if(($aSwitcher = bx_srv('system', 'account_profile_switcher', [], 'TemplServiceProfiles')) !== false) 
+            $sSwitcher = $aSwitcher['content'];
+
+        return $this->_oTemplate->parsePageByName('sidebar_account.html', [
+            'active_profile' => $oProfile->getUnit(),
+            'menu_notifications' => BxDolMenu::getObjectInstance('sys_account_notifications')->getCode(),
+            'profile_switcher' => $sSwitcher,
+            'bx_if:multiple_profiles_mode' => [
+                'condition' => BxDolAccount::isAllowedCreateMultiple($oProfile->id()),
+                'content' => [
+                    'url_switch_profile' => BxDolPermalinks::getInstance()->permalink('page.php?i=account-profile-switcher')
+        	]
+            ]
+        ]);
+    }
+}
+
+/** @} */

+ 38 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplMenuAccountNotifications.php

@@ -0,0 +1,38 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    UnaTemplate UNA Template Classes
+ * @{
+ */
+
+/**
+ * @see BxDolMenu
+ */
+class BxTemplMenuAccountNotifications extends BxBaseMenuAccountNotifications
+{
+    public function __construct ($aObject, $oTemplate = false)
+    {
+        parent::__construct ($aObject, $oTemplate);
+    }
+
+    protected function _getMenuItem ($a)
+    {
+        $a = parent::_getMenuItem ($a);
+        if($a === false)
+            return $a;
+
+        $a['class_add_a'] = '';
+        switch ($a['name']) {
+            case 'add-content':
+                if(isset($a['onclick']))
+                    $a['onclick'] = str_replace(['bx_menu_slide_inline', 'bx-menu-toolbar-item-add-content'], ['bx_artificer_add_content_panel', 'bx-menu-toolbar-item-account'], $a['onclick']);
+                break;
+        }
+
+        return $a;
+    }
+}
+
+/** @} */

+ 74 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplMenuSite.php

@@ -0,0 +1,74 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    UnaTemplate UNA Template Classes
+ * @{
+ */
+
+/**
+ * @see BxTemplMenuMoreAuto
+ */
+class BxTemplMenuSite extends BxTemplMenuMoreAuto
+{
+    protected $_sModule;
+    protected $_oModule;
+
+    protected $_bSiteMenu;
+    protected $_bSiteMenuInPanel;
+    protected $_bApplicationMenu;
+
+    protected $_aHideFromSiteMenu;
+    protected $_aHideFromSiteMenuInPanel;
+
+    public function __construct ($aObject, $oTemplate = false)
+    {
+        parent::__construct ($aObject, $oTemplate);
+
+        $this->_sModule = 'bx_artificer';
+        $this->_oModule = BxDolModule::getInstance($this->_sModule);
+        $this->_aHideFromSiteMenu = ['search'];
+        $this->_aHideFromSiteMenuInPanel = ['more-auto'];
+
+        $this->_sJsClassMoreAuto = 'BxArtificerMenuMoreAuto';
+        $this->_bSiteMenu = $this->_sObject == 'sys_site';
+        $this->_bSiteMenuInPanel = $this->_sObject == 'sys_site_in_panel';
+        $this->_bApplicationMenu = $this->_sObject == 'sys_application';
+    }
+
+    public function getCode ()
+    {
+        $sTemplate = 'menu_main_popup.html';
+        $sClass = 'bx-popup-menu-main';
+        $sStyle = 'display:none';
+        if($this->_bSiteMenu || $this->_bSiteMenuInPanel || $this->_bApplicationMenu) {
+            $sTemplate = 'menu_main_inline.html';
+            $sClass = 'bx-inline-smenu-main';
+            $sStyle = '';
+        }
+
+        $this->_oModule->_oTemplate->addJs(array('menu_site.js'));
+        return $this->_oModule->_oTemplate->parseHtmlByName($sTemplate, array(
+            'id' => 'bx-sliding-menu-' . $this->_sObject,
+            'class' => $sClass . ' ' . str_replace('_', '-', $this->_sObject),
+            'style' => $sStyle,
+            'content' => parent::getCode()
+        ));
+    }
+
+    protected function _getMenuItem ($a)
+    {
+    	//--- Hide '[Search]' from Site Menu
+        if( $this->_bSiteMenu && in_array($a['name'], $this->_aHideFromSiteMenu))
+            return false;
+
+        //--- Hide '[More Auto]' from Site Menu in Panel
+        if( $this->_bSiteMenuInPanel && in_array($a['name'], $this->_aHideFromSiteMenuInPanel))
+            return false;
+
+        return parent::_getMenuItem ($a);
+    }
+}
+
+/** @} */

+ 66 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/data/template/system/sidebar_account.html

@@ -0,0 +1,66 @@
+<div class="bx-sidebar bx-sidebar-account bx-def-z-index-modal fixed flex justify-end inset-0" role="dialog" aria-modal="true">
+    <div class="bx-sidebar-account-bg fixed inset-0 bg-gray-600 opacity-75" aria-hidden="true"></div>
+    <div class="flex-shrink-0 w-14" aria-hidden="true"></div>
+    <div class="bx-sidebar-cnt relative flex-1 flex flex-col max-w-xs w-full py-4 bg-white dark:bg-gray-900">
+        <div class="absolute top-0 left-0 -ml-12 pt-2">
+            <button type="button" class="bx-sidebar-account-close ml-1 flex items-center justify-center h-10 w-10 rounded-full focus:outline-none focus:ring-2 focus:ring-inset focus:ring-white">
+                <span class="sr-only"><bx_text:_bx_artificer_txt_close_sidebar /></span>
+                <svg class="h-6 w-6 text-white" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true">
+                  <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12" />
+                </svg>
+            </button>
+        </div>
+        <div class="bx-sb-profile flex-shrink-0 px-4 pb-4 flex justify-between items-center">__active_profile__
+            <div class="bx-sb-theme-switcher">
+                <a class="hover:no-underline" href="javascript:" onclick="bx_artificer_get_color_scheme_menu()"><i class="sys-icon desktop"></i></a>
+            </div>
+			<div id="bx-sb-theme-switcher-menu" class="bx-popup-wrapper bx-popup-responsive bx-popup-trans-wrapper box-border"  style="display: none">
+				<div class="bx-popup-gap mx-4 my-px">
+        			<div class="bx-popup bx-popup-trans bx-popup-border bx-popup-color-bg">
+            			<div class="bx-popup-content overflow-hidden">
+							<div class="bx-menu-item-more-popup w-full md:w-56 box-border">		
+								<ul class="bx-menu-custom bx-menu-custom-ver bx-menu-submenu-more-auto bx-clearfix">
+									<li class="bx-menu-item bx-menu-item-albums-home  rounded-md bx-def-color-bg-hl-hover" >
+										<a href="javascript:" onclick="bx_artificer_set_color_scheme(1)" class="bx-stl-mil group">
+											<div class="bx-menu-item-icon bx-menu-floating-blocks-icon bx-stl-mii group-hover:text-gray-700 dark:group-hover:text-gray-300">
+												<i class="sys-icon sun"></i>
+											</div>
+											<div class="bx-menu-item-title bx-menu-floating-blocks-title bx-stl-mit whitespace-nowrap"><bx_text:_bx_artificer_txt_color_scheme_light /></div>
+										</a>
+									</li>
+									<li class="bx-menu-item bx-menu-item-groups-home  rounded-md bx-def-color-bg-hl-hover">
+										<a href="javascript:" onclick="bx_artificer_set_color_scheme(2)" onclick="" class="bx-stl-mil group">
+											<div class="bx-menu-item-icon bx-menu-floating-blocks-icon bx-stl-mii group-hover:text-gray-700 dark:group-hover:text-gray-300">
+												<i class="sys-icon moon"></i>
+											</div>
+											<div class="bx-menu-item-title bx-menu-floating-blocks-title bx-stl-mit whitespace-nowrap"><bx_text:_bx_artificer_txt_color_scheme_dark /></div>
+										</a>
+									</li>
+									<li class="bx-menu-item bx-menu-item-files-home  rounded-md bx-def-color-bg-hl-hover" >
+										<a href="javascript:" onclick="bx_artificer_set_color_scheme(0)" onclick="" class="bx-stl-mil group">
+											<div class="bx-menu-item-icon bx-menu-floating-blocks-icon bx-stl-mii group-hover:text-gray-700 dark:group-hover:text-gray-300">
+												<i class="sys-icon desktop"></i>
+											</div>
+											<div class="bx-menu-item-title bx-menu-floating-blocks-title bx-stl-mit whitespace-nowrap"><bx_text:_bx_artificer_txt_color_scheme_system /></div>
+										</a>
+									</li>
+								</ul>
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+        </div>
+        <hr class="bx-def-hr" />
+        <div class="bx-sb-menu flex-1 my-2">__menu_notifications__</div>
+        <div class="bx-sb-profile-switcher flex-auto overflow-y-auto">__profile_switcher__</div>
+        <bx_if:multiple_profiles_mode>
+            <hr class="bx-def-hr" />
+            <div class="bx-sb-profile-create flex-1 mt-4 mx-4">
+                <a class="bx-btn w-full" href="__url_switch_profile__">
+                    <i class="sys-icon plus"></i><span class="pl-2"><bx_text:_sys_txt_my_profiles /></span>
+                </a>
+            </div>
+        </bx_if:multiple_profiles_mode>
+    </div>
+</div>

+ 68 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/config.php

@@ -0,0 +1,68 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    Artificer Artificer template
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'type' => BX_DOL_MODULE_TYPE_TEMPLATE,
+    'name' => 'bx_artificer',
+    'title' => 'Artificer',
+    'note' => 'Design template',
+    'version' => '13.0.3',
+    'vendor' => 'Boonex',
+    'help_url' => 'http://feed.una.io/?section={module_name}',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/artificer/',
+    'home_uri' => 'artificer',
+
+    'db_prefix' => 'bx_artificer_',
+    'class_prefix' => 'BxArtificer',
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Boonex Artificer Template',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 1,
+        'update_languages' => 1,
+    	'clear_db_cache' => 1
+    ),
+    'uninstall' => array (
+        'execute_sql' => 1,
+        'update_languages' => 1,
+    	'clear_db_cache' => 1
+    ),
+    'enable' => array(
+        'execute_sql' => 1
+    ),
+    'disable' => array(
+        'execute_sql' => 1
+    ),
+
+    /**
+     * Dependencies Section
+     */
+    'dependencies' => array(),
+);
+
+/** @} */

+ 48 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/langs/en.xml

@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources name="en" flag="gb" title="English">
+    <string name="_bx_artificer_wgt_cpt"><![CDATA[Artificer]]></string>
+
+    <!-- Settings -->
+    <string name="_bx_artificer_stg_cpt_type"><![CDATA[Artificer]]></string>
+
+    <string name="_bx_artificer_stg_cpt_category_system"><![CDATA[General]]></string>
+    <string name="_bx_artificer_stg_cpt_option_switcher_name"><![CDATA[Name in Template Switcher]]></string>	
+    <string name="_bx_artificer_stg_cpt_option_page_width"><![CDATA[Page Width]]></string>
+    <string name="_bx_artificer_stg_cpt_option_header_stretched"><![CDATA[Stretched Header]]></string>
+
+    <string name="_bx_artificer_stg_cpt_category_styles_custom"><![CDATA[Custom Styles]]></string>
+    <string name="_bx_artificer_stg_cpt_option_styles_custom"><![CDATA[Custom Styles]]></string>
+
+    <!-- Pages -->
+    <string name="_bx_artificer_page_block_title_splash"><![CDATA[Splash]]></string>
+    <string name="_bx_artificer_page_block_title_splash_lite"><![CDATA[Explore]]></string>
+
+    <!-- Menus -->
+    <string name="_bx_artificer_lmi_cpt_styles"><![CDATA[Styles]]></string>
+
+    <string name="_bx_artificer_menu_template_title_sidebar_site"><![CDATA[Site Sidebar Navigation]]></string>
+    <string name="_bx_artificer_menu_title_sidebar_site"><![CDATA[Site Sidebar Navigation]]></string>
+
+    <!-- Other -->
+    <string name="_bx_artificer_txt_close_sidebar"><![CDATA[Close sidebar]]></string>
+
+    <string name="_bx_artificer_txt_color_scheme_light"><![CDATA[Light]]></string>
+    <string name="_bx_artificer_txt_color_scheme_dark"><![CDATA[Dark]]></string>
+    <string name="_bx_artificer_txt_color_scheme_system"><![CDATA[System]]></string>
+
+    <string name="_bx_artificer_txt_splash_welcome_l1"><![CDATA[Welcome to]]></string>
+    <string name="_bx_artificer_txt_splash_welcome_l2"><![CDATA[the community]]></string>
+    <string name="_bx_artificer_txt_splash_welcome_l3"><![CDATA[The best social media network for people to connect, collaborate, share content and inspire each other.]]></string>
+    <string name="_bx_artificer_txt_splash_welcome_l4"><![CDATA[Powered by <a class="font-medium underline" href="https://una.io">UNA Community Management System</a>.]]></string>
+    <string name="_bx_artificer_txt_splash_welcome_a1"><![CDATA[Create Account]]></string>
+    <string name="_bx_artificer_txt_splash_welcome_a2"><![CDATA[Login]]></string>
+    <string name="_bx_artificer_txt_splash_stats_l1"><![CDATA[We rise by helping others]]></string>
+    <string name="_bx_artificer_txt_splash_stats_l2"><![CDATA[Make new friends, follow interesting creators and stay in touch with your community.]]></string>
+    <string name="_bx_artificer_txt_splash_stats_c1"><![CDATA[members]]></string>
+    <string name="_bx_artificer_txt_splash_stats_c2"><![CDATA[posts]]></string>
+    <string name="_bx_artificer_txt_splash_stats_c3"><![CDATA[comments]]></string>
+    <string name="_bx_artificer_txt_splash_login_title"><![CDATA[Log in to your account]]></string>
+    <string name="_bx_artificer_txt_splash_login_join"><![CDATA[Create New Account]]></string>
+    <string name="_bx_artificer_txt_splash_login_agreement"><![CDATA[By logging in, you agree to our <a href="{0}" class="font-medium text-gray-900 dark:text-white hover:underline">Terms of use</a> and <a href="{1}" class="dark:text-white font-medium text-gray-900 hover:underline">Privacy policy</a>.]]></string>
+    
+</resources>

+ 22 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/sql/disable.sql

@@ -0,0 +1,22 @@
+SET @sName = 'bx_artificer';
+
+
+-- PAGES
+DELETE FROM `sys_objects_page` WHERE `module` = @sName;
+DELETE FROM `sys_pages_blocks` WHERE `module` = @sName; -- OR `object` IN ();
+
+
+-- MENU: dropdown menu
+DELETE FROM `sys_menu_templates` WHERE `template`='menu_sidebar_site.html' AND `title`='_bx_artificer_menu_template_title_sidebar_site';
+
+DELETE FROM `sys_objects_menu` WHERE `object`='bx_artificer_sidebar_site';
+
+
+-- ALERTS
+SET @iHandler := (SELECT `id` FROM `sys_alerts_handlers` WHERE `name` = @sName LIMIT 1);
+DELETE FROM `sys_alerts` WHERE `handler_id` = @iHandler;
+DELETE FROM `sys_alerts_handlers` WHERE `id` = @iHandler;
+
+
+-- INJECTIONS
+DELETE FROM `sys_injections` WHERE `name` LIKE 'bx_artificer_%';

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 6 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/sql/enable.sql


+ 48 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/install/sql/install.sql

@@ -0,0 +1,48 @@
+SET @sName = 'bx_artificer';
+
+
+-- SETTINGS
+INSERT INTO `sys_options_types`(`group`, `name`, `caption`, `icon`, `order`) VALUES 
+('templates', @sName, '_bx_artificer_stg_cpt_type', 'bx_artificer@modules/boonex/artificer/|std-icon.svg', 2);
+SET @iTypeId = LAST_INSERT_ID();
+
+-- SETTINGS: Artificer template System
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_system'), '_bx_artificer_stg_cpt_category_system', 10);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_switcher_title'), '_bx_artificer_stg_cpt_option_switcher_name', 'Artificer', 'digit', '', '', '', 1), 
+(@iCategoryId, CONCAT(@sName, '_page_width'), '_bx_artificer_stg_cpt_option_page_width', '1280', 'digit', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_header_stretched'), '_bx_artificer_stg_cpt_option_header_stretched', '', 'checkbox', '', '', '', 3);
+
+-- SETTINGS: Artificer template Custom Styles
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_custom'), '_bx_artificer_stg_cpt_category_styles_custom', 20);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_styles_custom'), '_bx_artificer_stg_cpt_option_styles_custom', '', 'text', '', '', '', 1);
+
+-- SETTINGS: Artificer template Site Logo
+SET @iSystemCategoryId = (SELECT IFNULL(`id`, @iCategoryId) FROM `sys_options_categories` WHERE `name`='system' LIMIT 1);
+SET @iSystemCategoryOrder = (SELECT IFNULL(MAX(`order`), 0) FROM `sys_options` WHERE `category_id`=@iSystemCategoryId LIMIT 1);
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iSystemCategoryId, CONCAT(@sName, '_site_logo'), '', '0', 'digit', '', '', '', @iSystemCategoryOrder + 1),
+(@iSystemCategoryId, CONCAT(@sName, '_site_mark'), '', '0', 'digit', '', '', '', @iSystemCategoryOrder + 2),
+(@iSystemCategoryId, CONCAT(@sName, '_site_logo_alt'), '', '', 'text', '', '', '', @iSystemCategoryOrder + 3),
+(@iSystemCategoryId, CONCAT(@sName, '_site_logo_aspect_ratio'), '', '', 'digit', '', '', '', @iSystemCategoryOrder + 4),
+(@iSystemCategoryId, CONCAT(@sName, '_site_mark_aspect_ratio'), '', '', 'digit', '', '', '', @iSystemCategoryOrder + 5);
+
+
+-- STUDIO PAGE & WIDGET
+INSERT INTO `sys_std_pages`(`index`, `name`, `header`, `caption`, `icon`) VALUES
+(3, @sName, '', '', 'bx_artificer@modules/boonex/artificer/|std-icon.svg');
+SET @iPageId = LAST_INSERT_ID();
+
+SET @iParentPageId = (SELECT `id` FROM `sys_std_pages` WHERE `name`='home');
+SET @iParentPageOrder = (SELECT MAX(`order`) FROM `sys_std_pages_widgets` WHERE `page_id`=@iParentPageId);
+INSERT INTO `sys_std_widgets`(`page_id`, `module`, `type`, `url`, `click`, `icon`, `caption`, `cnt_notices`, `cnt_actions`) VALUES
+(@iPageId, @sName, 'appearance', CONCAT('{url_studio}design.php?name=', @sName), '', 'bx_artificer@modules/boonex/artificer/|std-icon.svg', '_bx_artificer_wgt_cpt', '', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:11:"get_actions";s:6:"params";a:0:{}s:5:"class";s:18:"TemplStudioDesigns";}');
+INSERT INTO `sys_std_pages_widgets`(`page_id`, `widget_id`, `order`) VALUES
+(@iParentPageId, LAST_INSERT_ID(), @iParentPageOrder + 1);

+ 130 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/js/sidebar.js

@@ -0,0 +1,130 @@
+const isSidebarExpanded = toggleSidebarEl => {
+    return toggleSidebarEl.getAttribute('aria-expanded') === 'true' ? true : false;
+}
+
+const toggleSidebar = (sidebarEl, expand, setExpanded = false) => {
+    const bottomMenuEl = document.querySelector('[sidebar-bottom-menu]');
+    const mainContentEl = document.getElementById('main-content');
+    if (expand) {
+        sidebarEl.classList.remove('bx-mc-narrowed');
+        sidebarEl.classList.add('bx-mc-expanded');
+        sidebarEl.classList.add('lg:w-64');
+        sidebarEl.classList.remove('lg:w-16');
+        mainContentEl.classList.add('lg:ml-64');
+        mainContentEl.classList.remove('lg:ml-16');
+
+        document.querySelectorAll('#' + sidebarEl.getAttribute('id') + ' [sidebar-toggle-item]').forEach(sidebarToggleEl => {
+            sidebarToggleEl.classList.remove('lg:hidden');
+            sidebarToggleEl.classList.remove('lg:absolute');
+            sidebarToggleEl.classList.remove('bx-mpi-toggle-hidden');
+        });
+
+        // toggle multi level menu item initial and full text
+        document.querySelectorAll('#' + sidebar.getAttribute('id') + ' ul > li > ul > li > a').forEach(e => {
+            e.classList.add('pl-11');
+            e.classList.remove('px-4');
+            e.childNodes[0].classList.remove('hidden');
+            e.childNodes[1].classList.add('hidden');
+        });
+
+        bottomMenuEl.classList.remove('flex-col', 'space-y-4', 'p-2');
+        bottomMenuEl.classList.add('space-x-4', 'p-4');
+        setExpanded ? toggleSidebarEl.setAttribute('aria-expanded', 'true') : null;
+    } 
+    else {
+        sidebarEl.classList.add('bx-mc-narrowed');
+        sidebarEl.classList.remove('bx-mc-expanded');
+        sidebarEl.classList.remove('lg:w-64');
+        sidebarEl.classList.add('lg:w-16');
+        mainContentEl.classList.remove('lg:ml-64');
+        mainContentEl.classList.add('lg:ml-16');
+        document.querySelectorAll('#' + sidebarEl.getAttribute('id') + ' [sidebar-toggle-item]').forEach(sidebarToggleEl => {
+            sidebarToggleEl.classList.add('lg:hidden');
+            sidebarToggleEl.classList.add('lg:absolute');
+            sidebarToggleEl.classList.add('bx-mpi-toggle-hidden');
+        });
+
+        // toggle multi level menu item initial and full text
+        document.querySelectorAll('#' + sidebar.getAttribute('id') + ' ul > li > ul > li > a').forEach(e => {
+            e.classList.remove('pl-11');
+            e.classList.add('px-4');
+            e.childNodes[0].classList.add('hidden');
+            e.childNodes[1].classList.remove('hidden');
+        });
+
+        bottomMenuEl.classList.add('flex-col', 'space-y-4', 'p-2');
+        bottomMenuEl.classList.remove('space-x-4', 'p-4');
+        setExpanded ? toggleSidebarEl.setAttribute('aria-expanded', 'false') : null;
+    }
+}
+
+const toggleSidebarMobile = (sidebar, sidebarBackdrop, toggleSidebarMobileHamburger, toggleSidebarMobileClose) => {
+    sidebar.classList.remove('bx-mc-narrowed');
+    sidebar.classList.add('bx-mc-expanded');
+    sidebar.classList.toggle('hidden');
+    sidebarBackdrop.classList.toggle('hidden');
+    toggleSidebarMobileHamburger.classList.toggle('hidden');
+    toggleSidebarMobileClose.classList.toggle('hidden');
+}
+
+const sidebar = document.getElementById('sidebar');
+const toggleSidebarEl = document.getElementById('toggleSidebar');
+if(sidebar) {
+    document.querySelectorAll('#' + sidebar.getAttribute('id') + ' ul > li > ul > li > a').forEach(e => {
+        var fullText = e.textContent;
+        var firstLetter = fullText.substring(0, 1);
+
+        var fullTextEl = document.createElement('span');
+        var firstLetterEl = document.createElement('span');
+        firstLetterEl.classList.add('hidden');
+        fullTextEl.textContent = fullText;
+        firstLetterEl.textContent = firstLetter;
+
+        e.textContent = '';
+        e.appendChild(fullTextEl);
+        e.appendChild(firstLetterEl);
+    });
+
+    // initialize sidebar
+    if (localStorage.getItem('sidebarExpanded') !== null) {
+        if (localStorage.getItem('sidebarExpanded') === 'true') {
+            toggleSidebar(sidebar, true, false);
+        } else {
+            toggleSidebar(sidebar, false, true);
+        }
+    }
+
+    if(toggleSidebarEl) {
+        toggleSidebarEl.addEventListener('click', () => {
+            localStorage.setItem('sidebarExpanded', !isSidebarExpanded(toggleSidebarEl));
+            toggleSidebar(sidebar, !isSidebarExpanded(toggleSidebarEl), true);
+        });
+
+        sidebar.addEventListener('mouseenter', () => {
+            if (!isSidebarExpanded(toggleSidebarEl)) {
+                toggleSidebar(sidebar, true);
+            }
+        });
+
+        sidebar.addEventListener('mouseleave', () => {
+            if (!isSidebarExpanded(toggleSidebarEl)) {
+                toggleSidebar(sidebar, false);
+            }
+        });
+    }    
+}
+
+const toggleSidebarMobileEl = document.getElementById('toggleSidebarMobile');
+if(toggleSidebarMobileEl) {
+    const sidebarBackdrop = document.getElementById('sidebarBackdrop');
+    const toggleSidebarMobileHamburger = document.getElementById('toggleSidebarMobileHamburger');
+    const toggleSidebarMobileClose = document.getElementById('toggleSidebarMobileClose');
+
+    toggleSidebarMobileEl.addEventListener('click', () => {
+        toggleSidebarMobile(sidebar, sidebarBackdrop, toggleSidebarMobileHamburger, toggleSidebarMobileClose);
+    });
+
+    sidebarBackdrop.addEventListener('click', () => {
+        toggleSidebarMobile(sidebar, sidebarBackdrop, toggleSidebarMobileHamburger, toggleSidebarMobileClose);
+    });
+}

+ 64 - 0
modules/boonex/artificer/updates/13.0.2_13.0.3/source/js/utils.js

@@ -0,0 +1,64 @@
+//for custom JS
+$(document).ready(function() {
+    bx_artificer_set_color_scheme_icon();
+});
+
+function bx_artificer_set_color_scheme_html(){
+    if (localStorage.theme === 'dark' || (!('theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches)) 
+        $('html').addClass('dark')
+    else
+        $('html').removeClass('dark')
+}
+
+function bx_artificer_set_color_scheme_icon(){
+    if (localStorage.theme === 'dark' || (!('theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
+        $('.bx-sb-theme-switcher .sys-icon').addClass('moon').removeClass('sun');
+    }
+
+    if (localStorage.theme === 'sun' || (!('theme' in localStorage) && !window.matchMedia('(prefers-color-scheme: dark)').matches)) {
+        $('.bx-sb-theme-switcher .sys-icon').addClass('sun').removeClass('moon');
+    }
+}
+
+window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => {
+    bx_artificer_set_color_scheme_icon();
+    bx_artificer_set_color_scheme_html();
+});
+
+function bx_artificer_set_color_scheme(m){
+    switch (m) {
+      case 0:
+        localStorage.removeItem('theme');
+        break;
+      case 1:
+        localStorage.theme = 'sun'
+        break;
+      case 2:
+        localStorage.theme = 'dark'
+        break;
+    }
+    bx_artificer_set_color_scheme_icon();
+    bx_artificer_set_color_scheme_html();
+}
+
+function bx_artificer_get_color_scheme_menu(){
+    $('#bx-sb-theme-switcher-menu').dolPopup({
+        pointer: {
+            el: $('.bx-sb-theme-switcher')
+        },
+        moveToDocRoot: true,
+        cssClass: 'bx-popup-menu'
+    });
+}
+
+function bx_artificer_add_content_panel(sMenu, e, sPosition) {
+    $('.bx-popup-applied:visible').dolPopupHide();
+
+    var sSidebar = 'account';
+    if(bx_sidebar_active(sSidebar))
+        bx_sidebar_toggle(sSidebar);
+
+    bx_menu_popup_inline(sMenu, e, {});
+}
+
+bx_artificer_set_color_scheme_html();

+ 51 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/install/config.php

@@ -0,0 +1,51 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'title' => 'Decorous',
+    'version_from' => '13.0.2',
+    'version_to' => '13.0.3',
+    'vendor' => 'BoonEx',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/decorous/updates/update_13.0.2_13.0.3/',
+    'home_uri' => 'decorous_update_1302_1303',
+
+    'module_dir' => 'boonex/decorous/',
+    'module_uri' => 'decorous',
+
+    'db_prefix' => 'bx_decorous_',
+    'class_prefix' => 'BxDecorous',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 1,
+        'update_files' => 1,
+        'update_languages' => 1,
+        'clear_db_cache' => 1,
+    ),
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Boonex Decorous Template',
+
+    /**
+     * Files Section
+     */
+    'delete_files' => array(),
+);

+ 26 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/install/installer.php

@@ -0,0 +1,26 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ */
+
+class BxDecorousUpdater extends BxDolStudioUpdater
+{
+    function __construct($aConfig)
+    {
+        parent::__construct($aConfig);
+    }
+
+    public function update($aParams)
+    {
+        $aResult = parent::update($aParams);
+        if(!$aResult['result'])
+            return $aResult;
+
+        $oCacheUtilities = BxDolCacheUtilities::getInstance();
+        $oCacheUtilities->clear('css');
+        $oCacheUtilities->clear('template');
+
+        return $aResult;
+    }
+}

+ 5 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/install/langs/en.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources name="en" flag="gb" title="English">
+	<string_del name="_bx_decorous_stg_cpt_option_site_logo_width"><![CDATA[Logo width]]></string_del>
+	<string_del name="_bx_decorous_stg_cpt_option_site_logo_height"><![CDATA[Logo height]]></string_del>
+</resources>

+ 15 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/install/sql/enable.sql

@@ -0,0 +1,15 @@
+SET @sName = 'bx_decorous';
+
+
+-- ALERTS
+SET @iHandler = (SELECT `id` FROM `sys_alerts_handlers` WHERE `name`=@sName LIMIT 1);
+DELETE FROM `sys_alerts_handlers` WHERE `name`=@sName LIMIT 1;
+DELETE FROM `sys_alerts` WHERE `unit`='system' AND `action` IN ('save_setting', 'change_logo') AND `handler_id`=@iHandler;
+
+INSERT INTO `sys_alerts_handlers` (`name`, `class`, `file`, `service_call`) VALUES 
+(@sName, 'BxDecorousAlertsResponse', 'modules/boonex/decorous/classes/BxDecorousAlertsResponse.php', '');
+SET @iHandler := LAST_INSERT_ID();
+
+INSERT INTO `sys_alerts` (`unit`, `action`, `handler_id`) VALUES
+('system', 'save_setting', @iHandler),
+('system', 'change_logo', @iHandler);

+ 13 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/install/sql/install.sql

@@ -0,0 +1,13 @@
+SET @sName = 'bx_decorous';
+
+
+-- SETTINGS
+SET @iSystemCategoryId = (SELECT `id` FROM `sys_options_categories` WHERE `name`='system' LIMIT 1);
+SET @iSystemCategoryOrder = (SELECT IFNULL(MAX(`order`), 0) FROM `sys_options` WHERE `category_id`=@iSystemCategoryId LIMIT 1);
+
+DELETE FROM `sys_options` WHERE `name`='bx_decorous_site_logo_aspect_ratio';
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iSystemCategoryId, CONCAT(@sName, '_site_logo_aspect_ratio'), '', '', 'digit', '', '', '', @iSystemCategoryOrder + 1);
+
+DELETE FROM `sys_options` WHERE `name` IN ('bx_decorous_site_logo_width', 'bx_decorous_site_logo_height');
+DELETE FROM `sys_options_mixes2options` WHERE `option` IN ('bx_decorous_site_logo_width', 'bx_decorous_site_logo_height');

+ 22 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/classes/BxDecorousAlertsResponse.php

@@ -0,0 +1,22 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    Decorous Decorous template
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+class BxDecorousAlertsResponse extends BxBaseModTemplateAlertsResponse
+{
+    function __construct()
+    {
+        $this->_sModule = 'bx_decorous';
+
+        parent::__construct();
+    }
+}
+
+/** @} */

+ 32 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/_header_js_toolbar.html

@@ -0,0 +1,32 @@
+<script type="text/javascript" language="javascript">
+    $(document).ready(function () {
+		if (aDolOptions.sys_fixed_header !== undefined && aDolOptions.sys_fixed_header != 'on'){
+			var mq = bx_check_mq();
+			if (mq != 'mobile')
+				$("#bx-logo-container").prependTo("#bx-sliding-menu-sys_site .bx-sliding-menu-main-cnt");
+
+			if(mq == 'mobile') {
+				// hide toolbar on scrolldown, show - on scroll up
+				new Headroom($('#bx-toolbar').get(0), {
+					tolerance: {
+						down: 10,
+						up: 20
+					},
+					offset: 200,
+					classes: {
+						initial: "bx-toolbar-anim",
+						pinned: "bx-toolbar-reset",
+						unpinned: "bx-toolbar-up"
+					},
+					onUnpin: function() {
+						bx_menu_slide_close_all_opened();
+
+						var sidebar = $('.cd-side-nav');
+						if(sidebar.hasClass('nav-is-visible'))
+							sidebar.toggleClass('nav-is-visible');
+					}
+				}).init();
+			}
+		}
+    });
+</script>

+ 929 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/css/default.less

@@ -0,0 +1,929 @@
+@import (reference) '../../../../../../../template/css/_mixins.less';
+
+.@{bx-root-class-name}.bx-def-font {
+    font-family:@bx-font-family;
+    font-weight:400; /* 26.13.13: prev val 300 */
+    .font-size(@bx-font-size-default);
+    color:@bx-font-color-default;
+}
+
+.@{bx-root-class-name}.bx-def-color-bg-page {
+    .background-color (@bx-color-page);
+}
+
+.@{bx-root-class-name}.bx-def-image-bg-page {
+    background-position: center center;
+    background-image: @bx-image-bg-page;
+    background-repeat: @bx-image-bg-page-repeat;
+    background-attachment: @bx-image-bg-page-attachment;
+    background-size: @bx-image-bg-page-size;
+}
+
+.@{bx-root-class-name} {
+    @import '../../../../../../../template/css/default.less';
+
+    /**
+     * Is used for inputs and buttons. They should have the same value 
+     * because Input and Button can be positioned in one line.
+     */
+    @base-input-box-sizing: border-box;
+
+
+    /* height */
+    .bx-header {
+        height: @bx-height-header !important;
+    }
+    .bx-main-content .bx-main-column.narrow .bx-menu-toolbar-padding,
+    .cd-main-content .content-wrapper {
+        padding-top: @bx-height-header;
+    }
+
+
+    /* content paddings */
+    .bx-content-padding-header {
+        padding: @bx-content-padding-header;
+    }
+    .bx-content-padding-footer {
+        padding: @bx-content-padding-footer;
+    }
+    .bx-content-padding-block {
+        padding: @bx-content-padding-block;
+    }
+
+
+    /* shadow */
+    .bx-shadow-header {
+        -webkit-box-shadow: @bx-shadow-header;
+        -moz-box-shadow: @bx-shadow-header;
+        box-shadow: @bx-shadow-header;
+    }
+    .bx-shadow-footer {
+        -webkit-box-shadow: @bx-shadow-footer;
+        -moz-box-shadow: @bx-shadow-footer;
+        box-shadow: @bx-shadow-footer;
+    }
+    .bx-shadow-block {
+        -webkit-box-shadow: @bx-shadow-block;
+        -moz-box-shadow: @bx-shadow-block;
+        box-shadow: @bx-shadow-block;
+    }
+    .bx-def-box {
+        -webkit-box-shadow: @bx-shadow-card;
+        -moz-box-shadow: @bx-shadow-card;
+        box-shadow: @bx-shadow-card;
+    }
+    .bx-def-box:hover {
+        -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
+        -moz-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
+        box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
+    }
+    .bx-popup-applied {
+        border-radius: @bx-border-radius-popup;
+        background-clip: padding-box;
+    }
+    .bx-popup-applied:not(.bx-popup-chain),
+    .bx-popup-applied.bx-popup-chain .bx-popup-chain-item {
+        -webkit-box-shadow: @bx-shadow-popup;
+        -moz-box-shadow: @bx-shadow-popup;
+        box-shadow: @bx-shadow-popup;
+    }
+    .bx-popup-applied.bx-popup-chain .bx-popup-chain-item a:hover {
+        background-color: @bx-color-hl;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper {
+        -webkit-box-shadow: @bx-shadow-menu-slide;
+        -moz-box-shadow: @bx-shadow-menu-slide;
+        box-shadow: @bx-shadow-menu-slide;
+    }
+    .bx-btn {
+        -webkit-box-shadow: @bx-shadow-button;
+        -moz-box-shadow: @bx-shadow-button;
+        box-shadow: @bx-shadow-button;
+    }
+    .bx-btn.bx-btn-small {
+        -webkit-box-shadow: @bx-shadow-button-small;
+        -moz-box-shadow: @bx-shadow-button-small;
+        box-shadow: @bx-shadow-button-small;
+    }
+
+
+    /* background images */
+    .bx-def-image-bg-header,
+    .bx-def-image-bg-footer,
+    .bx-def-image-bg-block,
+    .bx-def-box,
+    .bx-popup-color-bg,
+    .bx-popup-wrapper.bx-popup-slide-wrapper,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main,
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main,
+    #bx-sliding-menu-account.bx-sliding-menu-main,
+    .bx-menu-main-bar-wrapper {
+        background-position: center center;
+    }
+    .bx-def-image-bg-header {
+        background-image: @bx-image-bg-header;
+        background-repeat: @bx-image-bg-header-repeat;
+        background-attachment: @bx-image-bg-header-attachment;
+        background-size: @bx-image-bg-header-size;
+    }
+    .bx-def-image-bg-footer {
+        background-image: @bx-image-bg-footer;
+        background-repeat: @bx-image-bg-footer-repeat;
+        background-attachment: @bx-image-bg-footer-attachment;
+        background-size: @bx-image-bg-footer-size;
+    }
+    
+    .bx-def-image-bg-block {
+        background-image: @bx-image-bg-block;
+        background-repeat: @bx-image-bg-block-repeat;
+        background-attachment: @bx-image-bg-block-attachment;
+        background-size: @bx-image-bg-block-size;
+    }
+    .bx-def-box {
+        background-image: @bx-image-bg-box;
+        background-repeat: @bx-image-bg-box-repeat;
+        background-attachment: @bx-image-bg-box-attachment;
+        background-size: @bx-image-bg-box-size;
+    }
+
+    /* body */
+    a {
+        color: @bx-color-link-body; 
+        transition: color .3s;
+    }
+    a:hover {
+        color: @bx-color-link-body-hover; 
+    }
+    .sys-icon:not(.sys-colored):not(.bx-vote-star),
+    .sys-icon-a:not(.sys-colored):not(.bx-vote-star) {
+        color: inherit; 
+    }
+    a:hover > .sys-icon:not(.sys-colored),
+    a:hover > .sys-icon-a:not(.sys-colored) {
+        color: @bx-color-icon-body-hover; 
+    }
+    .sys-icon-a i {
+        .background-color (@bx-color-icon-body) !important;
+        color: @bx-color-icon-body;
+    }
+    a:hover > .sys-icon-a i {
+        .background-color (@bx-color-icon-body-hover) !important;
+        color: @bx-color-icon-body-hover;
+    }
+
+    /* header */
+    .bx-header.bx-def-color-bg-header {
+        .background-color (@bx-color-header);
+    }
+    .bx-header.bx-def-border-header {
+        border-bottom-width: @bx-border-width-header;
+        border-bottom-style: @bx-border-type;
+        border-bottom-color: @bx-color-border-header;
+    }
+    .bx-header a {
+        color: @bx-color-link-header; 
+    }
+    .bx-header a:hover {
+        color: @bx-color-link-header-hover;
+    }
+    .bx-header .sys-icon:not(.sys-colored),
+    .bx-header .sys-icon-a:not(.sys-colored) {
+        color: @bx-color-icon-header; 
+    }
+    .bx-header .cd-nav-trigger span, 
+    .bx-header .cd-nav-trigger span::before, 
+    .bx-header .cd-nav-trigger span::after,
+    .bx-header .cd-nav-trigger.nav-is-visible span::before, 
+    .bx-header .cd-nav-trigger.nav-is-visible span::after {
+        background: @bx-color-icon-header;
+    }
+    .bx-header a:hover .sys-icon,
+    .bx-header a:hover .sys-icon-a {
+        color: @bx-color-icon-header-hover; 
+    }
+    .bx-header .cd-nav-trigger.nav-is-visible:hover span {
+      background: rgba(255, 255, 255, 0);
+    }
+    .bx-header .cd-nav-trigger:hover span, 
+    .bx-header .cd-nav-trigger:hover span::before, 
+    .bx-header .cd-nav-trigger:hover span::after,
+    .bx-header .cd-nav-trigger.nav-is-visible:hover span::before, 
+    .bx-header .cd-nav-trigger.nav-is-visible:hover span::after {
+        background: @bx-color-icon-header-hover;
+    }
+    .bx-header .sys-icon-a:not(.sys-colored) i {
+        .background-color (@bx-color-icon-header) !important;
+        color: @bx-color-icon-header;
+    }
+    .bx-header a:hover .sys-icon-a i {
+        .background-color (@bx-color-icon-header-hover) !important;
+        color: @bx-color-icon-header-hover;
+    }
+
+    /* footer */
+    .bx-footer-wrapper.bx-def-color-bg-footer {
+        .background-color (@bx-color-footer);    
+    }
+    .bx-footer-wrapper.bx-def-border-footer {
+        border-top-width: @bx-border-width-footer;
+        border-top-style: @bx-border-type;
+        border-top-color: @bx-color-border-footer;
+    }
+
+    .bx-footer {
+        color: @bx-font-color-footer;
+    }
+    .bx-footer a {
+        color: @bx-color-link-footer; 
+    }
+    .bx-footer a:hover {
+        color: @bx-color-link-footer-hover; 
+    }
+    .bx-footer .sys-icon,
+    .bx-footer .sys-icon-a {
+        color: @bx-color-icon-footer; 
+    }
+    .bx-footer a:hover .sys-icon,
+    .bx-footer a:hover .sys-icon-a {
+        color: @bx-color-icon-footer-hover; 
+    }
+    .bx-footer .sys-icon-a i {
+        .background-color (@bx-color-icon-footer) !important;
+        color: @bx-color-icon-footer;
+    }
+    .bx-footer a:hover .sys-icon-a i {
+        .background-color (@bx-color-icon-footer-hover) !important;
+        color: @bx-color-icon-footer-hover;
+    }
+
+    /* fonts */
+    .bx-def-font-inputs {
+        font-family: @bx-font-family-form-input;
+        font-size: @bx-font-size-form-input;
+        color: @bx-font-color-form-input;
+    }
+
+    h1,
+    .bx-def-font-h1 {
+        font-weight: @bx-font-weight-h1;
+        color: @bx-font-color-default-h1;
+    }
+    h1.bx-def-font-grayed,
+    h1 .bx-def-font-grayed,
+    .bx-def-font-h1.bx-def-font-grayed,
+    .bx-def-font-h1 .bx-def-font-grayed {
+        color: @bx-font-color-grayed-h1;
+    }
+    h1.bx-def-font-contrasted,
+    h1.bx-def-font-contrasted:after,
+    h1.bx-def-font-contrasted:before,
+    h1 .bx-def-font-contrasted,
+    h1 .bx-def-font-contrasted:after,
+    h1 .bx-def-font-contrasted:before,
+    .bx-def-font-h1.bx-def-font-contrasted,
+    .bx-def-font-h1.bx-def-font-contrasted:after,
+    .bx-def-font-h1.bx-def-font-contrasted:before,
+    .bx-def-font-h1 .bx-def-font-contrasted,
+    .bx-def-font-h1 .bx-def-font-contrasted:after,
+    .bx-def-font-h1 .bx-def-font-contrasted:before {
+        color: @bx-font-color-contrasted-h1;
+    }
+    h1 a,
+    .bx-def-font-h1 a,
+    a.bx-def-font-h1 {
+        color: @bx-font-color-link-h1;
+    }
+    h1 a:hover,
+    .bx-def-font-h1 a:hover,
+    a.bx-def-font-h1:hover {
+        color: @bx-font-color-link-h1-hover;
+    }
+
+    h2,
+    .bx-def-font-h2 {
+        font-weight: @bx-font-weight-h2;
+        color: @bx-font-color-default-h2;
+    }
+    h2.bx-def-font-grayed,
+    h2 .bx-def-font-grayed,
+    .bx-def-font-h2.bx-def-font-grayed,
+    .bx-def-font-h2 .bx-def-font-grayed {
+        color: @bx-font-color-grayed-h2;
+    }
+    h2.bx-def-font-contrasted,
+    h2.bx-def-font-contrasted:after,
+    h2.bx-def-font-contrasted:before,
+    h2 .bx-def-font-contrasted,
+    h2 .bx-def-font-contrasted:after,
+    h2 .bx-def-font-contrasted:before,
+    .bx-def-font-h2.bx-def-font-contrasted,
+    .bx-def-font-h2.bx-def-font-contrasted:after,
+    .bx-def-font-h2.bx-def-font-contrasted:before,
+    .bx-def-font-h2 .bx-def-font-contrasted,
+    .bx-def-font-h2 .bx-def-font-contrasted:after,
+    .bx-def-font-h2 .bx-def-font-contrasted:before {
+        color: @bx-font-color-contrasted-h2;
+    }
+    h2 a,
+    .bx-def-font-h2 a,
+    a.bx-def-font-h2 {
+        color: @bx-font-color-link-h2;
+    }
+    h2 a:hover,
+    .bx-def-font-h2 a:hover,
+    a.bx-def-font-h2:hover {
+        color: @bx-font-color-link-h2-hover;
+    }
+
+    h3,
+    .bx-def-font-h3 {
+        font-weight: @bx-font-weight-h3;
+        color: @bx-font-color-default-h3;
+    }
+    h3.bx-def-font-grayed,
+    h3 .bx-def-font-grayed,
+    .bx-def-font-h3.bx-def-font-grayed,
+    .bx-def-font-h3 .bx-def-font-grayed {
+        color: @bx-font-color-grayed-h3;
+    }
+    h3.bx-def-font-contrasted,
+    h3.bx-def-font-contrasted:after,
+    h3.bx-def-font-contrasted:before,
+    h3 .bx-def-font-contrasted,
+    h3 .bx-def-font-contrasted:after,
+    h3 .bx-def-font-contrasted:before,
+    .bx-def-font-h3.bx-def-font-contrasted,
+    .bx-def-font-h3.bx-def-font-contrasted:after,
+    .bx-def-font-h3.bx-def-font-contrasted:before,
+    .bx-def-font-h3 .bx-def-font-contrasted,
+    .bx-def-font-h3 .bx-def-font-contrasted:after,
+    .bx-def-font-h3 .bx-def-font-contrasted:before {
+        color: @bx-font-color-contrasted-h3;
+    }
+    h3 a,
+    .bx-def-font-h3 a,
+    a.bx-def-font-h3 {
+        color: @bx-font-color-link-h3;
+    }
+    h3 a:hover,
+    .bx-def-font-h3 a:hover,
+    a.bx-def-font-h3:hover {
+        color: @bx-font-color-link-h3-hover;
+    }
+
+    /* cover */
+    .bx-menu-toolbar-padding .bx-def-cover-color-bg {
+        background-color: @bx-color-cover;
+    }
+
+    .bx-menu-toolbar-padding .bx-cover-wrapper {
+        border-width: @bx-border-width-cover;
+        border-style: @bx-border-type;
+        border-color: @bx-color-border-cover;
+
+        border-radius: @bx-border-radius-cover;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-cover;
+        -moz-box-shadow: @bx-shadow-cover;
+        box-shadow: @bx-shadow-cover;
+    }
+    .bx-cover-wrapper .bx-cover {
+        min-height: @bx-height-cover;
+    }
+    .bx-cover-wrapper .bx-cover,
+    .bx-cover-wrapper .bx-cover .bx-cover-actions .bx-menu-btns-hor {
+        text-align: @bx-text-align-cover;
+    }
+    .bx-cover-wrapper .bx-cover.bx-def-padding {
+        padding: @bx-content-padding-cover;
+    }
+    .bx-cover-wrapper .bx-cover .bx-cover-image img {
+        border-width: @bx-border-width-cover-icon;
+        border-style: @bx-border-type;
+        border-color: @bx-color-border-cover-icon;
+
+        border-radius: @bx-border-radius-cover-icon;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-cover-icon;
+        -moz-box-shadow: @bx-shadow-cover-icon;
+        box-shadow: @bx-shadow-cover-icon;
+    }
+
+    .bx-cover-wrapper .bx-cover .bx-cover-title {
+        text-shadow: @bx-shadow-text-cover;
+
+        font-family: @bx-font-family-cover;
+    }
+    .bx-cover-wrapper .bx-cover .bx-cover-title,
+    .bx-cover-wrapper .bx-cover .bx-cover-title .bx-def-font-contrasted,
+    .bx-cover-wrapper .bx-cover .bx-cover-title .bx-def-font-contrasted:after,
+    .bx-cover-wrapper .bx-cover .bx-cover-title .bx-def-font-contrasted:before {
+        color: @bx-color-font-cover;
+    }
+    .bx-cover-wrapper .bx-cover .bx-cover-title,
+    .bx-cover-wrapper .bx-cover .bx-cover-title.bx-def-font-h1 {
+        font-size: @bx-font-size-cover;
+        font-weight: @bx-font-weight-cover;
+    }
+
+
+    /* block */
+    .bx-def-border-block {
+        border-width: @bx-border-width-block;
+        border-style: @bx-border-type;
+        border-color: @bx-color-border-block;
+
+        border-radius: @bx-border-radius-block;
+        background-clip: padding-box;
+    }
+    .bx-def-border-radius-block {
+        border-radius: @bx-border-radius-block;
+        background-clip: padding-box;
+    }
+    .bx-db-header {
+        padding: @bx-title-padding-block;
+
+        border-width: @bx-border-width-block-title;
+        border-style: solid;
+        border-color: @bx-color-border-block-title;
+
+        border-radius: @bx-border-radius-block-title;
+    }
+    .bx-def-color-bg-block .bx-db-header,
+    .bx-def-image-bg-block .bx-db-header {
+        background-color: @bx-color-block-title;
+    }
+    .bx-db-header .bx-db-title {
+        line-height: 1.2;
+        font-family: @bx-font-family-block-title;
+        font-size: @bx-font-size-block-title;
+        font-weight: @bx-font-weight-block-title;
+        color: @bx-color-font-block-title;
+    }
+    .bx-db-divider {
+        border-top:@bx-height-block-title-div @bx-border-type @bx-color-block-title-div;
+    }
+
+
+    /* box */
+    .bx-def-box {
+        border-width: @bx-border-width-box;
+        border-style: @bx-border-type;
+        border-color: @bx-color-border-box;
+    }
+    .bx-def-box.bx-def-padding {
+        padding: @bx-content-padding-card;
+    }
+    .bx-def-box.bx-def-color-bg-box {
+        .background-color (@bx-color-box);
+    }
+    .bx-def-box.bx-def-color-bg-box-active,
+    .bx-def-box.bx-def-color-bg-box-hover:hover {
+        .background-color (@bx-color-box-hover);
+    }
+    .bx-def-box-round-corners,
+    .bx-def-box.bx-def-round-corners {
+        border-radius: @bx-border-radius-box;
+        background-clip: padding-box;
+    }
+    .bx-def-box-round-corners-int {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr @bx-border-radius-box-ibr @bx-border-radius-box-ibl;
+        background-clip: padding-box;
+    }
+    .bx-def-box-round-corners-int-top {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr 0 0;
+        background-clip: padding-box;
+    }
+    .bx-def-box-round-corners-int-bottom {
+        border-radius: 0 0 @bx-border-radius-box-ibr @bx-border-radius-box-ibl;
+        background-clip: padding-box;
+    }
+    .bx-base-pofile-unit-with-cover .bx-def-round-corners .bx-base-pofile-unit-cover {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr 0 0;
+    }
+    .bx-base-text-unit.bx-base-text-unit-ext.bx-def-round-corners img.bx-base-text-unit-cover.bx-def-round-corners,
+    .bx-base-text-unit.bx-base-text-unit-ext .bx-def-round-corners img.bx-base-text-unit-cover.bx-def-round-corners {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr 0 0;
+    }
+    .bx-base-text-unit.bx-base-text-unit-gallery.bx-def-round-corners .bx-base-text-unit-thumb.bx-def-round-corners,
+    .bx-base-text-unit.bx-base-text-unit-gallery .bx-def-round-corners .bx-base-text-unit-thumb.bx-def-round-corners {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr 0 0;
+    }
+
+    /* popup */
+    .bx-popup-border {
+        border-width: @bx-border-width-popup;
+        border-style: solid;
+        border-color: @bx-color-border-popup;
+
+        border-radius: @bx-border-radius-popup;
+        background-clip: padding-box;
+    }
+    .bx-popup-color-bg {
+        background-color: @bx-color-popup;
+
+        background-image: @bx-image-bg-popup;
+        background-repeat: @bx-image-bg-popup-repeat;
+        background-attachment: @bx-image-bg-popup-attachment;
+        background-size: @bx-image-bg-popup-size;
+    }
+    .bx-popup-content-indent {
+        padding: @bx-content-padding-popup;
+    }
+    .bx-popup-header {
+        padding: @bx-title-padding-popup;
+    }
+    .bx-popup-header .bx-popup-element-close {
+        margin: @bx-title-padding-popup;
+    }
+    .bx-popup-header-color-bg {
+        background-color: @bx-color-popup-title;
+    }
+    .bx-popup-header h2,
+    .bx-popup-header .bx-popup-element-close {
+        line-height: 1.8rem;
+    }
+    .bx-popup-header h2 {
+        font-family: @bx-font-family-popup-title;
+        font-size: @bx-font-size-popup-title;
+    }
+    .bx-popup-header h2,
+    .bx-popup-header.bx-def-font-contrasted h2,
+    .bx-popup-header .bx-popup-element-close,
+    .bx-popup-header.bx-def-font-contrasted .bx-popup-element-close,
+    .bx-popup-header .bx-popup-element-close .sys-icon,
+    .bx-popup-header.bx-def-font-contrasted .bx-popup-element-close .sys-icon {
+        color: @bx-color-font-popup-title;
+    }
+
+    /* slide menu */
+    .bx-popup-wrapper.bx-popup-slide-wrapper {
+        border-width: @bx-border-width-menu-slide;
+        border-style: solid;
+        border-color: @bx-color-border-menu-slide;
+
+        .background-color (@bx-color-menu-slide);
+
+        background-image: @bx-image-bg-menu-slide;
+        background-repeat: @bx-image-bg-menu-slide-repeat;
+        background-attachment: @bx-image-bg-menu-slide-attachment;
+        background-size: @bx-image-bg-menu-slide-size;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper.bx-def-padding {
+        padding: @bx-content-padding-menu-slide;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper li a {
+        text-shadow: @bx-shadow-font-menu-slide;
+
+        font-family: @bx-font-family-menu-slide;
+        font-size: @bx-font-size-menu-slide;
+        font-weight: @bx-font-weight-menu-slide;
+        color: @bx-font-color-menu-slide;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper li a:hover {
+        color: @bx-font-color-menu-slide-hover;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper li.bx-menu-tab-active a,
+    .bx-popup-wrapper.bx-popup-slide-wrapper li.bx-menu-inter-act {
+        color: @bx-font-color-menu-slide-active;
+    }
+
+    /* main menu */
+    .cd-main-content .cd-side-nav {
+        -webkit-box-shadow: @bx-shadow-menu-main;
+        -moz-box-shadow: @bx-shadow-menu-main;
+        box-shadow: @bx-shadow-menu-main;
+
+        border-width: @bx-border-width-menu-main;
+        border-style: solid;
+        border-color: @bx-color-border-menu-main;
+
+        background-color: @bx-color-menu-main;
+
+        background-image: @bx-image-bg-menu-main;
+        background-repeat: @bx-image-bg-menu-main-repeat;
+        background-attachment: @bx-image-bg-menu-main-attachment;
+        background-size: @bx-image-bg-menu-main-size;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt {
+        padding: @bx-content-padding-menu-main;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a .bx-menu-floating-blocks-title {
+        text-shadow: @bx-shadow-font-menu-main;
+
+        font-family: @bx-font-family-menu-main;
+        font-size: @bx-font-size-menu-main;
+        font-weight: @bx-font-weight-menu-main;
+        color: @bx-font-color-menu-main;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a .bx-menu-floating-blocks-title,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a .bx-menu-floating-blocks-icon {
+        color: @bx-font-color-menu-main-active;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover .bx-menu-floating-blocks-title,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover .bx-menu-floating-blocks-icon {
+        color: @bx-font-color-menu-main-hover;
+    }
+
+
+    /* account menu */
+    #bx-sliding-menu-account.bx-sliding-menu-main {
+        -webkit-box-shadow: @bx-shadow-menu-account;
+        -moz-box-shadow: @bx-shadow-menu-account;
+        box-shadow: @bx-shadow-menu-account;
+
+        border-width: @bx-border-width-menu-account;
+        border-style: solid;
+        border-color: @bx-color-border-menu-account;
+
+        background-color: @bx-color-menu-account;
+
+        background-image: @bx-image-bg-menu-account;
+        background-repeat: @bx-image-bg-menu-account-repeat;
+        background-attachment: @bx-image-bg-menu-account-attachment;
+        background-size: @bx-image-bg-menu-account-size;
+    }
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt {
+        padding: @bx-content-padding-menu-account;
+    }
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt .bx-def-font-h1,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt .bx-def-font-h2,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt a:not(.bx-btn) {
+        color: @bx-font-color-menu-account;
+    }
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li a,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li a .bx-menu-floating-blocks-title {
+        text-shadow: @bx-shadow-font-menu-account;
+
+        font-family: @bx-font-family-menu-account;
+        font-size: @bx-font-size-menu-account;
+        font-weight: @bx-font-weight-menu-account;
+    }
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li.bx-menu-tab-active a {
+        color: @bx-font-color-menu-account-active;
+    }
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li a:hover {
+        color: @bx-font-color-menu-account-hover;
+    }
+
+    /* add menu */
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main {
+        -webkit-box-shadow: @bx-shadow-menu-add;
+        -moz-box-shadow: @bx-shadow-menu-add;
+        box-shadow: @bx-shadow-menu-add;
+
+        border-width: @bx-border-width-menu-add;
+        border-style: solid;
+        border-color: @bx-color-border-menu-add;
+
+        background-color: @bx-color-menu-add;
+
+        background-image: @bx-image-bg-menu-add;
+        background-repeat: @bx-image-bg-menu-add-repeat;
+        background-attachment: @bx-image-bg-menu-add-attachment;
+        background-size: @bx-image-bg-menu-add-size;
+    }
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt {
+        padding: @bx-content-padding-menu-add;
+    }
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li a {
+        text-shadow: @bx-shadow-font-menu-add;
+
+        font-family: @bx-font-family-menu-add;
+        font-size: @bx-font-size-menu-add;
+        font-weight: @bx-font-weight-menu-add;
+        color: @bx-font-color-menu-add;
+    }
+    /*#bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a {
+        color: @bx-font-color-menu-add-active;
+    }*/
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li a:hover {
+        color: @bx-font-color-menu-add-hover;
+    }
+
+    /* page menu */
+    .bx-menu-main-bar-wrapper {
+        -webkit-box-shadow: @bx-shadow-menu-page;
+        -moz-box-shadow: @bx-shadow-menu-page;
+        box-shadow: @bx-shadow-menu-page;
+
+        border-width: @bx-border-width-menu-page;
+        border-style: solid;
+        border-color: @bx-color-border-menu-page;
+        border-bottom-right-radius: @bx-border-radius-block-br;
+        border-bottom-left-radius: @bx-border-radius-block-bl;
+
+        background-color: @bx-color-menu-page;
+
+        background-image: @bx-image-bg-menu-page;
+        background-repeat: @bx-image-bg-menu-page-repeat;
+        background-attachment: @bx-image-bg-menu-page-attachment;
+        background-size: @bx-image-bg-menu-page-size;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu {
+        padding: @bx-content-padding-menu-page;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li a {
+        text-shadow: @bx-shadow-font-menu-page;
+
+        font-family: @bx-font-family-menu-page;
+        font-size: @bx-font-size-menu-page;
+        font-weight: @bx-font-weight-menu-page;
+        color: @bx-font-color-menu-page;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li a:hover {
+        color: @bx-font-color-menu-page-hover;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li.bx-menu-tab-active a {
+        color: @bx-font-color-menu-page-active;
+    }
+
+    /* form */
+    .bx-form-value .bx-form-input-slider,
+    .bx-form-value .bx-form-input-doublerange,
+    .bx-form-value .bx-form-input-select_multiple,
+    .bx-form-value .bx-form-input-select,
+    .bx-form-value .bx-form-input-radio_set,
+    .bx-form-value .bx-form-input-checkbox_set,
+    .bx-form-value .bx-form-input-number,
+    .bx-form-value .bx-form-input-time,
+    .bx-form-value .bx-form-input-datepicker,
+    .bx-form-value .bx-form-input-datetime,
+    .bx-form-value .bx-form-input-textarea,
+    .bx-form-value .bx-form-input-text,
+    .bx-form-value .bx-form-input-price,
+    .bx-form-value .bx-form-input-wrapper-price span,
+    .bx-form-value .bx-form-input-wrapper-password {
+        .box-sizing(@base-input-box-sizing);
+
+        border-color: @bx-color-border-form-input;
+        border-width: @bx-border-width-form-input;
+
+        background-color: @bx-color-form-input;
+
+        -webkit-box-shadow: @bx-shadow-form-input;
+        -moz-box-shadow: @bx-shadow-form-input;
+        box-shadow: @bx-shadow-form-input;
+    }
+    .bx-form-value .bx-form-input-slider,
+    .bx-form-value .bx-form-input-doublerange,
+    .bx-form-value .bx-form-input-select,
+    .bx-form-value .bx-form-input-number,
+    .bx-form-value .bx-form-input-time,
+    .bx-form-value .bx-form-input-datepicker,
+    .bx-form-value .bx-form-input-datetime,
+    .bx-form-value .bx-form-input-text,
+    .bx-form-value .bx-form-input-price,
+    .bx-form-value .bx-form-input-wrapper-price span,
+    .bx-form-value .bx-form-input-wrapper-password {
+        height: @bx-height-form-input + 0.25rem;
+    }
+    .bx-form-value .bx-form-input-text.bx-form-input-autotoken:not(.bx-form-input-labels) b {
+        line-height: @bx-height-form-input;
+    }
+    .bx-form-value .bx-form-input-text.bx-form-input-autotoken:not(.bx-form-input-labels) b .bx-def-thumb-size {
+        width: @bx-height-form-input;
+        height: @bx-height-form-input;
+        line-height: @bx-height-form-input;
+    }
+    .bx-form-value .bx-form-input-slider:focus,
+    .bx-form-value .bx-form-input-doublerange:focus,
+    .bx-form-value .bx-form-input-number:focus,
+    .bx-form-value .bx-form-input-time:focus,
+    .bx-form-value .bx-form-input-datepicker:focus,
+    .bx-form-value .bx-form-input-datetime:focus,
+    .bx-form-value .bx-form-input-textarea:focus,
+    .bx-form-value .bx-form-input-text:focus,
+    .bx-form-value .bx-form-input-price:focus,
+    .bx-form-value .bx-form-input-wrapper-password.bx-form-input-focus {
+        border-color: @bx-color-border-form-input-active;
+        background-color: @bx-color-form-input-active;
+    }
+    .bx-form-value .bx-switcher-cont.on > button {
+        background-color: @bx-color-form-input;
+    }
+
+    /* button large */
+    .bx-btn,
+    .bx-btn.bx-btn-primary {
+        .box-sizing(@base-input-box-sizing);
+
+        height: @bx-height-button;
+        line-height: (@bx-height-button - 0.125 * @bx-border-width-button);
+
+        .background-color (@bx-color-button);
+
+        border-width: @bx-border-width-button;
+        border-style: solid;
+        border-color: @bx-color-border-button;
+
+            border-radius: @bx-border-radius-button;
+        background-clip: padding-box;
+
+        text-shadow: @bx-shadow-font-button;
+
+        font-family: @bx-font-family-button;
+        font-size: @bx-font-size-button;
+        font-weight: @bx-font-weight-button;
+        color: @bx-font-color-button;
+        
+        padding-top: 0px;
+        padding-bottom: 0px;
+    }
+    .bx-btn-height {
+        height: @bx-height-button;
+        line-height: @bx-height-button;
+    }
+    .bx-btn-border {
+        border-width: @bx-border-width-button;
+        border-style: solid;
+        border-color: transparent;
+    }
+    .bx-btn:hover,
+    .bx-btn:active,
+    .bx-btn.bx-btn-primary:hover,
+    .bx-btn.bx-btn-primary:active {
+        border-width: @bx-border-width-button;
+        border-style: solid;
+        border-color: @bx-color-border-button-hover;
+
+        .background-color (@bx-color-button-hover);
+
+        color: @bx-font-color-button-hover;
+    }
+    .bx-btn .sys-icon:not(.sys-colored) {
+        color: @bx-font-color-button;
+    }
+    .bx-btn:hover .sys-icon:not(.sys-colored),
+    .bx-btn:active .sys-icon:not(.sys-colored),
+    .bx-btn.bx-btn-primary:hover .sys-icon:not(.sys-colored),
+    .bx-btn.bx-btn-primary:active .sys-icon:not(.sys-colored) {
+        color: @bx-font-color-button-hover;
+    }
+
+    /* button small */
+    .bx-btn.bx-btn-small {
+        .box-sizing(@base-input-box-sizing);
+
+        height: @bx-height-button-small;
+        line-height: (@bx-height-button-small - 0.125 * @bx-border-width-button-small);
+
+        .background-color (@bx-color-button-small);
+
+        border-width: @bx-border-width-button-small;
+        border-style: solid;
+        border-color: @bx-color-border-button-small;
+
+            border-radius: @bx-border-radius-button-small;
+        background-clip: padding-box;
+
+        text-shadow: @bx-shadow-font-button-small;
+
+        font-family: @bx-font-family-button-small;
+        font-size: @bx-font-size-button-small;
+        font-weight: @bx-font-weight-button-small;
+        color: @bx-font-color-button-small;
+    }
+    .bx-btn-small-height {
+        height: @bx-height-button-small;
+        line-height: @bx-height-button-small;
+    }
+    .bx-btn-small-border {
+        border-width: @bx-border-width-button-small;
+        border-style: solid;
+        border-color: transparent;
+    }
+    .bx-btn.bx-btn-small:hover,
+    .bx-btn.bx-btn-small:active {
+        border-width: @bx-border-width-button-small;
+        border-style: solid;
+        border-color: @bx-color-border-button-small-hover;
+
+        .background-color (@bx-color-button-small-hover);
+
+        color: @bx-font-color-button-small-hover;
+    }
+    .bx-btn.bx-btn-small .sys-icon {
+        color: @bx-font-color-button-small;
+    }
+    .bx-btn.bx-btn-small:hover .sys-icon,
+    .bx-btn.bx-btn-small:active .sys-icon {
+        color: @bx-font-color-button-small-hover;
+    }
+}
+
+/* viewport */
+html.bx-media-tablet {
+    font-size: @bx-viewport-font-tablet;
+}
+
+html.bx-media-phone {
+    font-size: @bx-viewport-font-mobile;
+}

+ 371 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/css/general.css

@@ -0,0 +1,371 @@
+@import url(../../../../../../../template/css/general.css);
+
+
+/*--- Overwrite Defaults ---*/
+#bx-toolbar {
+    z-index: 500;
+}
+.bx-media-phone #bx-toolbar-content{
+    display: flex;
+    justify-content: space-between;
+}
+#bx-logo-container {
+    margin: 0.5rem 1.2rem;
+    text-align: left;
+    height: auto;
+    flex-grow: 3
+}
+.bx-media-phone #bx-logo-container {
+    margin: 0;
+}
+#bx-logo-container a {
+	color: #595959;
+}
+.bx-form-input-wrapper-password > A {
+    line-height: 2rem !important;
+}
+
+/*--- Main Page Content ---*/
+.cd-main-content .content-wrapper {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-flex-direction: column;
+    flex-direction: column;
+
+    min-height: 100vh;
+    right: 100%;
+}
+
+:where(.bx-media-tablet2, .bx-media-desktop) #bx-sliding-menu-search{
+	padding-left: 200px;
+	width:calc(100% - 200px);
+}
+
+/*--- Header ---*/
+.cd-main-header {
+  position: absolute;
+  z-index: 2;
+  top: 0;
+  left: 0;
+  height: 45px;
+  width: 100%;
+  background: #3e454c;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+.cd-main-header::after {
+  clear: both;
+  content: "";
+  display: table;
+}
+
+:where(.bx-media-tablet, .bx-media-desktop) .cd-main-header {
+    position: fixed;
+    height: 55px;
+  }
+
+.cd-logo {
+  float: left;
+  display: block;
+  margin: 11px 0 0 5%;
+}
+.cd-logo img {
+  display: block;
+}
+:where(.bx-media-tablet, .bx-media-desktop)  .cd-logo {
+    margin: 16px 0 0 36px;
+  }
+
+/*--- Top Navigation ---*/
+:where(.bx-media-tablet, .bx-media-desktop) .cd-nav {
+    display: block;
+    float: right;
+    height: 100%;
+  }
+/*--- Sidebar ---*/
+.cd-side-nav {
+  position: fixed;
+  z-index: 600;
+  left: 0;
+  width: 100%;
+  visibility: hidden;
+  opacity: 0;
+  max-height: 100vh;
+  overflow: hidden;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+  -webkit-transition: opacity 0.2s 0s, visibility 0s 0.2s;
+  -moz-transition: opacity 0.2s 0s, visibility 0s 0.2s;
+  transition: opacity 0.2s 0s, visibility 0s 0.2s;
+}
+.cd-side-nav.nav-is-visible {
+  opacity: 1;
+  visibility: visible;
+  overflow: visible;
+  -webkit-overflow-scrolling: touch;
+  -webkit-transition: opacity 0.2s 0s, visibility 0s 0s;
+  -moz-transition: opacity 0.2s 0s, visibility 0s 0s;
+  transition: opacity 0.2s 0s, visibility 0s 0s;
+  max-height: none;
+  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
+}
+.cd-side-nav .bx-sliding-smenu-main {
+	display: block  !important;
+}
+.cd-side-nav > ul {
+  padding: 0.6em 0;
+}
+.cd-side-nav > ul:last-of-type {
+  padding-bottom: 0;
+}
+.cd-side-nav .cd-label, .cd-side-nav a {
+  display: block;
+  padding: 0px;
+}
+.cd-side-nav .cd-label {
+  text-transform: uppercase;
+  font-weight: bold;
+  color: #646a6f;
+  font-size: 1rem;
+  letter-spacing: .1em;
+}
+.cd-side-nav ul a {
+  position: relative;
+  color: #ffffff;
+  font-size: 1.4rem;
+}
+
+.bx-media-phone .cd-side-nav {
+		top:57px;
+		box-shadow: none;
+	}
+.bx-media-phone .bx-sliding-menu, .bx-sliding-menu-main{
+		width: 100% !important;
+		left:0px !important;
+		top:56px !important;
+	}
+.bx-media-phone	#bx-menu-toolbar-item-main-menu{
+		margin-top: 3px;
+	}
+
+
+	
+:where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav {
+    position: relative;
+    float: left;
+    top: auto;
+    width: 110px;
+    min-height: 100vh;
+    /* reset style */
+    visibility: visible;
+    opacity: 1;
+    overflow: visible;
+    max-height: none;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav.nav-is-visible {
+    box-shadow: none;
+  }
+:where(.bx-media-tablet, .bx-media-desktop)  .cd-side-nav.is-fixed,
+:where(.bx-media-tablet, .bx-media-desktop)  .content-wrapper.is-fixed {
+    position: fixed;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .content-wrapper.is-fixed {
+      left: 0;
+      width: 100%;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav > ul {
+    /* reset style */
+    padding: 0;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav .cd-label {
+    /* remove labels on minified version of the sidebar */
+    display: none;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav ul a {
+    font-size: 1.2rem;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav > ul > li > a {
+    padding: calc(2.2em + 24px) 0 2.4em;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav > ul > li > a::before {
+    left: 50%;
+    right: auto;
+    -webkit-transform: translateX(-50%);
+    -moz-transform: translateX(-50%);
+    -ms-transform: translateX(-50%);
+    -o-transform: translateX(-50%);
+    transform: translateX(-50%);
+    top: 2.4em;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav .active > a {
+    /* current page */
+    box-shadow: inset 3px 0 0 #1784c7;
+    background-color: #33383e;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav .action-btn a {
+    margin: 1em 10% 0;
+  }
+
+:where(.bx-media-tablet2, .bx-media-desktop)  .cd-side-nav {
+    width: 200px;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop) .cd-side-nav > ul {
+    padding: 0.6em 0;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop) .cd-side-nav > ul > li:not(.action-btn):hover > a {
+    background-color: #33383e;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop) .cd-side-nav > ul > li > a {
+    padding: 1em 1em 1em 42px;
+    text-align: left;
+    border-bottom: none;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop) .cd-side-nav > ul > li > a::before {
+    top: 50%;
+    bottom: auto;
+    -webkit-transform: translateY(-50%);
+    -moz-transform: translateY(-50%);
+    -ms-transform: translateY(-50%);
+    -o-transform: translateY(-50%);
+    transform: translateY(-50%);
+    left: 18px;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)  .cd-side-nav .cd-label {
+    display: block;
+    padding: 1em 18px;
+  }
+
+.has-children ul {
+  position: relative;
+  width: 100%;
+  display: none;
+  background-color: #1c1f22;
+}
+.has-children > a::after {
+  /* arrow icon */
+  position: absolute;
+  content: '';
+  height: 16px;
+  width: 16px;
+  right: 5%;
+  top: 50%;
+  bottom: auto;
+  -webkit-transform: translateY(-50%);
+  -moz-transform: translateY(-50%);
+  -ms-transform: translateY(-50%);
+  -o-transform: translateY(-50%);
+  transform: translateY(-50%);
+  background: url(../img/cd-arrow.svg);
+}
+.has-children.selected > ul {
+  display: block;
+}
+.has-children.selected > a::after {
+  -webkit-transform: translateY(-50%) rotate(180deg);
+  -moz-transform: translateY(-50%) rotate(180deg);
+  -ms-transform: translateY(-50%) rotate(180deg);
+  -o-transform: translateY(-50%) rotate(180deg);
+  transform: translateY(-50%) rotate(180deg);
+}
+
+:where(.bx-media-tablet, .bx-media-desktop) .has-children {
+    position: relative;
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .has-children ul {
+    position: absolute;
+    top: 0;
+    left: 100%;
+    width: 160px;
+    padding: 0;
+    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .has-children ul a {
+    text-align: left;
+    border: none;
+    padding: 1em;
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .no-touch .has-children ul a:hover {
+    color: #1784c7;
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .has-children > a::after {
+    display: none;
+  }
+ :where(.bx-media-tablet, .bx-media-desktop) .cd-side-nav .has-children.selected > a {
+    /* focus state -> show sub pages */
+    background-color: #33383e;
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .cd-top-nav .has-children {
+    position: relative;
+    background-color: #2c3136;
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .cd-top-nav .has-children > a {
+    height: 100%;
+    padding: 0 calc(1.8em + 22px) 0 calc(1.8em + 26px) !important;
+    line-height: 55px;
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .cd-top-nav .has-children > a::after {
+    display: block;
+    right: 1.8em;
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .cd-top-nav .has-children ul {
+    background-color: #1c1f22;
+    width: 200px;
+    top: 100%;
+    right: 0;
+    left: auto;
+    box-shadow: 0 1px 10px rgba(0, 0, 0, 0.2);
+  }
+:where(.bx-media-tablet, .bx-media-desktop) .cd-top-nav .has-children ul a {
+    padding-left: 18px !important;
+  }
+
+ :where(.bx-media-tablet2, .bx-media-desktop) .has-children > ul {
+    width: 100%;
+    z-index: 1;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop) .has-children ul a {
+    padding-left: 18px;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .has-children.active > ul {
+    /* if the item is active, make the subnavigation visible */
+    position: relative;
+    display: block;
+    /* reset style */
+    left: 0;
+    box-shadow: none;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .no-touch .cd-side-nav .has-children:hover > ul, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-side-nav .has-children.hover > ul {
+    /* show subnavigation on hover */
+    display: block;
+    opacity: 1;
+    visibility: visible;
+  }
+
+/* profile cover customisation */
+.bx-base-pofile-cover{
+    border: 1px solid rgba(0, 0, 0, 0.1);
+	border-bottom: none;
+}
+.bx-base-pofile-cover-info .bx-base-pofile-cover-thumb{
+	margin: 0px auto;
+    margin-top: -5rem;
+}
+.bx-base-pofile-cover-info .bx-base-profile-cover-title-bages{
+	margin: 0px auto;
+}
+.bx-media-phone .bx-base-pofile-cover-info div.bx-base-pofile-cover-thumb{
+	margin: 0px auto;
+}
+.bx-base-pofile-cover-info .bx-base-pofile-cover-user h1.bx-def-unit-info{
+	    margin-left: 2rem;
+}
+.bx-menu-main-bar ul.bx-menu-main-submenu.bx-menu-more-auto, .bx-base-pofile-cover-actions ul.bx-menu-hor.bx-menu-more-auto{
+	    justify-content: center !important;
+}
+
+/* header */
+.bx-header {
+	-webkit-backdrop-filter: saturate(180%) blur(8px);
+	backdrop-filter: saturate(180%) blur(8px);
+}

+ 343 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/css/menu.less

@@ -0,0 +1,343 @@
+@import (reference) 'default.less';
+@import '../../../../../../../template/css/menu.css';
+
+.@{bx-root-class-name} {
+
+    .bx-menu-toolbar-padding {
+        padding-top: 0;
+    }
+
+    /*--- Main (Side) Menu ---*/
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site {
+        display: block;
+        white-space: normal;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site .bx-def-color-bg-hl-hover:hover
+    {
+        background-color: inherit;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li {
+        display: block;
+        width: auto;
+        height: auto;
+        position: relative;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li a{
+        padding: 0.5rem 1rem;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-icon, 
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-title {
+        display: inline-block;
+        vertical-align: top;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-title {
+        line-height: 2rem;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li img,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .sys-icon {
+        width: 2rem;
+        height: 2rem;
+
+        margin: 0px;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .sys-icon {
+        line-height: 2rem;
+        font-size: 1.2rem;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li img {
+        background-pocition: center center;
+        background-repeat: none;
+        background-size: 60% 60%;
+    }
+
+
+    /*--- Account Popup ---*/	
+    #bx-sliding-menu-account.bx-sliding-menu-main.bx-sliding-menu-fullheight {
+        height: calc(100% - 4rem);
+    }
+
+
+    /*--- Account Popup Submenu & Add Content Menu ---*/
+    .bx-menu-account-popup-profile,
+    .bx-menu-account-popup-menu {
+        text-align: left;
+    }
+    .bx-menu-account-popup-menu ul.bx-menu-floating-blocks-wide,
+    .bx-menu-object-sys_account_notifications li,
+    .bx-menu-object-sys_add_content li {
+        display: block;
+        width: 100%;
+        height: auto;
+    }
+    .bx-menu-object-sys_account_notifications li A,
+    .bx-menu-object-sys_add_content li A {
+        padding: 0.25rem 0.5rem;
+        line-height: 2rem;
+        height: 2rem;
+    }
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-title,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-title {
+        display: inline-block;
+        vertical-align: middle;
+    }
+    .bx-menu-object-sys_account_notifications li a,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-title,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-title {
+        line-height: 1.875rem;
+    }
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-title,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-title {
+        padding-right: 0.5rem;
+    }
+    .bx-menu-object-sys_account_notifications li img,
+    .bx-menu-object-sys_account_notifications li .sys-icon,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon img,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon .sys-icon,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon img,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon .sys-icon {
+        height: 2rem;
+        width: 2rem;
+
+        margin: 0px;	
+    }
+    .bx-menu-object-sys_account_notifications li .sys-icon,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon .sys-icon,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon .sys-icon {
+        line-height: 2rem;
+        font-size: 1.2rem;
+    }
+    .bx-menu-object-sys_account_notifications li img,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon img,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon img {
+        background-pocition: center center;
+        background-repeat: none;
+        background-size: 60% 60%;
+    }
+    .bx-menu-object-sys_account_notifications li .bx-def-unit-alert-middle {
+        top: 4px;
+        right: 4px;
+    }
+    .bx-menu-object-sys_account_notifications li:hover {
+        opacity:0.8;
+    }
+
+
+    /*--- Add Content Menu ---*/
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-menu-object-sys_add_content {
+        display: block;
+        width: 100%;
+    }
+
+
+    /*--- Popup menus (vertical) ---*/
+    .bx-popup .bx-popup-content-indent ul.bx-menu-ver,
+    .bx-popup .bx-popup-content-indent ul.bx-menu-custom.bx-menu-custom-ver {
+        margin: -0.5rem;
+    }
+    .bx-popup ul.bx-menu-ver li,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li {
+        margin-top: 0;
+        margin-bottom: 0;
+    }
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li.bx-menu-item,
+    .bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-item {
+        padding: 0;
+        line-height: normal;
+    }
+    .bx-popup ul.bx-menu-ver li div.bx-def-padding-sec,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li > span,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li > .bx-def-margin-thd-topbottom {
+        margin: 0;
+        padding: 0.25rem 0.5rem;
+    }
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li > span,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li > .bx-def-margin-thd-topbottom {
+        margin: 0;
+        padding-right: 0.5rem;
+    }
+    .bx-popup ul.bx-menu-ver li > a,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li > span > a,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li > span > span,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li > span > span > a,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li .bx-menu-item-link,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li .bx-report-element-holder,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li .bx-report-do-report {
+        margin: 0;
+        padding: 0;
+    }
+    .bx-popup ul.bx-menu-ver li a > div > span,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li a > span:not(.sys-action-do-icon) {
+        line-height: 1.5rem;
+        .font-size(@bx-font-size-middle);
+    }
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li.bx-menu-item a {
+        display: block;
+        line-height: 1.5rem;
+    }
+    .bx-popup ul.bx-menu-ver li a > div img,
+    .bx-popup ul.bx-menu-ver li a > div .sys-icon,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li a > img,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li a > .sys-icon,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li a > span.sys-action-do-icon,
+    .bx-popup ul.bx-menu-custom.bx-menu-custom-ver li a > span.sys-action-do-icon .sys-icon {
+        width: 1.0rem;
+        height: 1.0rem;
+        line-height: 1.0rem;
+        font-size: 1.0rem;
+    }
+
+
+    /*--- Custom Menu with More Auto ---*/
+    .bx-menu-main-submenu.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item .bx-btn,
+    .bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item a,
+    .bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item .bx-btn {
+        font-weight: normal;
+        color: @bx-color-link-body;
+    }
+
+
+    .bx-menu-main-submenu.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item .bx-btn .sys-icon,
+    .bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item .bx-btn .sys-icon {
+        color: @bx-color-icon-body;
+    }
+
+    .bx-menu-object-sys_add_content .bx-def-color-bg-active{
+        background-color: inherit !important;
+    }
+
+    #bx-homepage-menu-sys_homepage li{
+        height: 5.6rem;
+    }
+    /*--- Main menu with submenu ---*/
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li.submenu-closed ul.bx-menu-floating-blocks-submenu {
+        display: none;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-floating-blocks-submenu {
+        margin: 0;
+        padding: 0;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-floating-blocks-submenu > li {
+        display: block;
+        width: auto;
+        height: auto;
+        padding-left: 2rem
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li.submenu-closed .bx-menu-fbt-closed {
+        display: block;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li.submenu-closed .bx-menu-fbt-opened {
+        display: none;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li > a > .bx-menu-floating-blocks-toggler {
+        float: right; 
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site .bx-menu-fbt-closed {
+        display: none;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li > a > .bx-menu-floating-blocks-toggler .sys-icon{
+        font-size: 0.5rem !important;
+        font-weight: bold !important;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site .bx-menu-tab-active{
+        background-color: #e6f7ff;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site .bx-menu-tab-active:after{
+        position: absolute;
+        top: 0;
+        right: 0;
+        bottom: 0;
+        border-right: 3px solid #1890ff;
+        content: '';
+        height: 100%;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li:hover{
+        opacity: 1; 
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site A div{
+        transition: color .3s;
+    }
+    
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li a{
+        line-height: 2rem;
+    }
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li{
+        border-radius: 0.1875rem;
+    }
+    .bx-tl-v-submenu-cnt ul li.bx-menu-inter-act {
+        color: #000;
+    }
+    .bx-sliding-menu, .bx-sliding-menu-main{
+        width: auto;
+    }
+}
+
+.bx-media-tablet .@{bx-root-class-name} {
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-icon, 
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-title {
+        display: block;
+        text-align: center;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-title {
+        padding-left: 0px;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .sys-icon {
+        width: 100%;
+        font-size: 1.5rem;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li img {
+        margin: 0px auto;
+        background-size: 70% 70%;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li > a > .bx-menu-floating-blocks-toggler{
+        display:  none;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-floating-blocks-submenu{
+        position: absolute;
+        background: #fff;
+        width: 150px;
+        left: 120px;
+        top:0px;
+        border-radius: 4px;
+        box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.1);
+        border-width: 1px;
+        border-style: solid;
+        border-color: rgba(0, 0, 0, 0.1);
+        z-index: 1000;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-floating-blocks-submenu li {
+        padding-left: 0rem;
+    }
+}
+
+.bx-media-phone .@{bx-root-class-name} { 
+    .cd-main-content .cd-side-nav {
+        position:fixed;
+        width:100%;
+        height: calc(100%);
+
+        overflow-x:hidden;
+        overflow-y:auto;
+
+        -webkit-overflow-scrolling:touch;
+    }
+}
+
+:where(.bx-media-tablet, .bx-media-desktop) .@{bx-root-class-name}{ 
+    /*--- Account Popup ---*/
+    #bx-sliding-menu-account.bx-sliding-menu-main {
+        width: auto !important;
+        border-radius: 4px;
+    }
+
+    /*--- Add Content Menu ---*/
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main {
+        width: auto !important;
+        border-radius: 4px;
+    }	
+}

+ 56 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplMenuSite.php

@@ -0,0 +1,56 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    UnaTemplate UNA Template Classes
+ * @{
+ */
+
+/**
+ * @see BxDolMenu
+ */
+class BxTemplMenuSite extends BxTemplMenu
+{
+    protected $_bSiteMenu;
+    protected $_bSiteMenuInPanel;
+
+    protected $_aHideFromSiteMenuInPanel;
+
+    public function __construct ($aObject, $oTemplate = false)
+    {
+        parent::__construct ($aObject, $oTemplate);
+
+        $this->_bSiteMenu = $this->_sObject == 'sys_site';
+        $this->_bSiteMenuInPanel = $this->_sObject == 'sys_site_in_panel';
+
+        $this->_aHideFromSiteMenuInPanel = ['more-auto'];
+    }
+
+    public function getCode ()
+    {
+        $sClass = 'bx-sliding-menu-main';
+        $sStyle = 'display:none';
+        if($this->_bSiteMenu || $this->_bSiteMenuInPanel) {
+            $sClass = 'bx-sliding-smenu-main';
+            $sStyle = '';
+        }
+
+        $sResult = '<div id="bx-sliding-menu-' . $this->_sObject . '" class="' . $sClass . ' bx-def-z-index-nav" style="' . $sStyle . '"><div class="bx-sliding-menu-main-cnt">' . parent::getCode() . '</div></div>';
+        if($this->_bSiteMenu) 
+            $sResult = '<div class="cd-side-nav bx-def-box-sizing">' . $sResult . '</div>';
+
+        return $sResult;
+    }
+
+    protected function _getMenuItem ($a)
+    {
+        //--- Hide '[More Auto]' from Site Menu in Panel
+        if($this->_bSiteMenuInPanel && in_array($a['name'], $this->_aHideFromSiteMenuInPanel))
+            return false;
+
+        return parent::_getMenuItem ($a);
+    }
+}
+
+/** @} */

+ 68 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/config.php

@@ -0,0 +1,68 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    Decorous Decorous template
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'type' => BX_DOL_MODULE_TYPE_TEMPLATE,
+    'name' => 'bx_decorous',
+    'title' => 'Decorous',
+    'note' => 'Design template',
+    'version' => '13.0.3',
+    'vendor' => 'Boonex',
+    'help_url' => 'http://feed.una.io/?section={module_name}',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/decorous/',
+    'home_uri' => 'decorous',
+
+    'db_prefix' => 'bx_decorous_',
+    'class_prefix' => 'BxDecorous',
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Boonex Decorous Template',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 1,
+        'update_languages' => 1,
+    	'clear_db_cache' => 1
+    ),
+    'uninstall' => array (
+        'execute_sql' => 1,
+        'update_languages' => 1,
+    	'clear_db_cache' => 1
+    ),
+    'enable' => array(
+        'execute_sql' => 1
+    ),
+    'disable' => array(
+        'execute_sql' => 1
+    ),
+
+    /**
+     * Dependencies Section
+     */
+    'dependencies' => array(),
+);
+
+/** @} */

+ 308 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/langs/en.xml

@@ -0,0 +1,308 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources name="en" flag="gb" title="English">
+	<string name="_bx_decorous_wgt_cpt"><![CDATA[Decorous]]></string>
+
+	<string name="_bx_decorous_stg_cpt_type"><![CDATA[Decorous]]></string>
+	<string name="_bx_decorous_stg_cpt_category_system"><![CDATA[General]]></string>
+	<string name="_bx_decorous_stg_cpt_option_switcher_name"><![CDATA[Name in Template Switcher]]></string>
+        <string name="_bx_decorous_stg_cpt_option_default_mix"><![CDATA[Default mix]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_general"><![CDATA[General]]></string>
+	<string name="_bx_decorous_stg_cpt_option_general_item_bg_color_hover"><![CDATA[On-hover item background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_general_item_bg_color_active"><![CDATA[Active item background color]]></string>
+        <string name="_bx_decorous_stg_cpt_option_general_item_bg_color_disabled"><![CDATA[Disabled item background color]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_header"><![CDATA[Header]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_height"><![CDATA[Height]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_bg_image_size"><![CDATA[Background image size]]></string>	
+	<string name="_bx_decorous_stg_cpt_option_site_logo"><![CDATA[Logo image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_site_logo_alt"><![CDATA[Logo ALT]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_border_color"><![CDATA[Header border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_border_size"><![CDATA[Header border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_icon_color"><![CDATA[Icons color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_icon_color_hover"><![CDATA[On-hover icons color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_link_color"><![CDATA[Links color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_header_link_color_hover"><![CDATA[On-hover links color]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_footer"><![CDATA[Footer]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_icon_color"><![CDATA[Icons color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_icon_color_hover"><![CDATA[On-hover icons color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_link_color"><![CDATA[Links color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_footer_link_color_hover"><![CDATA[On-hover links color]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_body"><![CDATA[Body]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_page_width"><![CDATA[Page Width]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_icon_color"><![CDATA[Icons color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_icon_color_hover"><![CDATA[On-hover icons color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_link_color"><![CDATA[Links color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_body_link_color_hover"><![CDATA[On-hover links color]]></string>
+
+    <string name="_bx_decorous_stg_cpt_category_styles_cover"><![CDATA[Cover]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_height"><![CDATA[Cover height]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_bg_color"><![CDATA[Background color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_content_padding"><![CDATA[Content margin]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_border_color"><![CDATA[Border color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_border_size"><![CDATA[Border size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_border_radius"><![CDATA[Corners radius]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_shadow"><![CDATA[Shadow]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_icon_border_color"><![CDATA[Icon border color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_icon_border_size"><![CDATA[Icon border size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_icon_border_radius"><![CDATA[Icon corners radius]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_icon_shadow"><![CDATA[Icon shadow]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_text_align"><![CDATA[Text alignment]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_text_shadow"><![CDATA[Text shadow]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_font_family"><![CDATA[Font stack]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_font_size"><![CDATA[Font size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_font_color"><![CDATA[Font color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_cover_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_block"><![CDATA[Blocks]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_bg_color"><![CDATA[Title background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_padding"><![CDATA[Title margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_border_color"><![CDATA[Title Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_border_size"><![CDATA[Title Border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_border_radius"><![CDATA[Title Corners radius]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_font_family"><![CDATA[Title font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_font_size"><![CDATA[Title font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_font_color"><![CDATA[Title font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_font_weight"><![CDATA[Title font weight]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_div_height"><![CDATA[Title separator height]]></string>
+	<string name="_bx_decorous_stg_cpt_option_block_title_div_bg_color"><![CDATA[Title separator color]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_card"><![CDATA[Cards]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_bg_color_hover"><![CDATA[On-hover background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_decorous_stg_cpt_option_card_shadow"><![CDATA[Shadow]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_popup"><![CDATA[Popups]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_title_bg_color"><![CDATA[Title background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_title_padding"><![CDATA[Title margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_title_font_family"><![CDATA[Title font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_title_font_size"><![CDATA[Title font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_popup_title_font_color"><![CDATA[Title font color]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_menu_main"><![CDATA[Main Menu]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_font_color_hover"><![CDATA[On-hover font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_font_color_active"><![CDATA[Active font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_main_font_weight"><![CDATA[Font weight]]></string>
+
+    <string name="_bx_decorous_stg_cpt_category_styles_menu_account"><![CDATA[Account Menu]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_bg_color"><![CDATA[Background color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_bg_image"><![CDATA[Background image]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_bg_image_size"><![CDATA[Background image size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_content_padding"><![CDATA[Content margin]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_border_color"><![CDATA[Border color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_border_size"><![CDATA[Border size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_shadow"><![CDATA[Shadow]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_font_family"><![CDATA[Font stack]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_font_size"><![CDATA[Font size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_font_color"><![CDATA[Font color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_font_color_hover"><![CDATA[On-hover font color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_font_color_active"><![CDATA[Active font color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_font_shadow"><![CDATA[Font shadow]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_account_font_weight"><![CDATA[Font weight]]></string>
+
+    <string name="_bx_decorous_stg_cpt_category_styles_menu_add"><![CDATA[Add Menu]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_bg_color"><![CDATA[Background color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_bg_image"><![CDATA[Background image]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_bg_image_size"><![CDATA[Background image size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_content_padding"><![CDATA[Content margin]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_border_color"><![CDATA[Border color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_border_size"><![CDATA[Border size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_shadow"><![CDATA[Shadow]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_font_family"><![CDATA[Font stack]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_font_size"><![CDATA[Font size]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_font_color"><![CDATA[Font color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_font_color_hover"><![CDATA[On-hover font color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_font_color_active"><![CDATA[Active font color]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_font_shadow"><![CDATA[Font shadow]]></string>
+    <string name="_bx_decorous_stg_cpt_option_menu_add_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_menu_page"><![CDATA[Page Menu]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_font_color_hover"><![CDATA[On-hover font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_font_color_active"><![CDATA[Active font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_page_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_menu_slide"><![CDATA[Slide Menus]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_font_color_hover"><![CDATA[On-hover font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_font_color_active"><![CDATA[Active font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_menu_slide_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_form"><![CDATA[Forms]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_height"><![CDATA[Input height]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_bg_color"><![CDATA[Input background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_bg_color_active"><![CDATA[Active input background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_border_color"><![CDATA[Input border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_border_color_active"><![CDATA[Active input border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_border_size"><![CDATA[Input border size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_shadow"><![CDATA[Input shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_font_family"><![CDATA[Input font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_font_size"><![CDATA[Input font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_form_input_font_color"><![CDATA[Input font color]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_large_button"><![CDATA[Large Buttons]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_height"><![CDATA[Height]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_bg_color_hover"><![CDATA[On-hover background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_border_color_hover"><![CDATA[On-hover border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_border_size"><![CDATA[Border size (in px)]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_font_color_hover"><![CDATA[On-hover font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_lg_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_small_button"><![CDATA[Small Buttons]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_height"><![CDATA[Height]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_bg_color_hover"><![CDATA[On-hover background color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_border_color_hover"><![CDATA[On-hover border color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_border_size"><![CDATA[Border size (in px)]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_font_color_hover"><![CDATA[On-hover font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_decorous_stg_cpt_option_button_sm_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_font"><![CDATA[Fonts]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_size_default"><![CDATA[Default font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_default"><![CDATA[Default font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_grayed"><![CDATA[Grayed font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_contrasted"><![CDATA[Contrasted font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_size_small"><![CDATA[Small font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_size_middle"><![CDATA[Middle font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_size_large"><![CDATA[Large font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_size_h1"><![CDATA[H1 font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_weight_h1"><![CDATA[H1 font weight]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_default_h1"><![CDATA[H1 default font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_grayed_h1"><![CDATA[H1 grayed font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_contrasted_h1"><![CDATA[H1 contrasted font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_link_h1"><![CDATA[H1 link font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_link_h1_hover"><![CDATA[H1 on-hover link font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_size_h2"><![CDATA[H2 font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_weight_h2"><![CDATA[H2 font weight]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_default_h2"><![CDATA[H2 default font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_grayed_h2"><![CDATA[H2 grayed font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_contrasted_h2"><![CDATA[H2 contrasted font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_link_h2"><![CDATA[H2 link font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_link_h2_hover"><![CDATA[H2 on-hover link font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_size_h3"><![CDATA[H3 font size]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_weight_h3"><![CDATA[H3 font weight]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_default_h3"><![CDATA[H3 default font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_grayed_h3"><![CDATA[H3 grayed font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_contrasted_h3"><![CDATA[H3 contrasted font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_link_h3"><![CDATA[H3 link font color]]></string>
+	<string name="_bx_decorous_stg_cpt_option_font_color_link_h3_hover"><![CDATA[H3 on-hover link font color]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_styles_custom"><![CDATA[Custom Styles]]></string>
+	<string name="_bx_decorous_stg_cpt_option_styles_custom"><![CDATA[]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_viewport_tablet"><![CDATA[Tablet Viewport]]></string>
+	<string name="_bx_decorous_stg_cpt_option_vpt_font_size_scale"><![CDATA[Fonts size scale]]></string>
+
+	<string name="_bx_decorous_stg_cpt_category_viewport_mobile"><![CDATA[Mobile Viewport]]></string>
+	<string name="_bx_decorous_stg_cpt_option_vpm_font_size_scale"><![CDATA[Fonts size scale]]></string>
+
+	<string name="_bx_decorous_lmi_cpt_styles"><![CDATA[Styles]]></string>
+</resources>

+ 11 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/sql/disable.sql

@@ -0,0 +1,11 @@
+SET @sName = 'bx_decorous';
+
+
+-- ALERTS
+SET @iHandler := (SELECT `id` FROM `sys_alerts_handlers` WHERE `name` = @sName LIMIT 1);
+DELETE FROM `sys_alerts` WHERE `handler_id` = @iHandler;
+DELETE FROM `sys_alerts_handlers` WHERE `id` = @iHandler;
+
+
+-- INJECTIONS
+DELETE FROM `sys_injections` WHERE `name` = @sName;

+ 16 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/sql/enable.sql

@@ -0,0 +1,16 @@
+SET @sName = 'bx_decorous';
+
+
+-- ALERTS
+INSERT INTO `sys_alerts_handlers` (`name`, `class`, `file`, `service_call`) VALUES 
+(@sName, 'BxDecorousAlertsResponse', 'modules/boonex/decorous/classes/BxDecorousAlertsResponse.php', '');
+SET @iHandler := LAST_INSERT_ID();
+
+INSERT INTO `sys_alerts` (`unit`, `action`, `handler_id`) VALUES
+('system', 'save_setting', @iHandler),
+('system', 'change_logo', @iHandler);
+
+
+-- INJECTIONS
+INSERT INTO `sys_injections` (`name`, `page_index`, `key`, `type`, `data`, `replace`, `active`) VALUES
+(@sName, 0, 'injection_head', 'service', 'a:2:{s:6:"module";s:11:"bx_decorous";s:6:"method";s:14:"include_css_js";}', 0, 1);

+ 444 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/sql/install.sql

@@ -0,0 +1,444 @@
+SET @sName = 'bx_decorous';
+
+
+-- SETTINGS
+SET @iSystemCategoryId = (SELECT `id` FROM `sys_options_categories` WHERE `name`='system' LIMIT 1);
+SET @iSystemCategoryOrder = (SELECT IFNULL(MAX(`order`), 0) FROM `sys_options` WHERE `category_id`=@iSystemCategoryId LIMIT 1);
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iSystemCategoryId, CONCAT(@sName, '_site_logo_aspect_ratio'), '', '', 'digit', '', '', '', @iSystemCategoryOrder + 1);
+
+INSERT INTO `sys_options_types`(`group`, `name`, `caption`, `icon`, `order`) VALUES 
+('templates', @sName, '_bx_decorous_stg_cpt_type', 'bx_decorous@modules/boonex/decorous/|std-icon.svg', 2);
+SET @iTypeId = LAST_INSERT_ID();
+
+-- SETTINGS: Decorous template System
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_system'), '_bx_decorous_stg_cpt_category_system', 10);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_switcher_title'), '_bx_decorous_stg_cpt_option_switcher_name', 'Decorous', 'digit', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_default_mix'), '_bx_decorous_stg_cpt_option_default_mix', '', 'select', 'a:2:{s:6:"module";s:11:"bx_decorous";s:6:"method";s:23:"get_options_default_mix";}', '', '', 10);
+
+
+-- SETTINGS: Decorous template Styles General
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_general'), '_bx_decorous_stg_cpt_category_styles_general', 20);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_general_item_bg_color_hover'), '_bx_decorous_stg_cpt_option_general_item_bg_color_hover', 'rgba(245, 245, 245, 1)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_general_item_bg_color_active'), '_bx_decorous_stg_cpt_option_general_item_bg_color_active', 'rgba(230, 247, 255, 1)', 'rgba', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_general_item_bg_color_disabled'), '_bx_decorous_stg_cpt_option_general_item_bg_color_disabled', '', 'rgba', '', '', '', 3);
+
+
+-- SETTINGS: Decorous template Styles Header
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_header'), '_bx_decorous_stg_cpt_category_styles_header', 30);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_header_height'), '_bx_decorous_stg_cpt_option_header_height', '4rem', 'digit', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_header_content_padding'), '_bx_decorous_stg_cpt_option_header_content_padding', '0.5rem', 'digit', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_header_bg_color'), '_bx_decorous_stg_cpt_option_header_bg_color', 'rgba(255, 255, 255, 0.8)', 'rgba', '', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_header_bg_image'), '_bx_decorous_stg_cpt_option_header_bg_image', '', 'image', '', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_header_bg_image_repeat'), '_bx_decorous_stg_cpt_option_header_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_header_bg_image_attachment'), '_bx_decorous_stg_cpt_option_header_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_header_bg_image_size'), '_bx_decorous_stg_cpt_option_header_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_site_logo'), '_bx_decorous_stg_cpt_option_site_logo', '', 'image', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_site_logo_alt'), '_bx_decorous_stg_cpt_option_site_logo_alt', '', 'text', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_header_border_color'), '_bx_decorous_stg_cpt_option_header_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_header_border_size'), '_bx_decorous_stg_cpt_option_header_border_size', '1px', 'digit', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_header_shadow'), '_bx_decorous_stg_cpt_option_header_shadow', '', 'digit', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_header_icon_color'), '_bx_decorous_stg_cpt_option_header_icon_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_header_icon_color_hover'), '_bx_decorous_stg_cpt_option_header_icon_color_hover', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_header_link_color'), '_bx_decorous_stg_cpt_option_header_link_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_header_link_color_hover'), '_bx_decorous_stg_cpt_option_header_link_color_hover', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 16);
+
+-- SETTINGS: Decorous template Styles Footer
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_footer'), '_bx_decorous_stg_cpt_category_styles_footer', 40);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_footer_bg_color'), '_bx_decorous_stg_cpt_option_footer_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_footer_bg_image'), '_bx_decorous_stg_cpt_option_footer_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_footer_bg_image_repeat'), '_bx_decorous_stg_cpt_option_footer_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_footer_bg_image_attachment'), '_bx_decorous_stg_cpt_option_footer_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_footer_bg_image_size'), '_bx_decorous_stg_cpt_option_footer_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_footer_content_padding'), '_bx_decorous_stg_cpt_option_footer_content_padding', '1rem', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_footer_border_color'), '_bx_decorous_stg_cpt_option_footer_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_footer_border_size'), '_bx_decorous_stg_cpt_option_footer_border_size', '1px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_footer_shadow'), '_bx_decorous_stg_cpt_option_footer_shadow', '', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_footer_font_color'), '_bx_decorous_stg_cpt_option_footer_font_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_footer_icon_color'), '_bx_decorous_stg_cpt_option_footer_icon_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_footer_icon_color_hover'), '_bx_decorous_stg_cpt_option_footer_icon_color_hover', '', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_footer_link_color'), '_bx_decorous_stg_cpt_option_footer_link_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_footer_link_color_hover'), '_bx_decorous_stg_cpt_option_footer_link_color_hover', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 14);
+
+-- SETTINGS: Decorous template Styles Body
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_body'), '_bx_decorous_stg_cpt_category_styles_body', 50);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_body_bg_color'), '_bx_decorous_stg_cpt_option_body_bg_color', 'rgb(240, 242, 245)', 'rgb', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_body_bg_image'), '_bx_decorous_stg_cpt_option_body_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_body_bg_image_repeat'), '_bx_decorous_stg_cpt_option_body_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_body_bg_image_attachment'), '_bx_decorous_stg_cpt_option_body_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_body_bg_image_size'), '_bx_decorous_stg_cpt_option_body_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_page_width'), '_bx_decorous_stg_cpt_option_page_width', '100%', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_body_icon_color'), '_bx_decorous_stg_cpt_option_body_icon_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_body_icon_color_hover'), '_bx_decorous_stg_cpt_option_body_icon_color_hover', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_body_link_color'), '_bx_decorous_stg_cpt_option_body_link_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_body_link_color_hover'), '_bx_decorous_stg_cpt_option_body_link_color_hover', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 10);
+
+
+-- SETTINGS: Decorous template Styles Cover
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_cover'), '_bx_decorous_stg_cpt_category_styles_cover', 55);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_cover_height'), '_bx_decorous_stg_cpt_option_cover_height', '30vh', 'digit', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_cover_bg_color'), '_bx_decorous_stg_cpt_option_cover_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_cover_content_padding'), '_bx_decorous_stg_cpt_option_cover_content_padding', '2rem 3rem 2rem 3rem', 'digit', '', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_cover_border_color'), '_bx_decorous_stg_cpt_option_cover_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_cover_border_size'), '_bx_decorous_stg_cpt_option_cover_border_size', '1px', 'digit', '', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_cover_border_radius'), '_bx_decorous_stg_cpt_option_cover_border_radius', '0px', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_cover_shadow'), '_bx_decorous_stg_cpt_option_cover_shadow', '', 'digit', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_cover_icon_border_color'), '_bx_decorous_stg_cpt_option_cover_icon_border_color', 'rgba(208, 208, 208, 1)', 'rgba', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_cover_icon_border_size'), '_bx_decorous_stg_cpt_option_cover_icon_border_size', '1px', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_cover_icon_border_radius'), '_bx_decorous_stg_cpt_option_cover_icon_border_radius', '3px', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_cover_icon_shadow'), '_bx_decorous_stg_cpt_option_cover_icon_shadow', 'none', 'digit', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_cover_text_align'), '_bx_decorous_stg_cpt_option_cover_text_align', 'center', 'select', 'left,center,right', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_cover_text_shadow'), '_bx_decorous_stg_cpt_option_cover_text_shadow', '0px 1px 3px rgba(0, 0, 0, .3)', 'digit', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_cover_font_family'), '_bx_decorous_stg_cpt_option_cover_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_cover_font_size'), '_bx_decorous_stg_cpt_option_cover_font_size', '2.0rem', 'digit', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_cover_font_color'), '_bx_decorous_stg_cpt_option_cover_font_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 16),
+(@iCategoryId, CONCAT(@sName, '_cover_font_weight'), '_bx_decorous_stg_cpt_option_cover_font_weight', '700', 'digit', '', '', '', 17);
+
+
+-- SETTINGS: Decorous template Styles Block
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_block'), '_bx_decorous_stg_cpt_category_styles_block', 60);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_block_bg_color'), '_bx_decorous_stg_cpt_option_block_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_block_bg_image'), '_bx_decorous_stg_cpt_option_block_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_block_bg_image_repeat'), '_bx_decorous_stg_cpt_option_block_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_block_bg_image_attachment'), '_bx_decorous_stg_cpt_option_block_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_block_bg_image_size'), '_bx_decorous_stg_cpt_option_block_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_block_content_padding'), '_bx_decorous_stg_cpt_option_block_content_padding', '1rem', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_block_border_color'), '_bx_decorous_stg_cpt_option_block_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_block_border_size'), '_bx_decorous_stg_cpt_option_block_border_size', '1px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_block_border_radius'), '_bx_decorous_stg_cpt_option_block_border_radius', '4px', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_block_shadow'), '_bx_decorous_stg_cpt_option_block_shadow', '', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_block_title_bg_color'), '_bx_decorous_stg_cpt_option_block_title_bg_color', '', 'rgba', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_block_title_padding'), '_bx_decorous_stg_cpt_option_block_title_padding', '0.75rem 1.0rem', 'digit', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_block_title_border_color'), '_bx_decorous_stg_cpt_option_block_title_border_color', '', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_block_title_border_size'), '_bx_decorous_stg_cpt_option_block_title_border_size', '', 'digit', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_block_title_border_radius'), '_bx_decorous_stg_cpt_option_block_title_border_radius', '4px 4px 0px 0px', 'digit', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_block_title_font_family'), '_bx_decorous_stg_cpt_option_block_title_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 16),
+(@iCategoryId, CONCAT(@sName, '_block_title_font_size'), '_bx_decorous_stg_cpt_option_block_title_font_size', '1.25rem', 'digit', '', '', '', 17),
+(@iCategoryId, CONCAT(@sName, '_block_title_font_color'), '_bx_decorous_stg_cpt_option_block_title_font_color', 'rgba(0, 0, 0, 0.85);', 'rgba', '', '', '', 18),
+(@iCategoryId, CONCAT(@sName, '_block_title_font_weight'), '_bx_decorous_stg_cpt_option_block_title_font_weight', '700', 'digit', '', '', '', 19),
+(@iCategoryId, CONCAT(@sName, '_block_title_div_height'), '_bx_decorous_stg_cpt_option_block_title_div_height', '1px', 'digit', '', '', '', 20),
+(@iCategoryId, CONCAT(@sName, '_block_title_div_bg_color'), '_bx_decorous_stg_cpt_option_block_title_div_bg_color', 'rgba(240, 240, 240, 1)', 'rgba', '', '', '', 21);
+
+
+-- SETTINGS: Decorous template Styles Card
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_card'), '_bx_decorous_stg_cpt_category_styles_card', 70);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_card_bg_color'), '_bx_decorous_stg_cpt_option_card_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_card_bg_color_hover'), '_bx_decorous_stg_cpt_option_card_bg_color_hover', 'rgba(255, 255, 255, 0.5)', 'rgba', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_card_bg_image'), '_bx_decorous_stg_cpt_option_card_bg_image', '', 'image', '', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_card_bg_image_repeat'), '_bx_decorous_stg_cpt_option_card_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_card_bg_image_attachment'), '_bx_decorous_stg_cpt_option_card_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_card_bg_image_size'), '_bx_decorous_stg_cpt_option_card_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_card_content_padding'), '_bx_decorous_stg_cpt_option_card_content_padding', '1rem', 'digit', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_card_border_color'), '_bx_decorous_stg_cpt_option_card_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_card_border_size'), '_bx_decorous_stg_cpt_option_card_border_size', '1px', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_card_border_radius'), '_bx_decorous_stg_cpt_option_card_border_radius', '4px', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_card_shadow'), '_bx_decorous_stg_cpt_option_card_shadow', '0px 2px 4px 0px rgba(0, 0, 0, 0.1)', 'digit', '', '', '', 11);
+
+
+-- SETTINGS: Decorous template Styles Popups
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_popup'), '_bx_decorous_stg_cpt_category_styles_popup', 80);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_popup_bg_color'), '_bx_decorous_stg_cpt_option_popup_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_popup_bg_image'), '_bx_decorous_stg_cpt_option_popup_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_popup_bg_image_repeat'), '_bx_decorous_stg_cpt_option_popup_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_popup_bg_image_attachment'), '_bx_decorous_stg_cpt_option_popup_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_popup_bg_image_size'), '_bx_decorous_stg_cpt_option_popup_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_popup_content_padding'), '_bx_decorous_stg_cpt_option_popup_content_padding', '1.25rem', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_popup_border_color'), '_bx_decorous_stg_cpt_option_popup_border_color', 'rgba(0, 0, 0, 0.2)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_popup_border_size'), '_bx_decorous_stg_cpt_option_popup_border_size', '1px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_popup_border_radius'), '_bx_decorous_stg_cpt_option_popup_border_radius', '3px', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_popup_shadow'), '_bx_decorous_stg_cpt_option_popup_shadow', '0px 1px 5px 0px rgba(0, 0, 0, 0.05)', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_popup_title_bg_color'), '_bx_decorous_stg_cpt_option_popup_title_bg_color', 'rgba(230, 240, 250, 0.9)', 'rgba', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_popup_title_padding'), '_bx_decorous_stg_cpt_option_popup_title_padding', '1.25rem', 'digit', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_popup_title_font_family'), '_bx_decorous_stg_cpt_option_popup_title_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_popup_title_font_size'), '_bx_decorous_stg_cpt_option_popup_title_font_size', '1rem', 'digit', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_popup_title_font_color'), '_bx_decorous_stg_cpt_option_popup_title_font_color', 'rgba(40, 50, 60, 0.9)', 'rgba', '', '', '', 15);
+
+
+-- SETTINGS: Decorous template Styles Main Menu
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_menu_main'), '_bx_decorous_stg_cpt_category_styles_menu_main', 90);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_menu_main_bg_color'), '_bx_decorous_stg_cpt_option_menu_main_bg_color', 'rgba(255, 255, 255, 1.0)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_menu_main_bg_image'), '_bx_decorous_stg_cpt_option_menu_main_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_menu_main_bg_image_repeat'), '_bx_decorous_stg_cpt_option_menu_main_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_menu_main_bg_image_attachment'), '_bx_decorous_stg_cpt_option_menu_main_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_menu_main_bg_image_size'), '_bx_decorous_stg_cpt_option_menu_main_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_menu_main_content_padding'), '_bx_decorous_stg_cpt_option_menu_main_content_padding', '', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_menu_main_border_color'), '_bx_decorous_stg_cpt_option_menu_main_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_menu_main_border_size'), '_bx_decorous_stg_cpt_option_menu_main_border_size', '0px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_menu_main_shadow'), '_bx_decorous_stg_cpt_option_menu_main_shadow', '2px 0px 8px 0px rgba(0, 0, 0, 0.1)', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_menu_main_font_family'), '_bx_decorous_stg_cpt_option_menu_main_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_menu_main_font_size'), '_bx_decorous_stg_cpt_option_menu_main_font_size', '1rem', 'digit', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_menu_main_font_color'), '_bx_decorous_stg_cpt_option_menu_main_font_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_menu_main_font_color_hover'), '_bx_decorous_stg_cpt_option_menu_main_font_color_hover', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_menu_main_font_color_active'), '_bx_decorous_stg_cpt_option_menu_main_font_color_active', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_menu_main_font_shadow'), '_bx_decorous_stg_cpt_option_menu_main_font_shadow', 'none', 'digit', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_menu_main_font_weight'), '_bx_decorous_stg_cpt_option_menu_main_font_weight', '400', 'digit', '', '', '', 16);
+
+
+-- SETTINGS: Decorous template Styles Account Menu
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_menu_account'), '_bx_decorous_stg_cpt_category_styles_menu_account', 95);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_menu_account_bg_color'), '_bx_decorous_stg_cpt_option_menu_account_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_menu_account_bg_image'), '_bx_decorous_stg_cpt_option_menu_account_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_menu_account_bg_image_repeat'), '_bx_decorous_stg_cpt_option_menu_account_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_menu_account_bg_image_attachment'), '_bx_decorous_stg_cpt_option_menu_account_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_menu_account_bg_image_size'), '_bx_decorous_stg_cpt_option_menu_account_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_menu_account_content_padding'), '_bx_decorous_stg_cpt_option_menu_account_content_padding', '1.25rem', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_menu_account_border_color'), '_bx_decorous_stg_cpt_option_menu_account_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_menu_account_border_size'), '_bx_decorous_stg_cpt_option_menu_account_border_size', '1px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_menu_account_shadow'), '_bx_decorous_stg_cpt_option_menu_account_shadow', '0px 8px 16px 0px rgba(0, 0, 0, 0.1)', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_menu_account_font_family'), '_bx_decorous_stg_cpt_option_menu_account_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_menu_account_font_size'), '_bx_decorous_stg_cpt_option_menu_account_font_size', '1rem', 'digit', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_menu_account_font_color'), '_bx_decorous_stg_cpt_option_menu_account_font_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_menu_account_font_color_hover'), '_bx_decorous_stg_cpt_option_menu_account_font_color_hover', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_menu_account_font_color_active'), '_bx_decorous_stg_cpt_option_menu_account_font_color_active', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_menu_account_font_shadow'), '_bx_decorous_stg_cpt_option_menu_account_font_shadow', 'none', 'digit', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_menu_account_font_weight'), '_bx_decorous_stg_cpt_option_menu_account_font_weight', '400', 'digit', '', '', '', 16);
+
+
+-- SETTINGS: Decorous template Styles Add Menu
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_menu_add'), '_bx_decorous_stg_cpt_category_styles_menu_add', 97);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_menu_add_bg_color'), '_bx_decorous_stg_cpt_option_menu_add_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_menu_add_bg_image'), '_bx_decorous_stg_cpt_option_menu_add_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_menu_add_bg_image_repeat'), '_bx_decorous_stg_cpt_option_menu_add_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_menu_add_bg_image_attachment'), '_bx_decorous_stg_cpt_option_menu_add_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_menu_add_bg_image_size'), '_bx_decorous_stg_cpt_option_menu_add_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_menu_add_content_padding'), '_bx_decorous_stg_cpt_option_menu_add_content_padding', '0.5rem 1.25rem', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_menu_add_border_color'), '_bx_decorous_stg_cpt_option_menu_add_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_menu_add_border_size'), '_bx_decorous_stg_cpt_option_menu_add_border_size', '1px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_menu_add_shadow'), '_bx_decorous_stg_cpt_option_menu_add_shadow', '0px 8px 16px 0px rgba(0, 0, 0, 0.1)', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_menu_add_font_family'), '_bx_decorous_stg_cpt_option_menu_add_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_menu_add_font_size'), '_bx_decorous_stg_cpt_option_menu_add_font_size', '1rem', 'digit', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_menu_add_font_color'), '_bx_decorous_stg_cpt_option_menu_add_font_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_menu_add_font_color_hover'), '_bx_decorous_stg_cpt_option_menu_add_font_color_hover', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_menu_add_font_color_active'), '_bx_decorous_stg_cpt_option_menu_add_font_color_active', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_menu_add_font_shadow'), '_bx_decorous_stg_cpt_option_menu_add_font_shadow', 'none', 'digit', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_menu_add_font_weight'), '_bx_decorous_stg_cpt_option_menu_add_font_weight', '400', 'digit', '', '', '', 16);
+
+
+-- SETTINGS: Decorous template Styles Page Menu
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_menu_page'), '_bx_decorous_stg_cpt_category_styles_menu_page', 100);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_menu_page_bg_color'), '_bx_decorous_stg_cpt_option_menu_page_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_menu_page_bg_image'), '_bx_decorous_stg_cpt_option_menu_page_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_menu_page_bg_image_repeat'), '_bx_decorous_stg_cpt_option_menu_page_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_menu_page_bg_image_attachment'), '_bx_decorous_stg_cpt_option_menu_page_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_menu_page_bg_image_size'), '_bx_decorous_stg_cpt_option_menu_page_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_menu_page_content_padding'), '_bx_decorous_stg_cpt_option_menu_page_content_padding', '0px', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_menu_page_border_color'), '_bx_decorous_stg_cpt_option_menu_page_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_menu_page_border_size'), '_bx_decorous_stg_cpt_option_menu_page_border_size', '1px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_menu_page_shadow'), '_bx_decorous_stg_cpt_option_menu_page_shadow', '', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_menu_page_font_family'), '_bx_decorous_stg_cpt_option_menu_page_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_menu_page_font_size'), '_bx_decorous_stg_cpt_option_menu_page_font_size', '1rem', 'digit', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_menu_page_font_color'), '_bx_decorous_stg_cpt_option_menu_page_font_color', 'rgba(89, 89, 89, 1)', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_menu_page_font_color_hover'), '_bx_decorous_stg_cpt_option_menu_page_font_color_hover', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_menu_page_font_color_active'), '_bx_decorous_stg_cpt_option_menu_page_font_color_active', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_menu_page_font_shadow'), '_bx_decorous_stg_cpt_option_menu_page_font_shadow', 'none', 'digit', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_menu_page_font_weight'), '_bx_decorous_stg_cpt_option_menu_page_font_weight', '400', 'digit', '', '', '', 16);
+
+
+-- SETTINGS: Decorous template Styles Slide Menus
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_menu_slide'), '_bx_decorous_stg_cpt_category_styles_menu_slide', 110);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_menu_slide_bg_color'), '_bx_decorous_stg_cpt_option_menu_slide_bg_color', 'rgba(255, 255, 255, 0.9)', 'rgba', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_bg_image'), '_bx_decorous_stg_cpt_option_menu_slide_bg_image', '', 'image', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_bg_image_repeat'), '_bx_decorous_stg_cpt_option_menu_slide_bg_image_repeat', 'no-repeat', 'select', 'no-repeat,repeat,repeat-x,repeat-y', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_bg_image_attachment'), '_bx_decorous_stg_cpt_option_menu_slide_bg_image_attachment', 'scroll', 'select', 'fixed,scroll,local', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_bg_image_size'), '_bx_decorous_stg_cpt_option_menu_slide_bg_image_size', 'cover', 'select', 'auto,cover,contain', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_content_padding'), '_bx_decorous_stg_cpt_option_menu_slide_content_padding', '1.25rem', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_border_color'), '_bx_decorous_stg_cpt_option_menu_slide_border_color', 'rgba(0, 0, 0, 0.1)', 'rgba', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_border_size'), '_bx_decorous_stg_cpt_option_menu_slide_border_size', '1px 0px 1px 0px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_shadow'), '_bx_decorous_stg_cpt_option_menu_slide_shadow', 'none', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_font_family'), '_bx_decorous_stg_cpt_option_menu_slide_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_font_size'), '_bx_decorous_stg_cpt_option_menu_slide_font_size', '1.0rem', 'digit', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_font_color'), '_bx_decorous_stg_cpt_option_menu_slide_font_color', 'rgba(40, 50, 60, 0.8)', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_font_color_hover'), '_bx_decorous_stg_cpt_option_menu_slide_font_color_hover', 'rgba(40, 50, 60, 0.9)', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_font_color_active'), '_bx_decorous_stg_cpt_option_menu_slide_font_color_active', 'rgba(20, 30, 40, 1)', 'rgba', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_font_shadow'), '_bx_decorous_stg_cpt_option_menu_slide_font_shadow', 'none', 'digit', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_menu_slide_font_weight'), '_bx_decorous_stg_cpt_option_menu_slide_font_weight', '400', 'digit', '', '', '', 16);
+
+
+-- SETTINGS: Decorous template Styles Forms
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_form'), '_bx_decorous_stg_cpt_category_styles_form', 120);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_form_input_height'), '_bx_decorous_stg_cpt_option_form_input_height', '2rem', 'digit', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_form_input_bg_color'), '_bx_decorous_stg_cpt_option_form_input_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_form_input_bg_color_active'), '_bx_decorous_stg_cpt_option_form_input_bg_color_active', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_form_input_border_color'), '_bx_decorous_stg_cpt_option_form_input_border_color', 'rgba(217, 217, 217, 1)', 'rgba', '', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_form_input_border_color_active'), '_bx_decorous_stg_cpt_option_form_input_border_color_active', 'rgba(64, 169, 255, 1)', 'rgba', '', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_form_input_border_size'), '_bx_decorous_stg_cpt_option_form_input_border_size', '1px', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_form_input_shadow'), '_bx_decorous_stg_cpt_option_form_input_shadow', '', 'digit', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_form_input_font_family'), '_bx_decorous_stg_cpt_option_form_input_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_form_input_font_size'), '_bx_decorous_stg_cpt_option_form_input_font_size', '1rem', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_form_input_font_color'), '_bx_decorous_stg_cpt_option_form_input_font_color', 'rgba(0, 0, 0, 0.65)', 'rgba', '', '', '', 10);
+
+
+-- SETTINGS: Decorous template Styles Large Buttons
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_large_button'), '_bx_decorous_stg_cpt_category_styles_large_button', 130);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_button_lg_height'), '_bx_decorous_stg_cpt_option_button_lg_height', '2rem', 'digit', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_button_lg_bg_color'), '_bx_decorous_stg_cpt_option_button_lg_bg_color', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_button_lg_bg_color_hover'), '_bx_decorous_stg_cpt_option_button_lg_bg_color_hover', 'rgba(64, 169, 255, 1)', 'rgba', '', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_button_lg_border_color'), '_bx_decorous_stg_cpt_option_button_lg_border_color', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_button_lg_border_color_hover'), '_bx_decorous_stg_cpt_option_button_lg_border_color_hover', 'rgba(64, 169, 255, 1)', 'rgba', '', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_button_lg_border_size'), '_bx_decorous_stg_cpt_option_button_lg_border_size', '1px', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_button_lg_border_radius'), '_bx_decorous_stg_cpt_option_button_lg_border_radius', '4px', 'digit', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_button_lg_shadow'), '_bx_decorous_stg_cpt_option_button_lg_shadow', '0px 2px 0px 0px rgba(0, 0, 0, 0.016)', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_button_lg_font_family'), '_bx_decorous_stg_cpt_option_button_lg_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_button_lg_font_size'), '_bx_decorous_stg_cpt_option_button_lg_font_size', '0.75rem', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_button_lg_font_color'), '_bx_decorous_stg_cpt_option_button_lg_font_color', 'rgba(255, 255, 255, 0.9)', 'rgba', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_button_lg_font_color_hover'), '_bx_decorous_stg_cpt_option_button_lg_font_color_hover', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_button_lg_font_shadow'), '_bx_decorous_stg_cpt_option_button_lg_font_shadow', '0px -1px 0px; rgba(0, 0, 0, 0.12)', 'digit', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_button_lg_font_weight'), '_bx_decorous_stg_cpt_option_button_lg_font_weight', '600', 'digit', '', '', '', 14);
+
+-- SETTINGS: Decorous template Styles Small Buttons
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_small_button'), '_bx_decorous_stg_cpt_category_styles_small_button', 140);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_button_sm_height'), '_bx_decorous_stg_cpt_option_button_sm_height', '1.75rem', 'digit', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_button_sm_bg_color'), '_bx_decorous_stg_cpt_option_button_sm_bg_color', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_button_sm_bg_color_hover'), '_bx_decorous_stg_cpt_option_button_sm_bg_color_hover', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_button_sm_border_color'), '_bx_decorous_stg_cpt_option_button_sm_border_color', 'rgba(217, 217, 217, 1)', 'rgba', '', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_button_sm_border_color_hover'), '_bx_decorous_stg_cpt_option_button_sm_border_color_hover', 'rgba(64, 169, 255, 1)', 'rgba', '', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_button_sm_border_size'), '_bx_decorous_stg_cpt_option_button_sm_border_size', '1px', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_button_sm_border_radius'), '_bx_decorous_stg_cpt_option_button_sm_border_radius', '4px', 'digit', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_button_sm_shadow'), '_bx_decorous_stg_cpt_option_button_sm_shadow', '0px 2px 0px 0px rgba(0, 0, 0, 0.016)', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_button_sm_font_family'), '_bx_decorous_stg_cpt_option_button_sm_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_button_sm_font_size'), '_bx_decorous_stg_cpt_option_button_sm_font_size', '0.875rem', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_button_sm_font_color'), '_bx_decorous_stg_cpt_option_button_sm_font_color', 'rgba(0, 0, 0, 0.65)', 'rgba', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_button_sm_font_color_hover'), '_bx_decorous_stg_cpt_option_button_sm_font_color_hover', 'rgba(64, 169, 255, 1)', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_button_sm_font_shadow'), '_bx_decorous_stg_cpt_option_button_sm_font_shadow', 'none', 'digit', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_button_sm_font_weight'), '_bx_decorous_stg_cpt_option_button_sm_font_weight', '400', 'digit', '', '', '', 14);
+
+-- SETTINGS: Decorous template Styles Font
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_font'), '_bx_decorous_stg_cpt_category_styles_font', 150);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_font_family'), '_bx_decorous_stg_cpt_option_font_family', '-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif', 'digit', '', '', '', 1),
+(@iCategoryId, CONCAT(@sName, '_font_size_default'), '_bx_decorous_stg_cpt_option_font_size_default', '16px', 'digit', '', '', '', 2),
+(@iCategoryId, CONCAT(@sName, '_font_color_default'), '_bx_decorous_stg_cpt_option_font_color_default', 'rgba(40, 50, 60, 0.9)', 'rgba', '', '', '', 3),
+(@iCategoryId, CONCAT(@sName, '_font_color_grayed'), '_bx_decorous_stg_cpt_option_font_color_grayed', 'rgba(40, 50, 60, 0.5)', 'rgba', '', '', '', 4),
+(@iCategoryId, CONCAT(@sName, '_font_color_contrasted'), '_bx_decorous_stg_cpt_option_font_color_contrasted', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 5),
+(@iCategoryId, CONCAT(@sName, '_font_size_small'), '_bx_decorous_stg_cpt_option_font_size_small', '12px', 'digit', '', '', '', 6),
+(@iCategoryId, CONCAT(@sName, '_font_size_middle'), '_bx_decorous_stg_cpt_option_font_size_middle', '16px', 'digit', '', '', '', 7),
+(@iCategoryId, CONCAT(@sName, '_font_size_large'), '_bx_decorous_stg_cpt_option_font_size_large', '20px', 'digit', '', '', '', 8),
+(@iCategoryId, CONCAT(@sName, '_font_size_h1'), '_bx_decorous_stg_cpt_option_font_size_h1', '28px', 'digit', '', '', '', 9),
+(@iCategoryId, CONCAT(@sName, '_font_weight_h1'), '_bx_decorous_stg_cpt_option_font_weight_h1', '700', 'digit', '', '', '', 10),
+(@iCategoryId, CONCAT(@sName, '_font_color_default_h1'), '_bx_decorous_stg_cpt_option_font_color_default_h1', 'rgba(40, 50, 60, 1)', 'rgba', '', '', '', 11),
+(@iCategoryId, CONCAT(@sName, '_font_color_grayed_h1'), '_bx_decorous_stg_cpt_option_font_color_grayed_h1', 'rgba(40, 50, 60, 0.5)', 'rgba', '', '', '', 12),
+(@iCategoryId, CONCAT(@sName, '_font_color_contrasted_h1'), '_bx_decorous_stg_cpt_option_font_color_contrasted_h1', 'rgba(255, 255, 255, 0.9)', 'rgba', '', '', '', 13),
+(@iCategoryId, CONCAT(@sName, '_font_color_link_h1'), '_bx_decorous_stg_cpt_option_font_color_link_h1', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 14),
+(@iCategoryId, CONCAT(@sName, '_font_color_link_h1_hover'), '_bx_decorous_stg_cpt_option_font_color_link_h1_hover', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 15),
+(@iCategoryId, CONCAT(@sName, '_font_size_h2'), '_bx_decorous_stg_cpt_option_font_size_h2', '24px', 'digit', '', '', '', 16),
+(@iCategoryId, CONCAT(@sName, '_font_weight_h2'), '_bx_decorous_stg_cpt_option_font_weight_h2', '700', 'digit', '', '', '', 17),
+(@iCategoryId, CONCAT(@sName, '_font_color_default_h2'), '_bx_decorous_stg_cpt_option_font_color_default_h2', 'rgba(40, 60, 80, 0.9)', 'rgba', '', '', '', 18),
+(@iCategoryId, CONCAT(@sName, '_font_color_grayed_h2'), '_bx_decorous_stg_cpt_option_font_color_grayed_h2', 'rgba(40, 60, 80, 0.5)', 'rgba', '', '', '', 19),
+(@iCategoryId, CONCAT(@sName, '_font_color_contrasted_h2'), '_bx_decorous_stg_cpt_option_font_color_contrasted_h2', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 20),
+(@iCategoryId, CONCAT(@sName, '_font_color_link_h2'), '_bx_decorous_stg_cpt_option_font_color_link_h2', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 21),
+(@iCategoryId, CONCAT(@sName, '_font_color_link_h2_hover'), '_bx_decorous_stg_cpt_option_font_color_link_h2_hover', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 22),
+(@iCategoryId, CONCAT(@sName, '_font_size_h3'), '_bx_decorous_stg_cpt_option_font_size_h3', '20px', 'digit', '', '', '', 23),
+(@iCategoryId, CONCAT(@sName, '_font_weight_h3'), '_bx_decorous_stg_cpt_option_font_weight_h3', '500', 'digit', '', '', '', 24),
+(@iCategoryId, CONCAT(@sName, '_font_color_default_h3'), '_bx_decorous_stg_cpt_option_font_color_default_h3', 'rgba(40, 60, 80, 0.9)', 'rgba', '', '', '', 25),
+(@iCategoryId, CONCAT(@sName, '_font_color_grayed_h3'), '_bx_decorous_stg_cpt_option_font_color_grayed_h3', 'rgba(40, 60, 80, 0.5)', 'rgba', '', '', '', 26),
+(@iCategoryId, CONCAT(@sName, '_font_color_contrasted_h3'), '_bx_decorous_stg_cpt_option_font_color_contrasted_h3', 'rgba(255, 255, 255, 1)', 'rgba', '', '', '', 27),
+(@iCategoryId, CONCAT(@sName, '_font_color_link_h3'), '_bx_decorous_stg_cpt_option_font_color_link_h3', 'rgba(24, 144, 255, 0.9)', 'rgba', '', '', '', 28),
+(@iCategoryId, CONCAT(@sName, '_font_color_link_h3_hover'), '_bx_decorous_stg_cpt_option_font_color_link_h3_hover', 'rgba(24, 144, 255, 1)', 'rgba', '', '', '', 29);
+
+-- SETTINGS: Decorous template Custom Styles
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_styles_custom'), '_bx_decorous_stg_cpt_category_styles_custom', 160);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_styles_custom'), '_bx_decorous_stg_cpt_option_styles_custom', 'div.bx-market-unit-cover div.bx-base-text-unit-no-thumb {\r\n border-width: 0px;\r\n}', 'text', '', '', '', 1);
+
+-- SETTINGS: Decorous template Viewport Tablet
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_viewport_tablet'), '_bx_decorous_stg_cpt_category_viewport_tablet', 170);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_vpt_font_size_scale'), '_bx_decorous_stg_cpt_option_vpt_font_size_scale', '100%', 'digit', '', '', '', 1);
+
+-- SETTINGS: Decorous template Viewport Mobile
+INSERT INTO `sys_options_categories`(`type_id`, `name`, `caption`, `order`) VALUES 
+(@iTypeId, CONCAT(@sName, '_viewport_mobile'), '_bx_decorous_stg_cpt_category_viewport_mobile', 180);
+SET @iCategoryId = LAST_INSERT_ID();
+
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iCategoryId, CONCAT(@sName, '_vpm_font_size_scale'), '_bx_decorous_stg_cpt_option_vpm_font_size_scale', '87.5%', 'digit', '', '', '', 1);
+
+
+-- STUDIO PAGE & WIDGET
+INSERT INTO `sys_std_pages`(`index`, `name`, `header`, `caption`, `icon`) VALUES
+(3, @sName, '', '', 'bx_decorous@modules/boonex/decorous/|std-icon.svg');
+SET @iPageId = LAST_INSERT_ID();
+
+SET @iParentPageId = (SELECT `id` FROM `sys_std_pages` WHERE `name`='home');
+SET @iParentPageOrder = (SELECT MAX(`order`) FROM `sys_std_pages_widgets` WHERE `page_id`=@iParentPageId);
+INSERT INTO `sys_std_widgets`(`page_id`, `module`, `type`, `url`, `click`, `icon`, `caption`, `cnt_notices`, `cnt_actions`) VALUES
+(@iPageId, @sName, 'appearance', CONCAT('{url_studio}design.php?name=', @sName), '', 'bx_decorous@modules/boonex/decorous/|std-icon.svg', '_bx_decorous_wgt_cpt', '', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:11:"get_actions";s:6:"params";a:0:{}s:5:"class";s:18:"TemplStudioDesigns";}');
+INSERT INTO `sys_std_pages_widgets`(`page_id`, `widget_id`, `order`) VALUES
+(@iParentPageId, LAST_INSERT_ID(), @iParentPageOrder + 1);

+ 15 - 0
modules/boonex/decorous/updates/13.0.2_13.0.3/source/install/sql/uninstall.sql

@@ -0,0 +1,15 @@
+SET @sName = 'bx_decorous';
+
+
+-- SETTINGS
+DELETE FROM `top`, `toc`, `to` USING `sys_options_types` AS `top` LEFT JOIN `sys_options_categories` AS `toc` ON `top`.`id`=`toc`.`type_id` LEFT JOIN `sys_options` AS `to` ON `toc`.`id`=`to`.`category_id` WHERE `top`.`name`=@sName;
+DELETE FROM `sys_options` WHERE `name` LIKE 'bx_decorous_site_%';
+
+-- MIXES
+DELETE FROM `tom`, `tomo` USING `sys_options_mixes` AS `tom` LEFT JOIN `sys_options_mixes2options` AS `tomo` ON `tom`.`id`=`tomo`.`mix_id` WHERE `tom`.`type`=@sName;
+
+
+-- STUDIO PAGE & WIDGET
+DELETE FROM `tp`, `tw`, `twb`, `tpw` 
+USING `sys_std_pages` AS `tp` LEFT JOIN `sys_std_widgets` AS `tw` ON `tp`.`id` = `tw`.`page_id` LEFT JOIN `sys_std_widgets_bookmarks` AS `twb` ON `tw`.`id` = `twb`.`widget_id` LEFT JOIN `sys_std_pages_widgets` AS `tpw` ON `tw`.`id` = `tpw`.`widget_id`
+WHERE  `tp`.`name` = @sName;

+ 51 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/install/config.php

@@ -0,0 +1,51 @@
+<?php
+/**
+ * Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
+ * CC-BY License - http://creativecommons.org/licenses/by/3.0/
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'title' => 'Lucid',
+    'version_from' => '13.0.2',
+    'version_to' => '13.0.3',
+    'vendor' => 'BoonEx',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/lucid/updates/update_13.0.2_13.0.3/',
+    'home_uri' => 'lucid_update_1302_1303',
+
+    'module_dir' => 'boonex/lucid/',
+    'module_uri' => 'lucid',
+
+    'db_prefix' => 'bx_lucid_',
+    'class_prefix' => 'BxLucid',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 1,
+        'update_files' => 1,
+        'update_languages' => 1,
+        'clear_db_cache' => 1,
+    ),
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Boonex Lucid Template',
+
+    /**
+     * Files Section
+     */
+    'delete_files' => array(),
+);

+ 26 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/install/installer.php

@@ -0,0 +1,26 @@
+<?php
+/**
+ * Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
+ * CC-BY License - http://creativecommons.org/licenses/by/3.0/
+ */
+
+class BxLucidUpdater extends BxDolStudioUpdater
+{
+    function __construct($aConfig)
+    {
+        parent::__construct($aConfig);
+    }
+
+    public function update($aParams)
+    {
+        $aResult = parent::update($aParams);
+        if(!$aResult['result'])
+            return $aResult;
+
+        $oCacheUtilities = BxDolCacheUtilities::getInstance();
+        $oCacheUtilities->clear('css');
+        $oCacheUtilities->clear('template');
+
+        return $aResult;
+    }
+}

+ 5 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/install/langs/en.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources name="en" flag="gb" title="English">
+	<string_del name="_bx_lucid_stg_cpt_option_site_logo_width"><![CDATA[Logo width]]></string_del>
+	<string_del name="_bx_lucid_stg_cpt_option_site_logo_height"><![CDATA[Logo height]]></string_del>
+</resources>

+ 15 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/install/sql/enable.sql

@@ -0,0 +1,15 @@
+SET @sName = 'bx_lucid';
+
+
+-- ALERTS
+SET @iHandler = (SELECT `id` FROM `sys_alerts_handlers` WHERE `name`=@sName LIMIT 1);
+DELETE FROM `sys_alerts_handlers` WHERE `name`=@sName LIMIT 1;
+DELETE FROM `sys_alerts` WHERE `unit`='system' AND `action` IN ('save_setting', 'change_logo') AND `handler_id`=@iHandler;
+
+INSERT INTO `sys_alerts_handlers` (`name`, `class`, `file`, `service_call`) VALUES 
+(@sName, 'BxLucidAlertsResponse', 'modules/boonex/lucid/classes/BxLucidAlertsResponse.php', '');
+SET @iHandler := LAST_INSERT_ID();
+
+INSERT INTO `sys_alerts` (`unit`, `action`, `handler_id`) VALUES
+('system', 'save_setting', @iHandler),
+('system', 'change_logo', @iHandler);

+ 17 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/install/sql/install.sql

@@ -0,0 +1,17 @@
+SET @sName = 'bx_lucid';
+
+-- SETTINGS
+SET @iSystemCategoryId = (SELECT `id` FROM `sys_options_categories` WHERE `name`='system' LIMIT 1);
+SET @iSystemCategoryOrder = (SELECT IFNULL(MAX(`order`), 0) FROM `sys_options` WHERE `category_id`=@iSystemCategoryId LIMIT 1);
+
+DELETE FROM `sys_options` WHERE `name`='bx_lucid_site_logo_aspect_ratio';
+INSERT INTO `sys_options`(`category_id`, `name`, `caption`, `value`, `type`, `extra`, `check`, `check_error`, `order`) VALUES
+(@iSystemCategoryId, CONCAT(@sName, '_site_logo_aspect_ratio'), '', '', 'digit', '', '', '', @iSystemCategoryOrder + 1);
+
+DELETE FROM `sys_options` WHERE `name` IN ('bx_lucid_site_logo_width', 'bx_lucid_site_logo_height');
+DELETE FROM `sys_options_mixes2options` WHERE `option` IN ('bx_lucid_site_logo_width', 'bx_lucid_site_logo_height');
+
+UPDATE `sys_options` SET `value`='1280' WHERE `name`=CONCAT(@sName, '_page_width');
+
+SET @iMixId = (SELECT `id` FROM `sys_options_mixes` WHERE `name`='Light-Mix' LIMIT 1);
+UPDATE `sys_options_mixes2options` SET `value`='1280px' WHERE `option`='bx_lucid_page_width' AND `mix_id`=@iMixId;

+ 22 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/classes/BxLucidAlertsResponse.php

@@ -0,0 +1,22 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    Lucid Lucid template
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+class BxLucidAlertsResponse extends BxBaseModTemplateAlertsResponse
+{
+    function __construct()
+    {
+        $this->_sModule = 'bx_lucid';
+
+        parent::__construct();
+    }
+}
+
+/** @} */

+ 36 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/_header_js_toolbar.html

@@ -0,0 +1,36 @@
+<script language="javascript">
+    var iToolbarSubmenuTopOffset = -2;
+
+    $(document).ready(function () {
+		if (aDolOptions.sys_fixed_header !== undefined && aDolOptions.sys_fixed_header != 'on'){
+			// hide toolbar on scrolldown, show - on scroll up
+			new Headroom($('#bx-toolbar').get(0), {
+				tolerance: {
+					down: 10,
+					up: 20
+				},
+				offset: 200,
+				classes: {
+					initial: "bx-toolbar-anim",
+					pinned: "bx-toolbar-reset",
+					unpinned: "bx-toolbar-up"
+				},
+				onUnpin: function() {
+					bx_menu_slide_close_all_opened();
+				}
+			}).init();
+
+			var mq = bx_check_mq();
+			if(mq == 'mobile') {
+				//process submenu in top menu
+				$('.bx-menu-floating-blocks-big:visible > li:has(.bx-sliding-smenu-submenu) > a').bind('click', function() {
+					var sActive = 'bx-sliding-smenu-tab-active';
+					$(this).parents('.bx-menu-floating-blocks-big:visible:first').find('li.' + sActive).removeClass(sActive);
+					$(this).parent('li:first').toggleClass(sActive);
+
+					return false;
+				});
+			}
+		}
+    });
+</script>

+ 1343 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/css/default.less

@@ -0,0 +1,1343 @@
+@import (reference) '../../../../../../../template/css/_mixins.less';
+
+.@{bx-root-class-name}.bx-def-font {
+    font-family:@bx-font-family;
+    font-weight:400; /* 26.13.13: prev val 300 */
+    .font-size(@bx-font-size-default);
+    color:@bx-font-color-default;
+}
+
+.@{bx-root-class-name}.bx-def-color-bg-page {
+    .background-color (@bx-color-page);
+}
+
+.@{bx-root-class-name}.bx-def-image-bg-page {
+    background-image: @bx-image-bg-page;
+    background-repeat: @bx-image-bg-page-repeat;
+    background-size: @bx-image-bg-page-size;
+    background-position: center center;
+}
+
+.@{bx-root-class-name} {
+    @import '../../../../../../../template/css/default.less';
+
+    /**
+     * Is used for inputs and buttons. They should have the same value 
+     * because Input and Button can be positioned in one line.
+     */
+    @base-input-box-sizing: border-box;
+
+
+    /* height */
+    .bx-header {
+        height: auto !important;
+    }
+
+    #bx-toolbar-content {
+        height: @bx-height-header !important;
+    }
+
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a img:not(.bx-base-pofile-unit-thumb) {
+        max-width: @bx-height-header - 2;
+        max-height: @bx-height-header - 2;
+    }
+
+    .bx-main-content .bx-main-column.narrow .bx-menu-toolbar-padding,
+    .cd-main-content .content-wrapper {
+        padding-top: @bx-height-header;
+    }
+
+
+    /* content paddings */
+    .bx-content-padding-header {
+        padding: @bx-content-padding-header;
+    }
+    .bx-content-padding-footer {
+        padding: @bx-content-padding-footer;
+    }
+    .bx-content-padding-block {
+        padding: @bx-content-padding-block;
+    }
+
+
+    /* shadow */
+    .bx-shadow-header {
+        -webkit-box-shadow: @bx-shadow-header;
+        -moz-box-shadow: @bx-shadow-header;
+        box-shadow: @bx-shadow-header;
+    }
+    .bx-shadow-footer {
+        -webkit-box-shadow: @bx-shadow-footer;
+        -moz-box-shadow: @bx-shadow-footer;
+        box-shadow: @bx-shadow-footer;
+    }
+    .bx-shadow-block {
+        -webkit-box-shadow: @bx-shadow-block;
+        -moz-box-shadow: @bx-shadow-block;
+        box-shadow: @bx-shadow-block;
+    }
+    .bx-def-box {
+        -webkit-box-shadow: @bx-shadow-card;
+        -moz-box-shadow: @bx-shadow-card;
+        box-shadow: @bx-shadow-card;
+    }
+    .bx-popup-applied {
+        border-radius: @bx-border-radius-popup;
+        background-clip: padding-box;
+    }
+    .bx-popup-applied:not(.bx-popup-chain),
+    .bx-popup-applied.bx-popup-chain .bx-popup-chain-item {
+        -webkit-box-shadow: @bx-shadow-popup;
+        -moz-box-shadow: @bx-shadow-popup;
+        box-shadow: @bx-shadow-popup;
+    }
+    .bx-popup-applied.bx-popup-chain .bx-popup-chain-item a:hover {
+        background-color: @bx-color-hl;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper {
+        -webkit-box-shadow: @bx-shadow-menu-slide;
+        -moz-box-shadow: @bx-shadow-menu-slide;
+        box-shadow: @bx-shadow-menu-slide;
+    }
+
+
+    /* background images */
+    .bx-def-image-bg-header,
+    .bx-def-image-bg-footer,
+    .bx-def-image-bg-block,
+    .bx-def-box,
+    .bx-popup-color-bg,
+    .bx-popup-wrapper.bx-popup-slide-wrapper,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main,
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main,
+    #bx-sliding-menu-account.bx-sliding-menu-main,
+    .bx-menu-main-bar-wrapper {
+        background-position: center center;
+    }
+    .bx-def-image-bg-header {
+        background-image: @bx-image-bg-header;
+        background-repeat: @bx-image-bg-header-repeat;
+        background-size: @bx-image-bg-header-size;
+    }
+    .bx-def-image-bg-footer {
+        background-image: @bx-image-bg-footer;
+        background-repeat: @bx-image-bg-footer-repeat;
+        background-size: @bx-image-bg-footer-size;
+    }
+    .bx-def-image-bg-block {
+        background-image: @bx-image-bg-block;
+        background-repeat: @bx-image-bg-block-repeat;
+        background-size: @bx-image-bg-block-size;
+    }
+    .bx-def-box {
+        background-image: @bx-image-bg-box;
+        background-repeat: @bx-image-bg-box-repeat;
+        background-attachment: @bx-image-bg-box-attachment;
+        background-size: @bx-image-bg-box-size;
+    }
+
+    /* body */
+    a {
+        color: @bx-color-link-body; 
+    }
+    a:hover {
+        color: @bx-color-link-body-hover; 
+    }
+    .sys-icon:not(.sys-colored):not(.bx-vote-star),
+    .sys-icon-a:not(.sys-colored):not(.bx-vote-star) {
+        color: @bx-color-icon-body; 
+    }
+    a:hover > .sys-icon:not(.sys-colored),
+    a:hover > .sys-icon-a:not(.sys-colored) {
+        color: @bx-color-icon-body-hover; 
+    }
+    .sys-icon-a i {
+        .background-color (@bx-color-icon-body) !important;
+        color: @bx-color-icon-body;
+    }
+    a:hover > .sys-icon-a i {
+        .background-color (@bx-color-icon-body-hover) !important;
+        color: @bx-color-icon-body-hover;
+    }
+
+    /* header */
+    .bx-header.bx-def-color-bg-header {
+        .background-color (@bx-color-header);
+    }
+    .bx-header.bx-def-border-header {
+        border-bottom-width: @bx-border-width-header;
+        border-bottom-style: @bx-border-type;
+        border-bottom-color: @bx-color-border-header;
+    }
+    .bx-header a {
+        color: @bx-color-link-header; 
+    }
+    .bx-header a:hover {
+        color: @bx-color-link-header-hover;
+    }
+    .bx-header .sys-icon:not(.sys-colored),
+    .bx-header .sys-icon-a:not(.sys-colored),
+    .cd-dropdown .cd-dropdown-content a .sys-icon:not(.sys-colored),
+    .cd-dropdown .cd-dropdown-content a .sys-icon-a:not(.sys-colored) {
+        color: @bx-color-icon-header; 
+    }
+    .bx-header .cd-nav-trigger span, 
+    .bx-header .cd-nav-trigger span::before, 
+    .bx-header .cd-nav-trigger span::after,
+    .bx-header .cd-nav-trigger.nav-is-visible span::before, 
+    .bx-header .cd-nav-trigger.nav-is-visible span::after {
+        background: @bx-color-icon-header;
+    }
+    .bx-header a:hover .sys-icon,
+    .bx-header a:hover .sys-icon-a,
+    .bx-header li.bx-menu-tab-active a .sys-icon,
+    .bx-header li.bx-menu-tab-active a .sys-icon-a {
+        color: @bx-color-icon-header-hover; 
+    }
+    .bx-header .cd-nav-trigger.nav-is-visible:hover span {
+        background: rgba(255, 255, 255, 0);
+    }
+    .bx-header .cd-nav-trigger:hover span, 
+    .bx-header .cd-nav-trigger:hover span::before, 
+    .bx-header .cd-nav-trigger:hover span::after,
+    .bx-header .cd-nav-trigger.nav-is-visible:hover span::before, 
+    .bx-header .cd-nav-trigger.nav-is-visible:hover span::after {
+        background: @bx-color-icon-header-hover;
+    }
+    .bx-header .sys-icon-a:not(.sys-colored) i {
+        .background-color (@bx-color-icon-header) !important;
+        color: @bx-color-icon-header;
+    }
+    .bx-header a:hover .sys-icon-a i {
+        .background-color (@bx-color-icon-header-hover) !important;
+        color: @bx-color-icon-header-hover;
+    }
+
+    /* footer */
+    .bx-footer-wrapper.bx-def-color-bg-footer {
+        .background-color (@bx-color-footer);    
+    }
+    .bx-footer-wrapper.bx-def-border-footer {
+        border-top-width: @bx-border-width-footer;
+        border-top-style: @bx-border-type;
+        border-top-color: @bx-color-border-footer;
+    }
+
+    .bx-footer {
+        color: @bx-font-color-footer;
+    }
+    .bx-footer a {
+        color: @bx-color-link-footer; 
+    }
+    .bx-footer a:hover {
+        color: @bx-color-link-footer-hover; 
+    }
+    .bx-footer .sys-icon,
+    .bx-footer .sys-icon-a {
+        color: @bx-color-icon-footer; 
+    }
+    .bx-footer a:hover .sys-icon,
+    .bx-footer a:hover .sys-icon-a {
+        color: @bx-color-icon-footer-hover; 
+    }
+    .bx-footer .sys-icon-a i {
+        .background-color (@bx-color-icon-footer) !important;
+        color: @bx-color-icon-footer;
+    }
+    .bx-footer a:hover .sys-icon-a i {
+        .background-color (@bx-color-icon-footer-hover) !important;
+        color: @bx-color-icon-footer-hover;
+    }
+
+    /* fonts */
+    .bx-def-font-inputs {
+        font-family: @bx-font-family-form-input;
+        font-size: @bx-font-size-form-input;
+        color: @bx-font-color-form-input;
+    }
+
+    h1,
+    .bx-def-font-h1 {
+        font-weight: @bx-font-weight-h1;
+        color: @bx-font-color-default-h1;
+    }
+    h1.bx-def-font-grayed,
+    h1 .bx-def-font-grayed,
+    .bx-def-font-h1.bx-def-font-grayed,
+    .bx-def-font-h1 .bx-def-font-grayed {
+        color: @bx-font-color-grayed-h1;
+    }
+    h1.bx-def-font-contrasted,
+    h1.bx-def-font-contrasted:after,
+    h1.bx-def-font-contrasted:before,
+    h1 .bx-def-font-contrasted,
+    h1 .bx-def-font-contrasted:after,
+    h1 .bx-def-font-contrasted:before,
+    .bx-def-font-h1.bx-def-font-contrasted,
+    .bx-def-font-h1.bx-def-font-contrasted:after,
+    .bx-def-font-h1.bx-def-font-contrasted:before,
+    .bx-def-font-h1 .bx-def-font-contrasted,
+    .bx-def-font-h1 .bx-def-font-contrasted:after,
+    .bx-def-font-h1 .bx-def-font-contrasted:before {
+        color: @bx-font-color-contrasted-h1;
+    }
+    h1 a,
+    .bx-def-font-h1 a,
+    a.bx-def-font-h1 {
+        color: @bx-font-color-link-h1;
+    }
+    h1 a:hover,
+    .bx-def-font-h1 a:hover,
+    a.bx-def-font-h1:hover {
+        color: @bx-font-color-link-h1-hover;
+    }
+
+    h2,
+    .bx-def-font-h2 {
+        font-weight: @bx-font-weight-h2;
+        color: @bx-font-color-default-h2;
+    }
+    h2.bx-def-font-grayed,
+    h2 .bx-def-font-grayed,
+    .bx-def-font-h2.bx-def-font-grayed,
+    .bx-def-font-h2 .bx-def-font-grayed {
+        color: @bx-font-color-grayed-h2;
+    }
+    h2.bx-def-font-contrasted,
+    h2.bx-def-font-contrasted:after,
+    h2.bx-def-font-contrasted:before,
+    h2 .bx-def-font-contrasted,
+    h2 .bx-def-font-contrasted:after,
+    h2 .bx-def-font-contrasted:before,
+    .bx-def-font-h2.bx-def-font-contrasted,
+    .bx-def-font-h2.bx-def-font-contrasted:after,
+    .bx-def-font-h2.bx-def-font-contrasted:before,
+    .bx-def-font-h2 .bx-def-font-contrasted,
+    .bx-def-font-h2 .bx-def-font-contrasted:after,
+    .bx-def-font-h2 .bx-def-font-contrasted:before {
+        color: @bx-font-color-contrasted-h2;
+    }
+    h2 a,
+    .bx-def-font-h2 a,
+    a.bx-def-font-h2 {
+        color: @bx-font-color-link-h2;
+    }
+    h2 a:hover,
+    .bx-def-font-h2 a:hover,
+    a.bx-def-font-h2:hover {
+        color: @bx-font-color-link-h2-hover;
+    }
+
+    h3,
+    .bx-def-font-h3 {
+        font-weight: @bx-font-weight-h3;
+        color: @bx-font-color-default-h3;
+    }
+    h3.bx-def-font-grayed,
+    h3 .bx-def-font-grayed,
+    .bx-def-font-h3.bx-def-font-grayed,
+    .bx-def-font-h3 .bx-def-font-grayed {
+        color: @bx-font-color-grayed-h3;
+    }
+    h3.bx-def-font-contrasted,
+    h3.bx-def-font-contrasted:after,
+    h3.bx-def-font-contrasted:before,
+    h3 .bx-def-font-contrasted,
+    h3 .bx-def-font-contrasted:after,
+    h3 .bx-def-font-contrasted:before,
+    .bx-def-font-h3.bx-def-font-contrasted,
+    .bx-def-font-h3.bx-def-font-contrasted:after,
+    .bx-def-font-h3.bx-def-font-contrasted:before,
+    .bx-def-font-h3 .bx-def-font-contrasted,
+    .bx-def-font-h3 .bx-def-font-contrasted:after,
+    .bx-def-font-h3 .bx-def-font-contrasted:before {
+        color: @bx-font-color-contrasted-h3;
+    }
+    h3 a,
+    .bx-def-font-h3 a,
+    a.bx-def-font-h3 {
+        color: @bx-font-color-link-h3;
+    }
+    h3 a:hover,
+    .bx-def-font-h3 a:hover,
+    a.bx-def-font-h3:hover {
+        color: @bx-font-color-link-h3-hover;
+    }
+
+    /* cover */
+    .bx-menu-toolbar-padding .bx-def-cover-color-bg {
+        background-color: @bx-color-cover;
+    }
+
+    .bx-menu-toolbar-padding .bx-cover-wrapper,
+    .bx-menu-toolbar-padding .bx-base-pofile-cover {
+        border-width: @bx-border-width-cover;
+        border-style: @bx-border-type;
+        border-color: @bx-color-border-cover;
+
+        border-radius: @bx-border-radius-cover;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-cover;
+        -moz-box-shadow: @bx-shadow-cover;
+        box-shadow: @bx-shadow-cover;
+    }
+    .bx-cover-wrapper .bx-cover {
+        min-height: @bx-height-cover;
+    }
+    .bx-cover-wrapper .bx-cover,
+    .bx-cover-wrapper .bx-cover .bx-cover-actions .bx-menu-btns-hor {
+        text-align: @bx-text-align-cover;
+    }
+    .bx-cover-wrapper .bx-cover.bx-def-padding {
+        padding: @bx-content-padding-cover;
+    }
+    .bx-cover-wrapper .bx-cover .bx-cover-image img {
+        border-width: @bx-border-width-cover-icon;
+        border-style: @bx-border-type;
+        border-color: @bx-color-border-cover-icon;
+
+        border-radius: @bx-border-radius-cover-icon;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-cover-icon;
+        -moz-box-shadow: @bx-shadow-cover-icon;
+        box-shadow: @bx-shadow-cover-icon;
+    }
+
+    .bx-cover-wrapper .bx-cover .bx-cover-title {
+        text-shadow: @bx-shadow-text-cover;
+
+        font-family: @bx-font-family-cover;
+    }
+    .bx-cover-wrapper .bx-cover .bx-cover-title,
+    .bx-cover-wrapper .bx-cover .bx-cover-title .bx-def-font-contrasted,
+    .bx-cover-wrapper .bx-cover .bx-cover-title .bx-def-font-contrasted:after,
+    .bx-cover-wrapper .bx-cover .bx-cover-title .bx-def-font-contrasted:before {
+        color: @bx-color-font-cover;
+    }
+    .bx-cover-wrapper .bx-cover .bx-cover-title,
+    .bx-cover-wrapper .bx-cover .bx-cover-title.bx-def-font-h1 {
+        font-size: @bx-font-size-cover;
+        font-weight: @bx-font-weight-cover;
+    }
+
+
+    /* block */
+    .bx-def-border-block {
+        border-width: @bx-border-width-block;
+        border-style: @bx-border-type;
+        border-color: @bx-color-border-block;
+
+        border-radius: @bx-border-radius-block;
+        background-clip: padding-box;
+    }
+    .bx-def-border-radius-block {
+        border-radius: @bx-border-radius-block;
+        background-clip: padding-box;
+    }
+    .bx-db-header {
+        padding: @bx-title-padding-block;
+
+        border-width: @bx-border-width-block-title;
+        border-style: solid;
+        border-color: @bx-color-border-block-title;
+
+        border-radius: @bx-border-radius-block-title;
+    }
+    .bx-def-color-bg-block .bx-db-header,
+    .bx-def-image-bg-block .bx-db-header {
+        background-color: @bx-color-block-title;
+    }
+    .bx-db-header .bx-db-title {
+        line-height: 1.2;
+        font-family: @bx-font-family-block-title;
+        font-size: @bx-font-size-block-title;
+        font-weight: @bx-font-weight-block-title;
+        color: @bx-color-font-block-title;
+    }
+    .bx-db-divider {
+        border-top:@bx-height-block-title-div @bx-border-type @bx-color-block-title-div;
+    }
+
+
+    /* box */
+    .bx-def-box {
+        border-width: @bx-border-width-box;
+        border-style: @bx-border-type;
+        border-color: @bx-color-border-box;
+    }
+    .bx-def-box.bx-def-padding {
+        padding: @bx-content-padding-card;
+    }
+    .bx-def-box.bx-def-color-bg-box {
+        .background-color (@bx-color-box);
+    }
+    .bx-def-color-bg-box-active,
+    .bx-def-color-bg-box-hover:hover {
+        .background-color (@bx-color-box-hover);
+    }
+    .bx-def-box-round-corners,
+    .bx-def-box.bx-def-round-corners {
+        border-radius: @bx-border-radius-box;
+        background-clip: padding-box;
+    }
+    .bx-def-box-round-corners-int {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr @bx-border-radius-box-ibr @bx-border-radius-box-ibl;
+        background-clip: padding-box;
+    }
+    .bx-def-box-round-corners-int-top {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr 0 0;
+        background-clip: padding-box;
+    }
+    .bx-def-box-round-corners-int-bottom {
+        border-radius: 0 0 @bx-border-radius-box-ibr @bx-border-radius-box-ibl;
+        background-clip: padding-box;
+    }
+    .bx-base-pofile-unit-with-cover .bx-def-round-corners .bx-base-pofile-unit-cover {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr 0 0;
+    }
+    .bx-base-text-unit.bx-base-text-unit-ext.bx-def-round-corners img.bx-base-text-unit-cover.bx-def-round-corners,
+    .bx-base-text-unit.bx-base-text-unit-ext .bx-def-round-corners img.bx-base-text-unit-cover.bx-def-round-corners {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr 0 0;
+    }
+    .bx-base-text-unit.bx-base-text-unit-gallery.bx-def-round-corners .bx-base-text-unit-thumb.bx-def-round-corners,
+    .bx-base-text-unit.bx-base-text-unit-gallery .bx-def-round-corners .bx-base-text-unit-thumb.bx-def-round-corners {
+        border-radius: @bx-border-radius-box-itl @bx-border-radius-box-itr 0 0;
+    }
+
+    /* box: timeline */
+    .bx-tl-view div.bx-tl-item div.bx-tl-item-footer {
+        border-radius: 0 0 @bx-border-radius-box-ibr @bx-border-radius-box-ibl;
+    }
+
+    /* popup */
+    .bx-popup-border {
+        border-width: @bx-border-width-popup;
+        border-style: solid;
+        border-color: @bx-color-border-popup;
+
+        border-radius: @bx-border-radius-popup;
+        background-clip: padding-box;
+    }
+    .bx-popup-color-bg {
+        background-color: @bx-color-popup;
+
+        background-image: @bx-image-bg-popup;
+        background-repeat: @bx-image-bg-popup-repeat;
+        background-size: @bx-image-bg-popup-size;
+    }
+    .bx-popup-content-indent {
+        padding: @bx-content-padding-popup;
+    }
+    .bx-popup-header {
+        padding: @bx-title-padding-popup;
+    }
+    .bx-popup-header .bx-popup-element-close {
+        margin: @bx-title-padding-popup;
+    }
+    .bx-popup-header-color-bg {
+        background-color: @bx-color-popup-title;
+    }
+    .bx-popup-header h2,
+    .bx-popup-header .bx-popup-element-close {
+        line-height: 1.8rem;
+    }
+    .bx-popup-header h2 {
+        font-family: @bx-font-family-popup-title;
+        font-size: @bx-font-size-popup-title;
+    }
+    .bx-popup-header h2,
+    .bx-popup-header.bx-def-font-contrasted h2,
+    .bx-popup-header .bx-popup-element-close,
+    .bx-popup-header.bx-def-font-contrasted .bx-popup-element-close,
+    .bx-popup-header .bx-popup-element-close .sys-icon,
+    .bx-popup-header.bx-def-font-contrasted .bx-popup-element-close .sys-icon {
+        color: @bx-color-font-popup-title;
+    }
+
+    /* slide menu */
+    .bx-popup-wrapper.bx-popup-slide-wrapper {
+        border-width: @bx-border-width-menu-slide;
+        border-style: solid;
+        border-color: @bx-color-border-menu-slide;
+
+        .background-color (@bx-color-menu-slide);
+
+        background-image: @bx-image-bg-menu-slide;
+        background-repeat: @bx-image-bg-menu-slide-repeat;
+        background-size: @bx-image-bg-menu-slide-size;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper.bx-def-padding {
+        padding: @bx-content-padding-menu-slide;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper li a {
+        text-shadow: @bx-shadow-font-menu-slide;
+
+        font-family: @bx-font-family-menu-slide;
+        font-size: @bx-font-size-menu-slide;
+        font-weight: @bx-font-weight-menu-slide;
+        color: @bx-font-color-menu-slide;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper li a:hover {
+        color: @bx-font-color-menu-slide-hover;
+    }
+    .bx-popup-wrapper.bx-popup-slide-wrapper li.bx-menu-tab-active a,
+    .bx-popup-wrapper.bx-popup-slide-wrapper li.bx-menu-inter-act {
+        color: @bx-font-color-menu-slide-active;
+    }
+
+    /* main menu */
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site {
+        -webkit-justify-content: @bx-text-align-menu-main-items;
+        justify-content: @bx-text-align-menu-main-items;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt {
+        padding: @bx-content-padding-menu-main;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a {
+        text-shadow: @bx-shadow-font-menu-main;
+
+        font-family: @bx-font-family-menu-main;
+        font-size: @bx-font-size-menu-main;
+        font-weight: @bx-font-weight-menu-main;
+        color: @bx-font-color-menu-main;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a .sys-icon,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a .sys-icon-a {
+        color: @bx-font-color-menu-main-active;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover .sys-icon,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover .sys-icon-a {
+        color: @bx-font-color-menu-main-hover;
+    }
+
+
+    /* account menu */
+    #bx-sliding-menu-account.bx-sliding-menu-main,
+    #bx-sliding-menu-search.bx-sliding-menu-main,
+    #bx_notifications_preview.bx-sliding-menu,
+     {
+        -webkit-box-shadow: @bx-shadow-menu-account;
+        -moz-box-shadow: @bx-shadow-menu-account;
+        box-shadow: @bx-shadow-menu-account;
+
+        border-width: @bx-border-width-menu-account;
+        border-style: solid;
+        border-color: @bx-color-border-menu-account;
+
+        background-color: @bx-color-menu-account;
+
+        background-image: @bx-image-bg-menu-account;
+        background-repeat: @bx-image-bg-menu-account-repeat;
+        background-size: @bx-image-bg-menu-account-size;
+    }
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt {
+        padding: @bx-content-padding-menu-account;
+    }
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li a,
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li a .sys-icon,
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li a .sys-icon-a,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt .bx-def-font-h1,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt .bx-def-font-h2,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt a:not(.bx-btn),
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-sliding-menu-main-cnt .sys-icon {
+        color: @bx-font-color-menu-account;
+    }
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li a,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li a:not(.bx-btn),
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li a .bx-menu-floating-blocks-title {
+        text-shadow: @bx-shadow-font-menu-account;
+
+        font-family: @bx-font-family-menu-account;
+        font-size: @bx-font-size-menu-account;
+        font-weight: @bx-font-weight-menu-account;
+    }
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li.bx-menu-tab-active a:not(.bx-btn) {
+        color: @bx-font-color-menu-account-active;
+    }
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li a:not(.bx-btn):hover,
+    #bx-sliding-menu-account.bx-sliding-menu-main .bx-menu-account-popup li a:not(.bx-btn):hover .sys-icon {
+        color: @bx-font-color-menu-account-hover;
+    }
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li a:hover,
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li a:hover .sys-icon,
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li a:hover .sys-icon-a {
+        color: @bx-font-color-menu-account-hover;
+    }
+
+
+    /* add menu */
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main {
+        -webkit-box-shadow: @bx-shadow-menu-add;
+        -moz-box-shadow: @bx-shadow-menu-add;
+        box-shadow: @bx-shadow-menu-add;
+
+        border-width: @bx-border-width-menu-add;
+        border-style: solid;
+        border-color: @bx-color-border-menu-add;
+
+        background-color: @bx-color-menu-add;
+
+        background-image: @bx-image-bg-menu-add;
+        background-repeat: @bx-image-bg-menu-add-repeat;
+        background-size: @bx-image-bg-menu-add-size;
+    }
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt {
+        padding: @bx-content-padding-menu-add;
+    }
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li a {
+        text-shadow: @bx-shadow-font-menu-add;
+
+        font-family: @bx-font-family-menu-add;
+        font-size: @bx-font-size-menu-add;
+        font-weight: @bx-font-weight-menu-add;
+    }
+
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li a,
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li a .sys-icon {
+        color: @bx-font-color-menu-add;
+    }
+
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a,
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a .sys-icon {
+        color: @bx-font-color-menu-add-active;
+    }
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li a:hover,
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-sliding-menu-main-cnt li a:hover .sys-icon {
+        color: @bx-font-color-menu-add-hover;
+    }
+
+    /* page menu */
+    .bx-menu-main-bar-wrapper {
+        -webkit-box-shadow: @bx-shadow-menu-page;
+        -moz-box-shadow: @bx-shadow-menu-page;
+        box-shadow: @bx-shadow-menu-page;
+
+        border-width: @bx-border-width-menu-page;
+        border-style: solid;
+        border-color: @bx-color-border-menu-page;
+
+        background-color: @bx-color-menu-page;
+
+        background-image: @bx-image-bg-menu-page;
+        background-repeat: @bx-image-bg-menu-page-repeat;
+        background-size: @bx-image-bg-menu-page-size;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu {
+        padding: @bx-content-padding-menu-page;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li a {
+        text-shadow: @bx-shadow-font-menu-page;
+
+        font-family: @bx-font-family-menu-page;
+        font-size: @bx-font-size-menu-page;
+        font-weight: @bx-font-weight-menu-page;
+        color: @bx-font-color-menu-page;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li a:hover {
+        color: @bx-font-color-menu-page-hover;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li.bx-menu-tab-active a {
+        color: @bx-font-color-menu-page-active;
+    }
+
+    /* form */
+    .bx-form-value .bx-form-input-slider,
+    .bx-form-value .bx-form-input-doublerange,
+    .bx-form-value .bx-form-input-select_multiple,
+    .bx-form-value .bx-form-input-select,
+    .bx-form-value .bx-form-input-radio_set,
+    .bx-form-value .bx-form-input-checkbox_set,
+    .bx-form-value .bx-form-input-number,
+    .bx-form-value .bx-form-input-time,
+    .bx-form-value .bx-form-input-datepicker,
+    .bx-form-value .bx-form-input-datetime,
+    .bx-form-value .bx-form-input-wrapper-textarea.bx-form-input-wrapper-html,
+    .bx-form-value .bx-form-input-textarea,
+    .bx-form-value .bx-form-input-text,
+    .bx-form-value .bx-form-input-price,
+    .bx-form-value .bx-form-input-wrapper-price span,
+    .bx-form-value .bx-form-input-wrapper-password {
+        .box-sizing(@base-input-box-sizing);
+
+        border-color: @bx-color-border-form-input;
+        border-width: @bx-border-width-form-input;
+
+        border-radius: @bx-border-radius-form-input;
+        background-clip: padding-box;
+
+        background-color: @bx-color-form-input;
+
+        -webkit-box-shadow: @bx-shadow-form-input;
+        -moz-box-shadow: @bx-shadow-form-input;
+        box-shadow: @bx-shadow-form-input;
+    }
+    .bx-form-value .bx-form-input-slider,
+    .bx-form-value .bx-form-input-doublerange,
+    .bx-form-value .bx-form-input-select,
+    .bx-form-value .bx-form-input-number,
+    .bx-form-value .bx-form-input-time,
+    .bx-form-value .bx-form-input-datepicker,
+    .bx-form-value .bx-form-input-datetime,
+    .bx-form-value .bx-form-input-text,
+    .bx-form-value .bx-form-input-price,
+    .bx-form-value .bx-form-input-wrapper-price span,
+    .bx-form-value .bx-form-input-wrapper-password {
+        height: @bx-height-form-input;
+    }
+    .bx-form-value .bx-form-input-wrapper-textarea.bx-form-input-wrapper-html {
+        border-style: solid;
+    }
+    .bx-form-value .bx-form-input-textarea {
+        -webkit-box-shadow: none;
+        -moz-box-shadow: none;
+        box-shadow: none;
+    }
+    .bx-form-value .bx-form-input-textarea.bx-form-input-html 
+    {
+        border-width: 0;
+    }
+    .bx-form-value .bx-form-input-text.bx-form-input-autotoken:not(.bx-form-input-labels) {
+        height: @bx-height-form-input ;
+        line-height: @bx-height-form-input  - 0.5rem;
+        padding: 0.125rem;
+    }
+    
+    .bx-form-value .bx-form-input-text.bx-form-input-autotoken.bx-form-input-labels {
+        padding: 3px 0.125rem;
+    }
+    
+    .bx-form-value .bx-form-input-text.bx-form-input-autotoken .ui-autocomplete-input{
+        height: @bx-height-form-input  - 0.5rem;
+    }
+    
+    .bx-form-value .bx-form-input-text.bx-form-input-autotoken:not(.bx-form-input-labels) b .bx-def-thumb-size {
+        width: @bx-height-form-input;
+        height: @bx-height-form-input;
+        line-height: @bx-height-form-input;
+    }
+    .bx-form-value .bx-form-input-slider:focus,
+    .bx-form-value .bx-form-input-doublerange:focus,
+    .bx-form-value .bx-form-input-number:focus,
+    .bx-form-value .bx-form-input-time:focus,
+    .bx-form-value .bx-form-input-datepicker:focus,
+    .bx-form-value .bx-form-input-datetime:focus,
+    .bx-form-value .bx-form-input-textarea:focus,
+    .bx-form-value .bx-form-input-text:focus,
+    .bx-form-value .bx-form-input-price:focus,
+    .bx-form-value .bx-form-input-wrapper-password.bx-form-input-focus {
+        border-color: @bx-color-border-form-input-active;
+        background-color: @bx-color-form-input-active;
+    }
+    .bx-form-value .bx-switcher-cont.on > button {
+        background-color: @bx-color-form-input;
+    }
+
+
+    /* button (normal) */
+    .bx-btn {
+        .box-sizing(@base-input-box-sizing);
+        height: @bx-height-button;
+        line-height: (@bx-height-button - 0.125 * @bx-border-width-button);
+    
+        .background-color (@bx-color-button);
+
+        border-width: @bx-border-width-button;
+        border-style: solid;
+        border-color: @bx-color-border-button;
+
+        border-radius: @bx-border-radius-button;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-button;
+        -moz-box-shadow: @bx-shadow-button;
+        box-shadow: @bx-shadow-button;
+
+        text-shadow: @bx-shadow-font-button;
+        text-transform: uppercase;
+
+        font-family: @bx-font-family-button;
+        font-size: @bx-font-size-button;
+        font-weight: @bx-font-weight-button;
+        color: @bx-font-color-button;
+        
+        padding-top: 0px;
+        padding-bottom: 0px;
+    }
+    .bx-btn.bx-btn-primary {
+        .box-sizing(@base-input-box-sizing);
+
+        height: @bx-height-button-primary;
+        line-height: (@bx-height-button-primary - 0.125 * @bx-border-width-button-primary);
+
+        .background-color (@bx-color-button-primary);
+
+        border-width: @bx-border-width-button-primary;
+        border-style: solid;
+        border-color: @bx-color-border-button-primary;
+
+        border-radius: @bx-border-radius-button-primary;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-button-primary;
+        -moz-box-shadow: @bx-shadow-button-primary;
+        box-shadow: @bx-shadow-button-primary;
+
+        text-shadow: @bx-shadow-font-button-primary;
+
+        font-family: @bx-font-family-button-primary;
+        font-size: @bx-font-size-button-primary;
+        font-weight: @bx-font-weight-button-primary;
+        color: @bx-font-color-button-primary;
+    }
+    .bx-btn-height {
+        height: @bx-height-button;
+        line-height: @bx-height-button;
+    }
+    .bx-btn-border {
+        border-width: @bx-border-width-button;
+        border-style: solid;
+        border-color: transparent;
+    }
+    .bx-btn-height.bx-btn-primary {
+        height: @bx-height-button-primary;
+        line-height: @bx-height-button-primary;
+    }
+    .bx-btn-border.bx-btn-primary {
+        border-width: @bx-border-width-button-primary;
+        border-style: solid;
+        border-color: transparent;
+    }
+    .bx-btn:hover,
+    .bx-btn:active {
+        border-width: @bx-border-width-button;
+        border-style: solid;
+    }
+    .bx-btn:hover {
+        border-color: @bx-color-border-button-hover;
+
+        .background-color (@bx-color-button-hover);
+
+        color: @bx-font-color-button-hover;
+    }
+    .bx-btn:active {
+        border-color: @bx-color-border-button-click;
+
+        .background-color (@bx-color-button-click);
+        box-shadow: @bx-shadow-color-button-click;
+
+        color: @bx-font-color-button-click;
+    }
+    .bx-btn.bx-btn-primary:hover,
+    .bx-btn.bx-btn-primary:active {
+        border-width: @bx-border-width-button-primary;
+        border-style: solid;
+    }
+    .bx-btn.bx-btn-primary:hover {
+        border-color: @bx-color-border-button-primary-hover;
+
+        .background-color (@bx-color-button-primary-hover);
+
+        color: @bx-font-color-button-primary-hover;
+    }
+    .bx-btn.bx-btn-primary:active {
+        border-color: @bx-color-border-button-primary-click;
+
+        .background-color (@bx-color-button-primary-click);
+        box-shadow: @bx-shadow-color-button-primary-click;
+
+        color: @bx-font-color-button-primary-click;
+    }
+    .bx-btn .sys-icon:not(.sys-colored) {
+        color: @bx-font-color-button;
+    }
+    .bx-btn.bx-btn-primary .sys-icon:not(.sys-colored) {
+        color: @bx-font-color-button-primary;
+    }
+    .bx-btn:hover .sys-icon:not(.sys-colored) {
+        color: @bx-font-color-button-hover;
+    }
+    .bx-btn:active .sys-icon:not(.sys-colored) {
+        color: @bx-font-color-button-click;
+    }
+    .bx-btn.bx-btn-primary:hover .sys-icon:not(.sys-colored) {
+        color: @bx-font-color-button-primary-hover;
+    }
+    .bx-btn.bx-btn-primary:active .sys-icon:not(.sys-colored) {
+        color: @bx-font-color-button-primary-click;
+    }
+
+    /* button (large) */
+    .bx-btn.bx-btn-large {
+        .box-sizing(@base-input-box-sizing);
+
+        height: @bx-height-button-large;
+        line-height: (@bx-height-button-large - 0.125 * @bx-border-width-button-large);
+
+        .background-color (@bx-color-button-large);
+
+        border-width: @bx-border-width-button-large;
+        border-style: solid;
+        border-color: @bx-color-border-button-large;
+
+        border-radius: @bx-border-radius-button-large;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-button-large;
+        -moz-box-shadow: @bx-shadow-button-large;
+        box-shadow: @bx-shadow-button-large;
+
+        text-shadow: @bx-shadow-font-button-large;
+
+        font-family: @bx-font-family-button-large;
+        font-size: @bx-font-size-button-large;
+        font-weight: @bx-font-weight-button-large;
+        color: @bx-font-color-button-large;
+    }
+    .bx-btn.bx-btn-large.bx-btn-primary {
+        .box-sizing(@base-input-box-sizing);
+
+        height: @bx-height-button-large-primary;
+        line-height: (@bx-height-button-large-primary - 0.125 * @bx-border-width-button-large-primary);
+
+        .background-color (@bx-color-button-large-primary);
+
+        border-width: @bx-border-width-button-large-primary;
+        border-style: solid;
+        border-color: @bx-color-border-button-large-primary;
+
+        border-radius: @bx-border-radius-button-large-primary;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-button-large-primary;
+        -moz-box-shadow: @bx-shadow-button-large-primary;
+        box-shadow: @bx-shadow-button-large-primary;
+
+        text-shadow: @bx-shadow-font-button-large-primary;
+
+        font-family: @bx-font-family-button-large-primary;
+        font-size: @bx-font-size-button-large-primary;
+        font-weight: @bx-font-weight-button-large-primary;
+        color: @bx-font-color-button-large-primary;
+    }
+    .bx-btn-large-height {
+        height: @bx-height-button-large;
+        line-height: @bx-height-button-large;
+    }
+    .bx-btn-large-height.bx-btn-primary {
+        height: @bx-height-button-large-primary;
+        line-height: @bx-height-button-large-primary;
+    }
+    .bx-btn-large-border {
+        border-width: @bx-border-width-button-large;
+        border-style: solid;
+        border-color: transparent;
+    }
+    .bx-btn-large-border.bx-btn-primary {
+        border-width: @bx-border-width-button-large-primary;
+        border-style: solid;
+        border-color: transparent;
+    }
+    .bx-btn.bx-btn-large:hover,
+    .bx-btn.bx-btn-large:active {
+        border-width: @bx-border-width-button-large;
+        border-style: solid;
+    }
+    .bx-btn.bx-btn-large:hover {
+        border-color: @bx-color-border-button-large-hover;
+
+        .background-color (@bx-color-button-large-hover);
+
+        color: @bx-font-color-button-large-hover;
+    }
+    .bx-btn.bx-btn-large:active {
+        border-color: @bx-color-border-button-large-click;
+
+        .background-color (@bx-color-button-large-click);
+        box-shadow: @bx-shadow-color-button-click;
+
+        color: @bx-font-color-button-large-click;
+    }
+    .bx-btn.bx-btn-large.bx-btn-primary:hover,
+    .bx-btn.bx-btn-large.bx-btn-primary:active {
+        border-width: @bx-border-width-button-large-primary;
+        border-style: solid;
+    }
+    .bx-btn.bx-btn-large.bx-btn-primary:hover {
+        border-color: @bx-color-border-button-large-primary-hover;
+
+        .background-color (@bx-color-button-large-primary-hover);
+
+        color: @bx-font-color-button-large-primary-hover;
+    }
+    .bx-btn.bx-btn-large.bx-btn-primary:active {
+        border-color: @bx-color-border-button-large-primary-click;
+
+        .background-color (@bx-color-button-large-primary-click);
+        box-shadow: @bx-shadow-color-button-primary-click;
+
+        color: @bx-font-color-button-large-primary-click;
+    }
+    .bx-btn.bx-btn-large .sys-icon {
+        color: @bx-font-color-button-large;
+    }
+    .bx-btn.bx-btn-large.bx-btn-primary .sys-icon {
+        color: @bx-font-color-button-large-primary;
+    }
+    .bx-btn.bx-btn-large:hover .sys-icon {
+        color: @bx-font-color-button-large-hover;
+    }
+    .bx-btn.bx-btn-large:active .sys-icon {
+        color: @bx-font-color-button-large-click;
+    }
+    .bx-btn.bx-btn-large.bx-btn-primary:hover .sys-icon {
+        color: @bx-font-color-button-large-primary-hover;
+    }
+    .bx-btn.bx-btn-large.bx-btn-primary:active .sys-icon {
+        color: @bx-font-color-button-large-primary-click;
+    }
+
+    /* button (small) */
+    .bx-btn.bx-btn-small {
+        .box-sizing(@base-input-box-sizing);
+
+        height: @bx-height-button-small;
+        line-height: (@bx-height-button-small - 0.125 * @bx-border-width-button-small);
+
+        .background-color (@bx-color-button-small);
+
+        border-width: @bx-border-width-button-small;
+        border-style: solid;
+        border-color: @bx-color-border-button-small;
+
+        border-radius: @bx-border-radius-button-small;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-button-small;
+        -moz-box-shadow: @bx-shadow-button-small;
+        box-shadow: @bx-shadow-button-small;
+
+        text-shadow: @bx-shadow-font-button-small;
+
+        font-family: @bx-font-family-button-small;
+        font-size: @bx-font-size-button-small;
+        font-weight: @bx-font-weight-button-small;
+        color: @bx-font-color-button-small;
+    }
+    .bx-btn.bx-btn-small.bx-btn-primary {
+        .box-sizing(@base-input-box-sizing);
+
+        height: @bx-height-button-small-primary;
+        line-height: (@bx-height-button-small-primary - 0.125 * @bx-border-width-button-small-primary);
+
+        .background-color (@bx-color-button-small-primary);
+
+        border-width: @bx-border-width-button-small-primary;
+        border-style: solid;
+        border-color: @bx-color-border-button-small-primary;
+
+        border-radius: @bx-border-radius-button-small-primary;
+        background-clip: padding-box;
+
+        -webkit-box-shadow: @bx-shadow-button-small-primary;
+        -moz-box-shadow: @bx-shadow-button-small-primary;
+        box-shadow: @bx-shadow-button-small-primary;
+
+        text-shadow: @bx-shadow-font-button-small-primary;
+
+        font-family: @bx-font-family-button-small-primary;
+        font-size: @bx-font-size-button-small-primary;
+        font-weight: @bx-font-weight-button-small-primary;
+        color: @bx-font-color-button-small-primary;
+    }
+    .bx-btn-small-height {
+        height: @bx-height-button-small;
+        line-height: @bx-height-button-small;
+    }
+    .bx-btn-small-height.bx-btn-primary {
+        height: @bx-height-button-small-primary;
+        line-height: @bx-height-button-small-primary;
+    }
+    .bx-btn-small-border {
+        border-width: @bx-border-width-button-small;
+        border-style: solid;
+        border-color: transparent;
+    }
+    .bx-btn-small-border.bx-btn-primary {
+        border-width: @bx-border-width-button-small-primary;
+        border-style: solid;
+        border-color: transparent;
+    }
+    .bx-btn.bx-btn-small:hover,
+    .bx-btn.bx-btn-small:active {
+        border-width: @bx-border-width-button-small;
+        border-style: solid;
+    }
+    .bx-btn.bx-btn-small:hover {
+        border-color: @bx-color-border-button-small-hover;
+
+        .background-color (@bx-color-button-small-hover);
+
+        color: @bx-font-color-button-small-hover;
+    }
+    .bx-btn.bx-btn-small:active {
+        border-color: @bx-color-border-button-small-click;
+
+        .background-color (@bx-color-button-small-click);
+        box-shadow: @bx-shadow-color-button-click;
+
+        color: @bx-font-color-button-small-click;
+    }
+    .bx-btn.bx-btn-small.bx-btn-primary:hover,
+    .bx-btn.bx-btn-small.bx-btn-primary:active {
+        border-width: @bx-border-width-button-small-primary;
+        border-style: solid;
+    }
+    .bx-btn.bx-btn-small.bx-btn-primary:hover {
+        border-color: @bx-color-border-button-small-primary-hover;
+
+        .background-color (@bx-color-button-small-primary-hover);
+
+        color: @bx-font-color-button-small-primary-hover;
+    }
+    .bx-btn.bx-btn-small.bx-btn-primary:active {
+        border-color: @bx-color-border-button-small-primary-click;
+
+        .background-color (@bx-color-button-small-primary-click);
+        box-shadow: @bx-shadow-color-button-primary-click;
+
+        color: @bx-font-color-button-small-primary-click;
+    }
+    .bx-btn.bx-btn-small .sys-icon {
+        color: @bx-font-color-button-small;
+    }
+    .bx-btn.bx-btn-small.bx-btn-primary .sys-icon {
+        color: @bx-font-color-button-small-primary;
+    }
+    .bx-btn.bx-btn-small:hover .sys-icon {
+        color: @bx-font-color-button-small-hover;
+    }
+    .bx-btn.bx-btn-small:active .sys-icon {
+        color: @bx-font-color-button-small-click;
+    }
+    .bx-btn.bx-btn-small.bx-btn-primary:hover .sys-icon {
+        color: @bx-font-color-button-small-primary-hover;
+    }
+    .bx-btn.bx-btn-small.bx-btn-primary:active .sys-icon {
+        color: @bx-font-color-button-small-primary-click;
+    }
+
+
+    /*--- Menus: Mobile Dropdown ---*/
+    .bx-lcd-menu-dropdown.cd-dropdown,
+    .bx-lcd-menu-dropdown.cd-dropdown .cd-dropdown-title {
+        background-color: @bx-color-header;
+    }
+
+    .bx-lcd-mdd-search .bx-page-block-container input[type="text"]::-webkit-input-placeholder {
+      color: @bx-font-color-grayed;
+    }
+    .bx-lcd-mdd-search .bx-page-block-container input[type="text"]::-moz-placeholder {
+      color: @bx-font-color-grayed;
+    }
+    .bx-lcd-mdd-search .bx-page-block-container input[type="text"]:-moz-placeholder {
+      color: @bx-font-color-grayed;
+    }
+    .bx-lcd-mdd-search .bx-page-block-container input[type="text"]:-ms-input-placeholder {
+      color: @bx-font-color-grayed;
+    }
+
+
+    /*--- Alerts: Toolbar ---*/
+    ul.bx-menu-toolbar li a .bx-menu-item-addon {
+        border: 0.125rem solid @bx-color-header;
+    }
+    ul.bx-menu-toolbar li a .bx-menu-item-addon.bx-def-unit-alert {
+        top: -(@bx-font-size-default + 2) / 2;
+        right: -(@bx-font-size-default + 2) / 2;
+    }
+    ul.bx-menu-toolbar li a .bx-menu-item-addon.bx-def-unit-alert-small {
+        top: -(@bx-font-size-small + 5) / 2;
+        right: -(@bx-font-size-small + 5) / 2
+    }
+    ul.bx-menu-toolbar li a .bx-menu-item-addon.bx-def-unit-alert-middle {
+        top: -(@bx-font-size-middle + 2) / 2;
+        right: -(@bx-font-size-middle + 2) / 2;
+    }
+
+
+    /*--- Timeline -> Card: Annachmants ---*/
+    div.bx-tl-item div.bx-tl-item-images.bx-tl-ii-gallery div.bx-tl-item-image img,
+    div.bx-tl-item div.bx-tl-item-attachments.bx-tl-ia-gallery div.bx-tl-item-attachment img,
+    div.bx-tl-item .bx-tl-item-links .bx-tl-item-link {
+        border-radius: @bx-border-radius-box;
+    }
+    div.bx-tl-item div.bx-tl-item-images.bx-tl-ii-gallery div.bx-tl-item-image img,
+    div.bx-tl-item div.bx-tl-item-attachments.bx-tl-ia-gallery div.bx-tl-item-attachment img {
+        background-clip: padding-box;
+    }
+
+    /*--- Timeline Card -> Comments: Font size ---*/
+    div.bx-tl-item-comments-holder div.bx-tl-item-comments .cmts.cmts-margin {
+        .font-size(@bx-font-size-default);
+    }
+}
+
+.bx-media-phone .@{bx-root-class-name} {
+    /* main menu */
+    .cd-dropdown .cd-dropdown-content a, 
+    .cd-dropdown .cd-dropdown-content ul a {
+        text-shadow: @bx-shadow-font-menu-main;
+
+        font-family: @bx-font-family-menu-main;
+        font-size: @bx-font-size-menu-main;
+        font-weight: @bx-font-weight-menu-main;
+        color: @bx-font-color-menu-main;
+    }
+    .cd-dropdown .cd-dropdown-content a:hover, 
+    .cd-dropdown .cd-dropdown-content ul a:hover,
+    .cd-dropdown .cd-dropdown-content a:hover .sys-icon, 
+    .cd-dropdown .cd-dropdown-content ul a:hover .sys-icon,
+    .cd-dropdown .cd-dropdown-content a:hover .sys-icon-a, 
+    .cd-dropdown .cd-dropdown-content ul a:hover .sys-icon-a {
+        color: @bx-font-color-menu-main-hover;
+    }
+
+    .go-back a::before, 
+    .go-back a::after,
+    .has-children > a::before, 
+    .has-children > a::after, 
+    .cd-dropdown .cd-close::after, 
+    .cd-dropdown .cd-close::before {
+        background-color: @bx-font-color-menu-main;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a .sys-icon,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a .sys-icon-a {
+        color: @bx-font-color-menu-account;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a .sys-icon,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li.bx-menu-tab-active a .sys-icon-a {
+        color: @bx-font-color-menu-account-active;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover .sys-icon,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt li a:hover .sys-icon-a {
+        color: @bx-font-color-menu-account-hover;
+    }
+}
+
+/* viewport */
+html.bx-media-tablet {
+    font-size: @bx-viewport-font-tablet;
+}
+
+html.bx-media-phone {
+    font-size: @bx-viewport-font-mobile;
+}

+ 195 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/css/general.css

@@ -0,0 +1,195 @@
+@import url(../../../../../../../template/css/general.css);
+
+
+/*--- Overwrite Defaults ---*/
+#bx-toolbar-content {
+	z-index: 500;
+}
+
+#bx-logo-container {
+    height: auto;
+
+    margin-left: 0.625rem;
+    margin-right: 0;
+
+    text-align: left;
+}
+
+#bx-logo-container a span {
+    line-height: normal;
+}
+
+/*---Toolbar ---*/
+.bx-toolbar-content {
+    position: relative;
+}
+.bx-toolbar-content::before,
+.bx-toolbar-content::after {
+    display: none;
+}
+.bx-toolbar-content .bx-toolbar-item {
+    display: inline-block;
+}
+.bx-toolbar-content .bx-toolbar-item.bx-ti-menu {
+    margin: 0;
+    padding: 0 1.25rem;
+
+    -webkit-overflow-scrolling: touch;
+}
+
+/*--- Page Submenu bar ---*/
+.bx-menu-main-bar:not(.bx-menu-more-auto) {
+    overflow: hidden;
+}
+
+/*--- Main Page Content ---*/
+.content-wrapper{
+    position: relative;
+    display: -webkit-flex;
+    display: flex;
+    -webkit-flex-direction: column;
+    flex-direction: column;
+    min-height: 100%;
+    min-height: 100vh;
+}
+
+/*--- Header ---*/
+.cd-main-header {
+  position: absolute;
+  z-index: 999;
+  top: 0;
+  left: 0;
+  height: 45px;
+  width: 100%;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+.cd-main-header::after {
+  clear: both;
+  content: "";
+  display: table;
+}
+:where(.bx-media-tablet, .bx-media-desktop) .cd-main-header {
+    position: fixed;
+    height: 55px;
+  }
+
+.cd-logo {
+  float: left;
+  display: block;
+  margin: 11px 0 0 5%;
+}
+.cd-logo img {
+  display: block;
+}
+:where(.bx-media-tablet, .bx-media-desktop) .cd-logo {
+    margin: 16px 0 0 36px;
+  }
+
+.cd-nav-trigger {
+  /* navigation trigger - visible on mobile devices only */
+  position: relative;
+  display: block;
+  top: 0px;
+  left: 0px;
+  width: 3.5rem;
+  height: 3.5rem;
+  margin-right: 0px;
+  /* hide text */
+  overflow: hidden;
+  white-space: nowrap;
+  color: transparent !important;
+}
+.cd-nav-trigger span, 
+.cd-nav-trigger span::before, 
+.cd-nav-trigger span::after {
+  /* hamburger icon in CSS */
+  position: absolute;
+  display: inline-block;
+  height: 3px;
+  width: 24px;
+  background: #ffffff;
+}
+.cd-nav-trigger span {
+  /* line in the center */
+  position: absolute;
+  top: 50%;
+  right: 15px;
+  -webkit-transition: background 0.2s;
+  -moz-transition: background 0.2s;
+  transition: background 0.2s;
+}
+.cd-nav-trigger span::before, 
+.cd-nav-trigger span::after {
+  /* other 2 lines */
+  content: '';
+  right: 0;
+  /* Force Hardware Acceleration in WebKit */
+  -webkit-transform: translateZ(0);
+  -moz-transform: translateZ(0);
+  -ms-transform: translateZ(0);
+  -o-transform: translateZ(0);
+  transform: translateZ(0);
+  -webkit-backface-visibility: hidden;
+  backface-visibility: hidden;
+  -webkit-transform-origin: 0% 50%;
+  -moz-transform-origin: 0% 50%;
+  -ms-transform-origin: 0% 50%;
+  -o-transform-origin: 0% 50%;
+  transform-origin: 0% 50%;
+  -webkit-transition: -webkit-transform 0.2s;
+  -moz-transition: -moz-transform 0.2s;
+  transition: transform 0.2s;
+}
+.cd-nav-trigger span::before {
+  /* menu icon top line */
+  top: -6px;
+}
+.cd-nav-trigger span::after {
+  /* menu icon bottom line */
+  top: 6px;
+}
+.cd-nav-trigger.nav-is-visible span {
+  /* hide line in the center */
+  background: rgba(255, 255, 255, 0);
+}
+.cd-nav-trigger.nav-is-visible span::before, 
+.cd-nav-trigger.nav-is-visible span::after {
+  /* keep visible other 2 lines */
+  background: white;
+}
+.cd-nav-trigger.nav-is-visible span::before {
+  -webkit-transform: translateX(4px) translateY(-3px) rotate(45deg);
+  -moz-transform: translateX(4px) translateY(-3px) rotate(45deg);
+  -ms-transform: translateX(4px) translateY(-3px) rotate(45deg);
+  -o-transform: translateX(4px) translateY(-3px) rotate(45deg);
+  transform: translateX(4px) translateY(-3px) rotate(45deg);
+}
+.cd-nav-trigger.nav-is-visible span::after {
+  -webkit-transform: translateX(4px) translateY(2px) rotate(-45deg);
+  -moz-transform: translateX(4px) translateY(2px) rotate(-45deg);
+  -ms-transform: translateX(4px) translateY(2px) rotate(-45deg);
+  -o-transform: translateX(4px) translateY(2px) rotate(-45deg);
+  transform: translateX(4px) translateY(2px) rotate(-45deg);
+}
+:where(.bx-media-tablet, .bx-media-desktop) .cd-nav-trigger {
+    display: none;
+  }
+
+
+/*--- Top Navigation ---*/
+:where(.bx-media-tablet, .bx-media-desktop) .cd-nav {
+    display: block;
+}
+
+
+/*--- Footer ---*/
+#bx-footer-wrapper {
+    height: auto;
+}
+
+
+/* Author block in content modules */
+.sys-author .bx-def-unit-info.bx-def-thumb-size-max-height {
+    max-height:none;
+}

+ 1053 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/css/menu-dropdown.css

@@ -0,0 +1,1053 @@
+
+/*--- Login ---*/
+li.bx-lcd-mdd-login div.bx-lcd-login {
+	width: 70%;
+	margin-left: auto;
+	margin-right: auto;
+	padding-top: 1rem;
+	padding-bottom: 1rem;
+
+	background-color: transparent;
+	border-radius: 0;
+}
+li.bx-lcd-mdd-login .bx-lcd-login-cnt,
+li.bx-lcd-mdd-login .bx-lcd-login-scnt,
+li.bx-lcd-mdd-login .bx-lcd-login-form {
+	padding: 0;
+}
+
+/*--- Profile --- */
+.cd-dropdown .cd-dropdown-content .bx-lcd-mddt-account > a {
+	display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+}
+.bx-lcd-mddt-account .bx-base-pofile-unit-wo-info {
+    width: 1.875rem;
+    height: 1.875rem;
+    border: 1px solid rgba(0, 147, 205, 1);
+    border-radius: 1.5rem;
+}
+.bx-lcd-mddt-account  .bx-base-pofile-unit-wo-info .bx-base-pofile-unit-thumb,
+.bx-lcd-mdd-profile .bx-lcd-mddp .bx-base-pofile-unit-wo-info .bx-base-pofile-unit-thumb {
+    width: 1.875rem;
+    height: 1.875rem;
+    line-height: 1.875rem;
+}
+
+/*+++ Activity Feed item +++*/
+.cd-dropdown .cd-dropdown-content .bx-lcd-mddt-activity-feed > a {
+	font-weight: 900;
+}
+
+/*+++ Notifications item +++*/
+.cd-dropdown .cd-dropdown-content .bx-lcd-mddt-notifications-notifications .bx-ntfs-event {
+	margin: 0.3125rem 0.625rem;
+	background-color: rgba(255, 255, 255, 0.1);
+}
+.cd-dropdown .cd-dropdown-content .bx-lcd-mddt-notifications-notifications .bx-ntfs-event a {
+	height: auto;
+	line-height: normal;
+	font-weight: normal;
+}
+
+
+/*--- Reset ---*/
+.cd-dropdown *, 
+.cd-dropdown *::after, 
+.cd-dropdown *::before {
+  box-sizing: border-box;
+}
+.cd-dropdown h2,
+.cd-dropdown ol,
+.cd-dropdown ul,
+.cd-dropdown li,
+.cd-dropdown a {
+    margin: 0;
+    padding: 0;
+    border: 0;
+}
+.cd-dropdown li {
+    display: list-item;
+    text-align: -webkit-match-parent;
+}
+.cd-dropdown li.bx-menu-item-cd-more-auto {
+    display: none;
+}
+
+/*--- Main Components ---*/
+.cd-dropdown h2,
+.cd-dropdown .cd-dropdown-content a,
+.cd-dropdown .cd-dropdown-content ul a {
+  height: 50px;
+  line-height: 50px;
+}
+
+.bx-media-tablet .cd-dropdown h2,
+.bx-media-tablet .cd-dropdown .cd-dropdown-content a,
+.bx-media-tablet .cd-dropdown .cd-dropdown-content ul a {
+	height: 60px;
+	line-height: 60px;
+}
+
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown h2,
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content a,
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content ul a {
+	height: 50px;
+	line-height: 50px;
+}
+
+.cd-dropdown h2,
+.cd-dropdown .cd-dropdown-content a,
+.cd-dropdown .cd-dropdown-content ul a,
+.cd-dropdown .cd-dropdown-content .cd-divider {
+  padding: 0 20px;
+}
+
+.cd-dropdown {
+  position: fixed;
+  top: 0;
+  left: 0;
+  width: 100%;
+  height: 100%;
+  background-color: rgba(4, 52, 71, 1.0);
+  color: #ffffff;
+  visibility: hidden;
+  /* Force Hardware Acceleration */
+  -webkit-backface-visibility: hidden;
+  backface-visibility: hidden;
+  -webkit-transform: translateZ(0);
+  -moz-transform: translateZ(0);
+  -ms-transform: translateZ(0);
+  -o-transform: translateZ(0);
+  transform: translateZ(0);
+  -webkit-transform: translateY(-100%);
+  -moz-transform: translateY(-100%);
+  -ms-transform: translateY(-100%);
+  -o-transform: translateY(-100%);
+  transform: translateY(-100%);
+  -webkit-transition: -webkit-transform 0.5s 0s, visibility 0s 0.5s;
+  -moz-transition: -moz-transform 0.5s 0s, visibility 0s 0.5s;
+  transition: transform 0.5s 0s, visibility 0s 0.5s;
+}
+.cd-dropdown h2 {
+  /* dropdown title - mobile version only */
+  position: relative;
+  z-index: 1;
+  border-bottom: 1px solid rgba(255,255,255,0.1);
+}
+.cd-dropdown h2 img {
+    height: 2rem;
+    margin: 0.5625rem 0;
+}
+.cd-dropdown .cd-close {
+  /* 'X' close icon - mobile version only */
+  position: absolute;
+  z-index: 1;
+  right: 0;
+  top: 0;
+  height: 50px;
+  width: 50px;
+  /* image replacement */
+  overflow: hidden;
+  text-indent: 100%;
+  white-space: nowrap;
+  color: transparent;
+}
+.cd-dropdown .cd-close::after, 
+.cd-dropdown .cd-close::before {
+  /* this is the 'X' icon */
+  content: '';
+  position: absolute;
+  left: 50%;
+  top: 50%;
+  bottom: auto;
+  right: auto;
+  -webkit-transform: translateX(-50%) translateY(-50%);
+  -moz-transform: translateX(-50%) translateY(-50%);
+  -ms-transform: translateX(-50%) translateY(-50%);
+  -o-transform: translateX(-50%) translateY(-50%);
+  transform: translateX(-50%) translateY(-50%);
+  height: 20px;
+  width: 2px;
+}
+.cd-dropdown .cd-close::after {
+  -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
+  -moz-transform: translateX(-50%) translateY(-50%) rotate(45deg);
+  -ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
+  -o-transform: translateX(-50%) translateY(-50%) rotate(45deg);
+  transform: translateX(-50%) translateY(-50%) rotate(45deg);
+}
+.cd-dropdown .cd-close::before {
+  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
+  -moz-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
+  -ms-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
+  -o-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
+  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
+}
+.cd-dropdown.dropdown-is-active {
+  visibility: visible;
+  -webkit-transform: translateY(0);
+  -moz-transform: translateY(0);
+  -ms-transform: translateY(0);
+  -o-transform: translateY(0);
+  transform: translateY(0);
+  -webkit-transition: -webkit-transform 0.5s 0s, visibility 0s 0s;
+  -moz-transition: -moz-transform 0.5s 0s, visibility 0s 0s;
+  transition: transform 0.5s 0s, visibility 0s 0s;
+}
+
+/* 
+ * Note: Currently this menu 
+ * isn't used on Desktop view
+ */
+.bx-media-tablet .cd-dropdown,
+.bx-media-desktop .cd-dropdown {
+    display: none;
+}
+
+:where(.bx-media-tablet, .bx-media-desktop) .cd-dropdown .cd-close {
+    top: 5px;
+  }
+
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown {
+    position: absolute;
+    top: calc(100% - 2px);
+    /* reset style*/
+    height: auto;
+    width: auto;
+    -webkit-transform: translateX(0);
+    -moz-transform: translateX(0);
+    -ms-transform: translateX(0);
+    -o-transform: translateX(0);
+    transform: translateX(0);
+    background-color: #ffffff;
+    color: #111433;
+    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
+    opacity: 0;
+    -webkit-transform: translateY(30px);
+    -moz-transform: translateY(30px);
+    -ms-transform: translateY(30px);
+    -o-transform: translateY(30px);
+    transform: translateY(30px);
+    -webkit-transition: opacity 0.3s 0s, visibility 0s 0.3s, -webkit-transform 0.3s 0s;
+    -moz-transition: opacity 0.3s 0s, visibility 0s 0.3s, -moz-transform 0.3s 0s;
+    transition: opacity 0.3s 0s, visibility 0s 0.3s, transform 0.3s 0s;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .open-to-left .cd-dropdown {
+    /* use the .open-to-left class if you want to open the dropdown on the left */
+    right: 0;
+    left: auto;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown h2, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-close {
+    /* on desktop - hide title and 'X' */
+    display: none;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown.dropdown-is-active {
+    opacity: 1;
+    -webkit-transform: translateY(0);
+    -moz-transform: translateY(0);
+    -ms-transform: translateY(0);
+    -o-transform: translateY(0);
+    transform: translateY(0);
+    -webkit-transition: opacity 0.3s 0s, visibility 0.3s 0s, -webkit-transform 0.3s 0s;
+    -moz-transition: opacity 0.3s 0s, visibility 0.3s 0s, -moz-transform 0.3s 0s;
+    transition: opacity 0.3s 0s, visibility 0.3s 0s, transform 0.3s 0s;
+  }
+
+.cd-dropdown .cd-dropdown-content, 
+.cd-dropdown .cd-dropdown-content ul {
+  position: absolute;
+  top: 0;
+  left: 0;
+  width: 100%;
+  height: 100%;
+  box-sizing: border-box;
+  margin: 0;
+  padding: 50px 0 0 0;
+  overflow-x: hidden;
+  overflow-y: auto;
+  -webkit-transition: -webkit-transform 0.3s;
+  -moz-transition: -moz-transform 0.3s;
+  transition: transform 0.3s;
+  list-style: none;
+}
+
+.cd-dropdown .cd-dropdown-content li > a {
+    display: -webkit-flex;
+    display: flex;
+    -webkit-align-items: center;
+    align-items: center;
+}
+
+.cd-dropdown .cd-dropdown-content a, 
+.cd-dropdown .cd-dropdown-content ul a {
+  display: block;
+  
+  border-top-width: 1px;
+  border-color: rgba(255,255,255,0.1);
+  border-style: solid;
+
+  /* truncate text with ellipsis if too long */
+  text-overflow: ellipsis;
+  overflow: hidden;
+
+  white-space: nowrap;
+}
+
+.cd-dropdown .cd-dropdown-content a .sys-icon, 
+.cd-dropdown .cd-dropdown-content ul a .sys-icon,
+.cd-dropdown .cd-dropdown-content a img:not(.bx-def-thumb), 
+.cd-dropdown .cd-dropdown-content ul a img:not(.bx-def-thumb) {
+	width: 1.5rem;
+	height: 1.5rem;
+	margin-right: 0.625rem;
+}
+
+.cd-dropdown .cd-dropdown-content a .sys-icon, 
+.cd-dropdown .cd-dropdown-content ul a .sys-icon {
+	line-height: 1.5rem;
+	text-align: center;
+}
+
+.cd-dropdown .cd-dropdown-content a img:not(.bx-def-thumb), 
+.cd-dropdown .cd-dropdown-content ul a img:not(.bx-def-thumb) {
+	background-repeat: no-repeat;
+	background-position: center center;
+}
+
+.cd-dropdown .cd-dropdown-content li:first-of-type > a, 
+.cd-dropdown .cd-dropdown-content ul li:first-of-type > a {
+  border-top-width: 0;
+}
+.cd-dropdown .cd-dropdown-content li:last-of-type > a, 
+.cd-dropdown .cd-dropdown-content ul li:last-of-type > a {
+  border-bottom-width: 1px;
+}
+.cd-dropdown .cd-dropdown-content .cd-divider, 
+.cd-dropdown .cd-dropdown-content ul .cd-divider {
+  padding-top: 0.3125rem;
+  padding-bottom: 0.3125rem;
+  background-color: rgba(2, 33, 45, 1.0);
+  font-size: 0.625rem;
+  font-weight: 600;
+  text-transform: uppercase;
+  color: rgba(255, 255, 255, 0.5);
+}
+.cd-dropdown .cd-dropdown-content .cd-divider + li > a, 
+.cd-dropdown .cd-dropdown-content ul .cd-divider + li > a {
+  border-top-width: 0;
+}
+.cd-dropdown .cd-dropdown-content a, 
+.cd-dropdown .cd-dropdown-content .bx-lcd-mdd-search, 
+.cd-dropdown .cd-dropdown-content .bx-lcd-login,
+.cd-dropdown .cd-dropdown-content .bx-lcd-mdd-profile,
+.cd-dropdown .cd-dropdown-content .cd-divider, 
+.cd-dropdown .cd-dropdown-content ul a, 
+.cd-dropdown .cd-dropdown-content ul .bx-lcd-mdd-search, 
+.cd-dropdown .cd-dropdown-content ul .bx-lcd-login,
+.cd-dropdown .cd-dropdown-content ul .bx-lcd-mdd-profile,
+.cd-dropdown .cd-dropdown-content ul .cd-divider {
+  /* Force Hardware Acceleration */
+  -webkit-transform: translateZ(0);
+  -moz-transform: translateZ(0);
+  -ms-transform: translateZ(0);
+  -o-transform: translateZ(0);
+  transform: translateZ(0);
+  -webkit-backface-visibility: hidden;
+  backface-visibility: hidden;
+  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
+  -moz-transition: opacity 0.3s, -moz-transform 0.3s;
+  transition: opacity 0.3s, transform 0.3s;
+}
+.cd-dropdown .cd-dropdown-content.is-hidden, 
+.cd-dropdown .cd-dropdown-content ul.is-hidden {
+  /* push the secondary dropdown items to the right */
+  -webkit-transform: translateX(100%);
+  -moz-transform: translateX(100%);
+  -ms-transform: translateX(100%);
+  -o-transform: translateX(100%);
+  transform: translateX(100%);
+}
+.cd-dropdown .cd-dropdown-content.is-hidden > li > a, 
+.cd-dropdown .cd-dropdown-content.is-hidden > li > .bx-lcd-login,
+.cd-dropdown .cd-dropdown-content.is-hidden > .bx-lcd-mdd-search, 
+.cd-dropdown .cd-dropdown-content.is-hidden > .bx-lcd-mdd-profile,  
+.cd-dropdown .cd-dropdown-content.is-hidden > .cd-divider, 
+.cd-dropdown .cd-dropdown-content.move-out > li > a, 
+.cd-dropdown .cd-dropdown-content.move-out > li > .bx-lcd-login,
+.cd-dropdown .cd-dropdown-content.move-out > .bx-lcd-mdd-search, 
+.cd-dropdown .cd-dropdown-content.move-out > .bx-lcd-mdd-profile,  
+.cd-dropdown .cd-dropdown-content.move-out > .cd-divider, 
+.cd-dropdown .cd-dropdown-content ul.is-hidden > li > a, 
+.cd-dropdown .cd-dropdown-content ul.is-hidden > li > .bx-lcd-login,
+.cd-dropdown .cd-dropdown-content ul.is-hidden > .bx-lcd-mdd-search,
+.cd-dropdown .cd-dropdown-content ul.is-hidden > .bx-lcd-mdd-profile,
+.cd-dropdown .cd-dropdown-content ul.is-hidden > .cd-divider, 
+.cd-dropdown .cd-dropdown-content ul.move-out > li > a, 
+.cd-dropdown .cd-dropdown-content ul.move-out > li > .bx-lcd-login,
+.cd-dropdown .cd-dropdown-content ul.move-out > .bx-lcd-mdd-search, 
+.cd-dropdown .cd-dropdown-content ul.move-out > .bx-lcd-mdd-profile,  
+.cd-dropdown .cd-dropdown-content ul.move-out > .cd-divider {
+  /* lower down the dropdown items opacity - when secondary dropdown slides in or for dropdown items hidden on the right */
+  opacity: 0;
+}
+.cd-dropdown .cd-dropdown-content.move-out > li > a, 
+.cd-dropdown .cd-dropdown-content.move-out > li > .bx-lcd-login,
+.cd-dropdown .cd-dropdown-content.move-out > .bx-lcd-mdd-search,
+.cd-dropdown .cd-dropdown-content.move-out > .bx-lcd-mdd-profile,
+.cd-dropdown .cd-dropdown-content.move-out > .cd-divider, 
+.cd-dropdown .cd-dropdown-content ul.move-out > li > a, 
+.cd-dropdown .cd-dropdown-content ul.move-out > li > .bx-lcd-login,
+.cd-dropdown .cd-dropdown-content ul.move-out > .bx-lcd-mdd-search,
+.cd-dropdown .cd-dropdown-content ul.move-out > .bx-lcd-mdd-profile,
+.cd-dropdown .cd-dropdown-content ul.move-out > .cd-divider {
+  /* push the dropdown items to the left when secondary dropdown slides in */
+  -webkit-transform: translateX(-100%);
+  -moz-transform: translateX(-100%);
+  -ms-transform: translateX(-100%);
+  -o-transform: translateX(-100%);
+  transform: translateX(-100%);
+}
+.dropdown-is-active .cd-dropdown-content, 
+.dropdown-is-active .cd-dropdown-content ul {
+  -webkit-overflow-scrolling: touch;
+}
+.bx-media-tablet  .cd-dropdown .cd-dropdown-content, .cd-dropdown-content ul {
+    padding-top: 60px;
+  }
+ .bx-media-tablet .cd-dropdown .cd-dropdown-content a, .cd-dropdown-content ul a {
+    font-size: 1.8rem;
+  }
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul {
+    padding-top: 0;
+    overflow: visible;
+  }
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content a, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul a {
+    color: #111433;
+    height: 50px;
+    line-height: 50px;
+    font-size: 1.5rem;
+    border-color: #ebebeb;
+  }
+.bx-media-tablet2  .cd-dropdown .cd-dropdown-content .cd-divider, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul .cd-divider {
+    background-color: transparent;
+    color: #b3b3b3;
+    border-top: 1px solid #ebebeb;
+  }
+ .bx-media-tablet2 .cd-dropdown .cd-dropdown-content .cd-divider + li > a, 
+ .bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul .cd-divider + li > a {
+    border-top-width: 1px;
+  }
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.is-hidden > li > a, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.is-hidden > li > .bx-lcd-login,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.is-hidden > .bx-lcd-mdd-search,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.is-hidden > .bx-lcd-mdd-profile,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.is-hidden > .cd-divider, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.move-out > li > a, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.move-out > li > .bx-lcd-login,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.move-out > .bx-lcd-mdd-search,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.move-out > .bx-lcd-mdd-profile,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content.move-out > .cd-divider, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.is-hidden > li > a, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.is-hidden > li > .bx-lcd-login,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.is-hidden > .bx-lcd-mdd-search,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.is-hidden > .bx-lcd-mdd-profile,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.is-hidden > .cd-divider, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.move-out > li > a, 
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.move-out > li > .bx-lcd-login,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.move-out > .bx-lcd-mdd-search,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.move-out > .bx-lcd-mdd-profile,
+.bx-media-tablet2 .cd-dropdown .cd-dropdown-content ul.move-out > .cd-divider {
+    /* reset mobile style */
+    opacity: 1;
+  }
+
+.cd-dropdown .cd-dropdown-content .see-all a {
+  /* different style for the See all links */
+  color: #3f8654;
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-gallery .cd-dropdown-item, 
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item {
+  /* items with picture (or icon) and title */
+  height: 80px;
+  line-height: 80px;
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-gallery .cd-dropdown-item h3, 
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item h3 {
+  /* truncate text with ellipsis if too long */
+  overflow: hidden;
+  text-overflow: ellipsis;
+  white-space: nowrap;
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-gallery .cd-dropdown-item {
+  padding-left: 90px;
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-gallery img {
+  position: absolute;
+  display: block;
+  height: 40px;
+  width: auto;
+  left: 20px;
+  top: 50%;
+  margin-top: -20px;
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item {
+  padding-left: 75px;
+  position: relative;
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item p {
+  color: #111433;
+  font-size: 1.3rem;
+  /* hide description on small devices */
+  display: none;
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item::before {
+  /* item icon */
+  content: '';
+  display: block;
+  position: absolute;
+  left: 20px;
+  top: 50%;
+  margin-top: -20px;
+  width: 40px;
+  height: 40px;
+  background-repeat: no-repeat;
+  background-position: center center;
+  background-size: 40px 40px;
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-1::before {
+  background-image: url("../img/nucleo-icon-1.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-2::before {
+  background-image: url("../img/nucleo-icon-2.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-3::before {
+  background-image: url("../img/nucleo-icon-3.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-4::before {
+  background-image: url("../img/nucleo-icon-4.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-5::before {
+  background-image: url("../img/nucleo-icon-5.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-6::before {
+  background-image: url("../img/nucleo-icon-6.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-7::before {
+  background-image: url("../img/nucleo-icon-7.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-8::before {
+  background-image: url("../img/nucleo-icon-8.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-9::before {
+  background-image: url("../img/nucleo-icon-9.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-10::before {
+  background-image: url("../img/nucleo-icon-10.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-11::before {
+  background-image: url("../img/nucleo-icon-11.svg");
+}
+.cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item.item-12::before {
+  background-image: url("../img/nucleo-icon-12.svg");
+}
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content {
+    /* reset mobile style */
+    position: static;
+    height: auto;
+    width: 280px;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content > li:last-of-type a {
+    border-bottom: none;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop) .no-touchevents .cd-dropdown .cd-dropdown-content > li:not(.has-children) a:hover {
+    color: #3f8654;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content.move-out > li > a, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content.move-out > li > .bx-lcd-login,
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content.move-out > .bx-lcd-mdd-search,
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content.move-out > .bx-lcd-mdd-profile,
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content.move-out > .cd-divider {
+    /* reset mobile style */
+    -webkit-transform: translateX(0);
+    -moz-transform: translateX(0);
+    -ms-transform: translateX(0);
+    -o-transform: translateX(0);
+    transform: translateX(0);
+    opacity: 1;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-icons {
+    -webkit-transform: translateX(0);
+    -moz-transform: translateX(0);
+    -ms-transform: translateX(0);
+    -o-transform: translateX(0);
+    transform: translateX(0);
+    left: 100%;
+    height: auto;
+    background-color: #ffffff;
+    box-shadow: 0 2px 14px rgba(0, 0, 0, 0.1);
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown::after, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery::after, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-icons::after {
+    clear: both;
+    content: "";
+    display: table;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .open-to-left .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown, 
+:where(.bx-media-tablet2, .bx-media-desktop) .open-to-left .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery, 
+:where(.bx-media-tablet2, .bx-media-desktop) .open-to-left .cd-dropdown .cd-dropdown-content .cd-dropdown-icons {
+    /* use the .open-to-left class if you want to open the dropdown on the left */
+    left: auto;
+    right: 100%;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown.is-hidden, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery.is-hidden, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-icons.is-hidden {
+    /* reset mobile style */
+    -webkit-transform: translateX(0);
+    -moz-transform: translateX(0);
+    -ms-transform: translateX(0);
+    -o-transform: translateX(0);
+    transform: translateX(0);
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown.fade-in, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery.fade-in, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-icons.fade-in {
+    /* animate secondary dropdown items when hovering over of of the .cd-dropdown-content list items */
+    -webkit-animation: cd-fade-in 0.2s;
+    -moz-animation: cd-fade-in 0.2s;
+    animation: cd-fade-in 0.2s;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown.fade-out, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery.fade-out, 
+:where(.bx-media-tablet2, .bx-media-desktop) .cd-dropdown .cd-dropdown-content .cd-dropdown-icons.fade-out {
+    /* animate secondary dropdown items when hovering over of of the .cd-dropdown-content list items */
+    -webkit-animation: cd-fade-out 0.2s;
+    -moz-animation: cd-fade-out 0.2s;
+    animation: cd-fade-out 0.2s;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > .go-back, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > .go-back, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons > .go-back {
+    display: none;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > .see-all, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > .see-all, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons > .see-all {
+    position: absolute;
+    bottom: 20px;
+    height: 45px;
+    text-align: center;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > .see-all a, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > .see-all a, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons > .see-all a {
+    margin: 0;
+    height: 100%;
+    line-height: 45px;
+    background: #ebebeb;
+    pointer-events: auto;
+    -webkit-transition: color 0.2s, background-color 0.2s;
+    -moz-transition: color 0.2s, background-color 0.2s;
+    transition: color 0.2s, background-color 0.2s;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)  .no-touchevents .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > .see-all a:hover, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .no-touchevents .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > .see-all a:hover, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .no-touchevents .cd-dropdown .cd-dropdown-content .cd-dropdown-icons > .see-all a:hover {
+    color: #ffffff;
+    background-color: #111433;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown .cd-dropdown-item, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown a, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery .cd-dropdown-item, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery a, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons a {
+    border: none;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons {
+    padding: 20px 30px 100px;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop)  .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > .see-all, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons > .see-all {
+    width: calc(100% - 60px);
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons > li, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > li {
+    width: 50%;
+    float: left;
+  }
+ :where(.bx-media-tablet2, .bx-media-desktop)  .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown {
+    overflow: hidden;
+    width: 550px;
+    padding-bottom: 65px;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown::before {
+    /* this is the separation line in the middle of the .cd-secondary-dropdown element */
+    position: absolute;
+    content: '';
+    top: 290px;
+    left: 15px;
+    height: 1px;
+    width: 520px;
+    background-color: #ebebeb;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > li > a {
+    color: #3f8654;
+    font-size: 1.6rem;
+    margin-bottom: 10px;
+    line-height: 30px;
+    height: 30px;
+    pointer-events: none;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > li > a::after, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > li > a::before {
+    /* hide the arrow */
+    display: none;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown.move-out > li > a {
+    /* reset mobile style */
+    -webkit-transform: translateX(0);
+    -moz-transform: translateX(0);
+    -ms-transform: translateX(0);
+    -o-transform: translateX(0);
+    transform: translateX(0);
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > li {
+    margin: 20px 0;
+    border-right-width: 1px;
+    border-color: #ebebeb;
+    border-style: solid;
+    padding: 0 30px;
+    height: 250px;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > li:nth-of-type(2n) {
+    border-right-width: 0;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > li > ul {
+    /* reset mobile style */
+    -webkit-transform: translate(0);
+    -moz-transform: translate(0);
+    -ms-transform: translate(0);
+    -o-transform: translate(0);
+    transform: translate(0);
+    position: relative;
+    height: auto;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown > li > ul > .go-back {
+    display: none;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown a {
+    line-height: 25px;
+    height: 25px;
+    font-size: 1.3rem;
+    padding-left: 0;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .no-touchevents .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown a:hover {
+    color: #3f8654;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown ul {
+    padding-bottom: 25px;
+    overflow: hidden;
+    height: auto;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown .go-back a {
+    padding-left: 20px;
+    color: transparent;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .no-touchevents .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown .go-back a:hover {
+    color: transparent;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)  .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown .go-back a::before, 
+:where(.bx-media-tablet2, .bx-media-desktop)  .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown .go-back a::after {
+    left: 0;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-secondary-dropdown .see-all {
+    position: absolute;
+    bottom: 0;
+    left: 0;
+    width: 100%;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)  .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery {
+    width: 600px;
+    padding-bottom: 100px;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > li {
+    width: 48%;
+    float: left;
+    margin-right: 4%;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > li:nth-of-type(2n) {
+    margin-right: 0;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery .cd-dropdown-item {
+    padding: 0;
+    height: auto;
+    line-height: normal;
+    color: #3f8654;
+    margin-bottom: 2em;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > li:nth-last-of-type(2) a,
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery > li:last-of-type a {
+    margin-bottom: 0;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-gallery img {
+    position: static;
+    height: auto;
+    width: 100%;
+    margin: 0 0 0.6em;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons {
+    width: 600px;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item {
+    height: 80px;
+    line-height: 1.2;
+    padding: 24px 0 0 85px;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item:hover {
+    background: #ebebeb;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item h3 {
+    color: #3f8654;
+    font-weight: bold;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item p {
+    display: block;
+    font-size: 1.2rem;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)  .cd-dropdown .cd-dropdown-content .cd-dropdown-icons .cd-dropdown-item::before {
+    left: 25px;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)  .cd-dropdown .cd-dropdown-content > .has-children > ul {
+    visibility: hidden;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content > .has-children > ul.is-active {
+    /* when hover over .cd-dropdown-content items - show subnavigation */
+    visibility: visible;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content > .has-children > .cd-secondary-dropdown.is-active > li > ul {
+    /* if .cd-secondary-dropdown is visible - show also subnavigation */
+    visibility: visible;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content > .has-children > a.is-active {
+    /* hover effect for .cd-dropdown-content items with subnavigation */
+    box-shadow: inset 2px 0 0 #3f8654;
+    color: #3f8654;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content > .has-children > a.is-active::before, 
+:where(.bx-media-tablet2, .bx-media-desktop)   .cd-dropdown .cd-dropdown-content > .has-children > a.is-active::after {
+    background: #3f8654;
+  }
+:where(.bx-media-tablet2, .bx-media-desktop)  .open-to-left .cd-dropdown .cd-dropdown-content > .has-children > a.is-active {
+    box-shadow: inset -2px 0 0 #3f8654;
+  }
+
+@-webkit-keyframes cd-fade-in {
+  0% {
+    opacity: 0;
+    visibility: visible;
+  }
+  100% {
+    opacity: 1;
+    visibility: visible;
+  }
+}
+@-moz-keyframes cd-fade-in {
+  0% {
+    opacity: 0;
+    visibility: visible;
+  }
+  100% {
+    opacity: 1;
+    visibility: visible;
+  }
+}
+@keyframes cd-fade-in {
+  0% {
+    opacity: 0;
+    visibility: visible;
+  }
+  100% {
+    opacity: 1;
+    visibility: visible;
+  }
+}
+@-webkit-keyframes cd-fade-out {
+  0% {
+    opacity: 1;
+    visibility: visible;
+  }
+  100% {
+    opacity: 0;
+    visibility: visible;
+  }
+}
+@-moz-keyframes cd-fade-out {
+  0% {
+    opacity: 1;
+    visibility: visible;
+  }
+  100% {
+    opacity: 0;
+    visibility: visible;
+  }
+}
+@keyframes cd-fade-out {
+  0% {
+    opacity: 1;
+    visibility: visible;
+  }
+  100% {
+    opacity: 0;
+    visibility: visible;
+  }
+}
+
+.bx-lcd-mdd-search .bx-page-block-container {
+	padding: 0;
+}
+
+.bx-lcd-mdd-search .bx-page-block-container input[type="text"] {
+  width: 100%;
+  height: 50px;
+  padding: 0 20px;
+  -webkit-appearance: none;
+  -moz-appearance: none;
+  -ms-appearance: none;
+  -o-appearance: none;
+  appearance: none;
+  background-color: rgba(0, 0, 0, 0.1);
+  border: none;
+  border-radius: 0;
+}
+
+.has-children > a, .go-back a {
+  position: relative;
+}
+.go-back a::before, 
+.go-back a::after,
+.has-children > a::before, 
+.has-children > a::after {
+  /* arrow icon in CSS - for element with nested unordered lists */
+  content: '';
+  position: absolute;
+  top: 50%;
+  margin-top: -1px;
+  display: inline-block;
+  height: 2px;
+  width: 10px;
+  -webkit-backface-visibility: hidden;
+  backface-visibility: hidden;
+}
+.has-children > a::before, .go-back a::before {
+  -webkit-transform: rotate(45deg);
+  -moz-transform: rotate(45deg);
+  -ms-transform: rotate(45deg);
+  -o-transform: rotate(45deg);
+  transform: rotate(45deg);
+}
+.has-children > a::after, .go-back a::after {
+  -webkit-transform: rotate(-45deg);
+  -moz-transform: rotate(-45deg);
+  -ms-transform: rotate(-45deg);
+  -o-transform: rotate(-45deg);
+  transform: rotate(-45deg);
+}
+:where(.bx-media-tablet, .bx-media-desktop) .has-children > a::before, .has-children > a::after, .go-back a::before, .go-back a::after {
+    background: #b3b3b3;
+  }
+
+.has-children > a {
+  padding-right: 40px;
+}
+.has-children > a::before, .has-children > a::after {
+  /* arrow goes on the right side - children navigation */
+  right: 20px;
+  -webkit-transform-origin: 9px 50%;
+  -moz-transform-origin: 9px 50%;
+  -ms-transform-origin: 9px 50%;
+  -o-transform-origin: 9px 50%;
+  transform-origin: 9px 50%;
+}
+
+:where(.bx-media-tablet, .bx-media-desktop) .open-to-left .cd-dropdown .cd-dropdown-content > .has-children > a {
+	padding-left: 40px;
+	padding-right: 20px;
+}
+:where(.bx-media-tablet, .bx-media-desktop) .open-to-left .cd-dropdown .cd-dropdown-content > .has-children > a::before, 
+:where(.bx-media-tablet, .bx-media-desktop) .open-to-left .cd-dropdown .cd-dropdown-content > .has-children > a::after {
+	right: auto;
+	left: 20px;
+	-webkit-transform-origin: 1px 50%;
+	-moz-transform-origin: 1px 50%;
+	-ms-transform-origin: 1px 50%;
+	-o-transform-origin: 1px 50%;
+	transform-origin: 1px 50%;
+}
+.cd-dropdown .cd-dropdown-content .go-back a {
+  padding-left: 40px;
+}
+.cd-dropdown .cd-dropdown-content .go-back a::before, 
+.cd-dropdown .cd-dropdown-content .go-back a::after {
+  /* arrow goes on the left side - go back button */
+  left: 20px;
+  -webkit-transform-origin: 1px 50%;
+  -moz-transform-origin: 1px 50%;
+  -ms-transform-origin: 1px 50%;
+  -o-transform-origin: 1px 50%;
+  transform-origin: 1px 50%;
+}
+
+.no-js .cd-dropdown-wrapper:hover .cd-dropdown {
+  visibility: visible;
+  opacity: 1;
+  -webkit-transform: translateY(0);
+  -moz-transform: translateY(0);
+  -ms-transform: translateY(0);
+  -o-transform: translateY(0);
+  transform: translateY(0);
+}
+
+.no-js .cd-dropdown-wrapper .cd-close {
+  display: none;
+}
+
+
+/*--- Member Toolbar ---*/
+.cd-dropdown .cd-dropdown-content ul.bx-menu-toolbar {
+    position: relative;
+    padding: 0;
+    text-align: center;
+}
+.cd-dropdown .cd-dropdown-content ul.bx-menu-toolbar li {
+	display: inline-block;
+	float: none;
+	vertical-align: middle;
+}
+.cd-dropdown .cd-dropdown-content ul.bx-menu-toolbar li a {
+	height: auto;
+    margin: 0;
+    padding: 1rem;
+    border-width: 0px;
+    line-height: normal;
+}
+.cd-dropdown .cd-dropdown-content ul.bx-menu-toolbar li a,
+.cd-dropdown .cd-dropdown-content ul.bx-menu-toolbar li a .sys-icon {
+	color: #ffffff;
+}
+.cd-dropdown .cd-dropdown-content ul.bx-menu-toolbar li a .bx-menu-item-addon {
+	top: 0;
+	right: 0;
+	box-sizing: content-box;
+}

+ 648 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/css/menu.less

@@ -0,0 +1,648 @@
+@import (reference) 'default.less';
+@import '../../../../../../../template/css/menu.css';
+
+.@{bx-root-class-name} {
+    
+    .bx-menu-toolbar-padding {
+        padding-top: 0;
+    }
+
+
+    /*--- Main (Top) Menu ---*/
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site {
+        display: block;
+        white-space: normal;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li {
+        width: auto;
+        height: auto;
+        margin: 0;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li:not(.bx-menu-item-more-auto) {
+        display: block;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li > a,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site ul.bx-menu-submenu-more-auto > li > a {
+        padding: 0px 0.5rem;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li:hover {
+        opacity: 1.0;
+    }
+
+    .bx-sliding-smenu-submenu {
+        position: absolute;
+        display: none;
+
+        top: 100%;
+        left: 0px;
+        min-width: 100%;
+
+        background-color: #ffffff;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li.bx-sliding-smenu-tab-active .bx-sliding-smenu-submenu {
+        display: block;
+    }
+
+    .bx-sliding-smenu-submenu .bx-sliding-sms-cnt ul li,
+    .bx-sliding-smenu-submenu .bx-sliding-sms-cnt ul li a {
+        margin: 0px;
+        padding: 0px;
+    }
+    .bx-sliding-smenu-submenu .bx-sliding-sms-cnt ul li a {
+        line-height: 2.0rem;
+    }
+    .bx-sliding-smenu-submenu .bx-sliding-sms-cnt ul li:hover,
+    .bx-sliding-smenu-submenu .bx-sliding-sms-cnt ul li a:hover {
+        background-color: transparent;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-icon, 
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-title,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-arrow {
+        display: inline-block;
+        vertical-align: middle;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-icon img,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-icon .sys-icon {
+        width: auto;
+        max-height: 2rem;
+
+        margin: 0 0.5rem 0 0;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-icon .sys-icon {
+        line-height: 2rem;
+        font-size: 1.2rem;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-submenu-more-auto li .bx-menu-floating-blocks-icon .sys-icon { 
+        vertical-align: baseline;
+        height: auto;
+        line-height: normal;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-icon img {
+        background-pocition: center center;
+        background-repeat: none;
+        background-size: 60% 60%;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-arrow .sys-icon {
+        width: auto;
+        height: auto;
+
+        margin: 0px;
+
+        font-size: 1.2rem;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li .bx-menu-floating-blocks-arrow .sys-icon.active {
+        display: none;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li.bx-sliding-smenu-tab-active .bx-menu-floating-blocks-arrow .sys-icon.active {
+        display: inline;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li.bx-sliding-smenu-tab-active .bx-menu-floating-blocks-arrow .sys-icon.inactive {
+        display: none;
+    }
+
+
+    /*--- Submenu ---*/
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu-wrp {
+        position: relative;
+
+        -webkit-overflow-scrolling: touch;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-bar:not(.bx-menu-more-auto) .bx-menu-main-submenu-wrp {
+        overflow-x: auto;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu-group {
+        position: relative;
+
+        width: 100%;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-bar:not(.bx-menu-more-auto) .bx-menu-main-submenu-group {
+        display: table;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu-hr {
+        width: 100%;
+        height: 0.1875rem;
+        -webkit-border-radius: 2px;
+        border-radius: 2px;
+        background-color: rgba(15, 93, 162, 0.2);
+        box-shadow: 0 1px 0 0 rgba(255,255,255,1);
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu {
+        line-height: 2.875rem;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li {
+        position: relative;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu > li > a {
+        display: -webkit-flex;
+        display: flex;
+        -webkit-flex-flow: row nowrap;
+        flex-flow: row nowrap;
+        -webkit-align-items: center;
+        align-items: center;
+        line-height: 3.125rem;
+    }
+
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li.bx-menu-tab-active > a {
+        font-weight: 900;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li > a span {
+        margin-left: 0.625rem;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li > a span:first-child {
+        margin-left: 0;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li .bx-mms-item-hr {
+        position: absolute;
+        display: none;
+
+        width: 100%;
+        height: 0.1875rem;
+        left: 0;
+        bottom: -0.1875rem;
+
+        -webkit-border-radius: 0.25rem;
+        border-radius: 0.25rem;
+        background-color: rgba(29, 75, 96, 1);
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu li.bx-menu-tab-active .bx-mms-item-hr {
+        display: block;
+    }
+
+
+    /*--- Profile View Submenu ---*/
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu-wrp.bx-menu-profile-view-submenu-wrp {
+        overflow-x: visible;
+    }
+    .bx-menu-main-bar-wrapper .bx-menu-main-submenu-wrp.bx-menu-profile-view-submenu-wrp .bx-menu-main-submenu-group {
+        display: block;
+    }
+
+
+    /*--- Toolbars ---*/
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a.bx-btn {
+        width: auto;
+        height: 1.875rem;
+
+        line-height: 1.675rem;
+    }
+
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a {
+        width: auto;
+        height: auto;
+
+        line-height: normal;
+    }
+
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a .sys-icon,
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a .sys-icon-a,
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a img,
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a span {
+        vertical-align: middle;
+    }
+
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a .sys-icon,
+    .bx-toolbar-item .bx-menu-toolbar .bx-menu-toolbar-item a .sys-icon-a {
+        font-size: 1.0rem;
+    }
+
+    ul.bx-menu-toolbar li a .bx-menu-item-addon {
+        bottom: auto;
+    }
+
+
+    /*--- Toolbar Site ---*/
+    #bx-menu-toolbar-1-container .bx-menu-toolbar li {
+        padding: 0.625rem;
+    }
+
+    #bx-menu-toolbar-1-container ul.bx-menu-toolbar li a .sys-icon-a {
+        margin-top: 0;
+    }
+
+
+    /*--- Toolbar Member ---*/
+    #bx-menu-toolbar-2-container .bx-menu-toolbar {
+        position: relative;
+        display: -webkit-flex;
+        display: flex;
+        -webkit-align-items: center;
+        align-items: center;
+        float: none;
+    }
+
+    #bx-menu-toolbar-2-container .bx-menu-toolbar li {
+        position: relative;
+        display: block;
+        float: none;
+
+        -webkit-flex: 0 0 auto; 
+        -ms-flex:  0 0 auto; 
+        flex:  0 0 auto;
+
+        padding: 0.5rem;
+    }
+
+    #bx-menu-toolbar-2-container .bx-menu-toolbar li.bx-menu-item-account {
+        -webkit-flex-grow: 1; 
+        flex-grow: 1;
+        white-space: nowrap;
+    }
+
+    #bx-menu-toolbar-2-container .bx-menu-toolbar li.bx-menu-item-account a {
+        width: auto;
+    }
+
+    #bx-menu-toolbar-2-container .bx-menu-toolbar li.bx-menu-item-account .bx-menu-toolbar-item-title {
+        display: none;
+    }
+
+    #bx-menu-toolbar-2-container .bx-menu-toolbar li .sys-icon-a {
+        margin-top: 0px;
+        vertical-align: middle;
+    }
+    #bx-menu-toolbar-1-container .bx-menu-toolbar li .sys-icon,
+    #bx-menu-toolbar-2-container .bx-menu-toolbar li .sys-icon {
+        width: auto;
+        height: auto;
+    }
+
+    #bx-menu-toolbar-2-container .bx-menu-toolbar .bx-menu-toolbar-item a .bx-def-thumb-size {
+        width: 2rem;
+        height: 2rem;
+        line-height: 1.9rem;
+        font-size: 1.5rem;
+    }
+
+    #bx-menu-toolbar-2-container .bx-menu-toolbar li a {
+        position: relative;
+        width: 2rem;
+        height: 2rem;
+
+        background-color: rgba(237, 241, 247, 1);
+        border-radius: 1.5rem;
+
+        font-size: 0.875rem;
+    }
+
+
+    /*--- Sliding Menu ---*/
+    .bx-sliding-menu, .bx-sliding-menu-main {
+        left: auto !important;
+        right: 0 !important;
+        max-width: 31.25rem;
+    }
+
+    /*--- Search Popup ---*/
+    #bx-sliding-menu-search.bx-sliding-menu-main .bx-def-page-width {
+        width: 100%;
+    }
+
+    /*--- Notifications Popup ---*/
+    #bx_notifications_preview.bx-sliding-menu .bx-def-page-width {
+        width: 100%;
+    }
+
+    /*--- Account Popup ---*/
+    #bx-sliding-menu-account.bx-sliding-menu-main.bx-sliding-menu-fullheight {
+        height: calc(100% - 3.75rem);
+    }
+
+
+    /*--- Account Popup Submenu & Add Content Menu ---*/
+    .bx-menu-account-popup-profile,
+    .bx-menu-account-popup-menu {
+        text-align: left;
+    }
+    .bx-menu-account-popup-menu ul.bx-menu-floating-blocks-wide,
+    .bx-menu-object-sys_account_notifications li,
+    .bx-menu-object-sys_add_content li {
+        display: block;
+        width: 100%;
+        height: auto;
+    }
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-title,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-title {
+        display: inline-block;
+        vertical-align: top;
+    }
+    .bx-menu-object-sys_account_notifications li a,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-title,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-title {
+        line-height: 1.5rem;
+    }
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-title,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-title {
+        padding-left: 0.5rem;
+        padding-right: 0.5rem;
+    }
+    .bx-menu-object-sys_account_notifications li img,
+    .bx-menu-object-sys_account_notifications li .sys-icon,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon img,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon .sys-icon,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon img,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon .sys-icon {
+        height: 1.0rem;
+        width: 1.0rem;
+
+        margin: 0px;	
+    }
+    .bx-menu-object-sys_account_notifications li .sys-icon,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon .sys-icon,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon .sys-icon {
+        line-height: 1.0rem;
+        font-size: 1.0rem;
+    }
+    .bx-menu-object-sys_account_notifications li img,
+    .bx-menu-object-sys_account_notifications li .bx-menu-floating-blocks-icon img,
+    .bx-menu-object-sys_add_content li .bx-menu-floating-blocks-icon img {
+        background-pocition: center center;
+        background-repeat: none;
+        background-size: 60% 60%;
+    }
+    .bx-menu-object-sys_account_notifications li .bx-def-unit-alert-middle {
+        top: calc(50% - 9px);
+        right: 4px;
+    }
+    .bx-menu-object-sys_account_notifications li:hover {
+        opacity: 1.0;
+    }
+
+    /*--- Add Content Menu ---*/
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main .bx-menu-object-sys_add_content {
+        display: block;
+        width: 100%;
+    }
+
+    /*--- Vertical (Vertical Custom) Menus (in Popup) ---*/
+    .bx-popup .bx-menu-ver li,
+    .bx-popup .bx-menu-custom-ver li,
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li {
+        border-radius: 0; 
+    }
+    .bx-popup .bx-menu-ver li,
+    .bx-popup .bx-menu-custom-ver li,
+    .bx-popup .bx-menu-ver li.bx-def-color-bg-hl-hover,
+    .bx-popup .bx-menu-custom-ver li.bx-def-color-bg-hl-hover,
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li.bx-def-color-bg-hl-hover,
+    .bx-menu-floating-blocks.bx-menu-object-sys_add_content li.bx-def-color-bg-hl-hover,
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li.bx-def-color-bg-hl-hover {
+        border: 1px solid transparent;
+    }
+    .bx-popup .bx-menu-ver li:hover,
+    .bx-popup .bx-menu-custom-ver li:hover,
+    .bx-popup .bx-menu-ver li.bx-def-color-bg-hl-hover:hover,
+    .bx-popup .bx-menu-custom-ver li.bx-def-color-bg-hl-hover:hover,
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li.bx-def-color-bg-hl-hover:hover,
+    .bx-menu-floating-blocks.bx-menu-object-sys_add_content li.bx-def-color-bg-hl-hover:hover,
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li.bx-def-color-bg-hl-hover:hover {
+        border-radius: 0.5rem;
+        border-color: transparent;
+    }
+    .bx-popup .bx-menu-ver li.bx-def-color-bg-active,
+    .bx-popup .bx-menu-custom-ver li.bx-def-color-bg-active {
+        border-radius: 0.5rem;
+        border-color: transparent;
+    }
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li.bx-def-color-bg-active,
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li.bx-def-color-bg-active {
+        border-color: transparent;
+        background-color: transparent;
+    }
+    .bx-popup .bx-menu-custom-ver:not(.bx-menu-submenu-more-auto) li > span,
+    .bx-popup .bx-menu-custom-ver:not(.bx-menu-submenu-more-auto) li > .bx-def-margin-thd-topbottom {
+        width: 100%;
+        margin: 0 !important;
+        padding: 0.25rem 0.5rem;
+    }
+    .bx-popup .bx-menu-custom-ver li a,
+    .bx-menu-floating-blocks.bx-menu-object-sys_add_content li > a, 
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li > a {
+        position: relative;
+        display: -webkit-flex;
+        display: flex;
+        -webkit-flex-flow: row nowrap;
+        flex-flow: row nowrap;
+        -webkit-align-items: center;
+        align-items: center;
+        -webkit-justify-content: flex-start;
+        justify-content: flex-start;
+        box-sizing: border-box;
+        width: 100%;
+        margin: 0;
+        padding: 0;
+    }
+    .bx-popup .bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li.bx-menu-item,
+    .bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-item.bx-menu-item-more-auto .bx-popup .bx-menu-item {
+        padding: 0;
+        line-height: normal;
+    }
+    .bx-popup .bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li > span,
+    .bx-popup .bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li > .bx-def-margin-thd-topbottom {
+        margin: 0;
+        padding-right: 0.5rem;
+    }
+    .bx-popup .bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li > span .bx-menu-addon {
+        padding-right: 0;
+    }
+    .bx-popup .bx-menu-custom.bx-menu-custom-ver.bx-menu-submenu-more-auto li.bx-menu-item a {
+        display: block;
+        line-height: 1.5rem;
+    }
+    .bx-menu-floating-blocks.bx-menu-object-sys_add_content li > a,
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li > a {
+        padding: 0.25rem 0.5rem;
+    }
+    .bx-popup .bx-menu-ver li.bx-def-color-bg-active a,
+    .bx-popup .bx-menu-custom-ver li.bx-def-color-bg-active a,
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li.bx-def-color-bg-active a,
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li.bx-def-color-bg-active a, 
+    .bx-popup .bx-menu-ver li.bx-def-color-bg-active .sys-icon,
+    .bx-popup .bx-menu-custom-ver li.bx-def-color-bg-active .sys-icon,
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li.bx-def-color-bg-active .sys-icon,
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li.bx-def-color-bg-active .sys-icon {
+        font-weight: 800;
+        color: rgba(20,80,100,1) !important;
+    }
+    .bx-popup .bx-menu-ver li img,
+    .bx-popup .bx-menu-ver li .sys-icon,
+    .bx-popup .bx-menu-custom-ver li img,
+    .bx-popup .bx-menu-custom-ver li .sys-icon {
+        display: inline-block;
+        vertical-align: middle;
+        width: 1.6rem;
+        height: 1.6rem;
+        margin-right: 0;
+        line-height: 1.6rem;
+        font-size: 1.0rem;
+    }
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li img,
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li .sys-icon {
+        width: 1.5rem;
+        height: 1.5rem;
+        line-height: 1.5rem;
+    }
+    .bx-popup .bx-menu-ver li a div {
+        padding: 0.25rem 0.5rem;
+        white-space: nowrap;
+    }
+    .bx-popup .bx-menu-ver li a > span,
+    .bx-popup .bx-menu-ver li a div > span,
+    .bx-popup .bx-menu-custom-ver li a > span {
+        white-space: nowrap;
+        vertical-align: baseline;
+    }
+    .bx-menu-floating-blocks-wide.bx-menu-object-sys_account_notifications li .bx-menu-item-addon {
+        top: 0.25rem;
+    }
+
+
+    /* --------------- profile stats menu */
+    .bx-menu-ver.bx-menu-object-sys_profile_stats li .bx-menu-addon-cnt.bx-def-color-bg-hl {
+        background-color: transparent;
+    }
+
+
+    /*--- Custom Menu with More Auto ---*/
+    .bx-menu-main-submenu.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item .bx-btn,
+    .bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item a,
+    .bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item .bx-btn {
+        font-weight: normal;
+    }
+
+    .bx-menu-main-submenu.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item .bx-btn .sys-icon,
+    .bx-menu-custom.bx-menu-custom-hor.bx-menu-more-auto .bx-menu-submenu-more-auto .bx-menu-item .bx-btn .sys-icon {
+        color: @bx-color-icon-body;
+    }
+
+    /*--- Actions menu ---*/
+    .bx-base-general-entity-actions ul.bx-menu-hor li a > span,
+    .bx-base-general-entity-actions ul.bx-menu-custom-hor li a > span {
+        vertical-align: top;
+    }
+}
+
+:where(.bx-media-tablet, .bx-media-desktop) .@{bx-root-class-name} {
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main {
+        position: relative;
+        height: 2.125rem;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-sliding-menu-main-cnt {
+        position: absolute;
+        width: 100%;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site {
+        position: relative;
+        display: -webkit-flex;
+        display: flex;
+        -webkit-align-items: center;
+        align-items: center;
+        height: 100%;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li {
+        position: relative;
+
+        height: 2.125rem;
+        border: 1px solid transparent;
+        border-radius: 0.5rem;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li:not(.bx-menu-item-more-auto) {
+        display: block;
+    }
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li > a {
+        position: relative;
+        display: -webkit-flex;
+        display: flex;
+        -webkit-align-items: center;
+        align-items: center;
+        height: 100%;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li .bx-menu-floating-blocks-line {
+        position: absolute;
+        display: none;
+
+        top: 0px;
+        left: 0px;
+        width: 100%;
+        height: 0.1875rem;
+
+        -webkit-border-radius: 0.25rem;
+        border-radius: 0.25rem;
+        background-color: rgba(255, 255, 255, 1.0);
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li .bx-sliding-smenu-submenu ul,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li .bx-sliding-smenu-submenu ul li{
+        display: block; 
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li:hover,
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li.bx-menu-tab-active:hover {
+        border: 1px solid rgba(0, 0, 0, 0.05);
+        background-color: rgba(0, 0, 0, 0.05);
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li.bx-menu-tab-active {
+        border-color: transparent;
+        background-color: transparent;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site > li:hover .bx-sliding-smenu-submenu {
+        display: block;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li:hover .bx-menu-floating-blocks-arrow .sys-icon.active {
+        display: inline;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main .bx-menu-object-sys_site li:hover .bx-menu-floating-blocks-arrow .sys-icon.inactive {
+        display: none;
+    }
+
+    #bx-sliding-menu-account.bx-sliding-menu-main {
+        left: auto !important;
+        right: 0px !important;
+        width: auto !important;
+    }
+    #bx-sliding-menu-sys_add_content.bx-sliding-menu-main {
+        left: auto !important;
+        right: 0px !important;
+        width: auto !important;
+    }
+}
+
+.bx-media-phone .@{bx-root-class-name} {
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li {
+       height: auto;
+    }
+
+    #bx-sliding-menu-sys_site.bx-sliding-smenu-main ul.bx-menu-object-sys_site li .bx-sliding-sms-cnt {
+       padding: 0px 0px 0px 1.7rem;
+    }
+
+    .bx-sliding-smenu-submenu {
+        position: relative;
+
+        top: 0px;
+        left: 0px;
+
+        background-color: #transparent;
+        box-shadow: none;
+    }
+}

+ 91 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/data/template/system/scripts/BxTemplMenuSite.php

@@ -0,0 +1,91 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    UnaTemplate UNA Template Classes
+ * @{
+ */
+
+/**
+ * @see BxTemplMenuMoreAuto
+ */
+class BxTemplMenuSite extends BxTemplMenuMoreAuto
+{
+    protected $_sModule;
+    protected $_oModule;
+    
+    protected $_bSiteMenu;
+    protected $_bSiteMenuInPanel;
+    protected $_bSiteMenuSubmenu;
+
+    protected $_aHideFromSiteMenuInPanel;
+
+    public function __construct ($aObject, $oTemplate = false)
+    {
+        parent::__construct ($aObject, $oTemplate);
+
+        $this->_sModule = 'bx_lucid';
+        $this->_oModule = BxDolModule::getInstance($this->_sModule);
+
+        $this->_sJsClassMoreAuto = 'BxLucidMenuMoreAuto';
+        $this->_sJsCallMoreAuto = "if(!{js_object}) {var {js_object} = new {js_class}({js_params}); $(document).ready(function() {{js_object}.init();});}";
+
+        $this->_bSiteMenu = $this->_sObject == 'sys_site';
+        $this->_bSiteMenuInPanel = $this->_sObject == 'sys_site_in_panel';
+        $this->_bSiteMenuSubmenu = false;
+
+        $this->_aHideFromSiteMenuInPanel = ['more-auto'];
+    }
+
+    public function getCode ()
+    {
+        $sClass = 'bx-sliding-menu-main';
+        $sStyle = 'display:none';
+        if($this->_bSiteMenu || $this->_bSiteMenuInPanel) {
+            $sClass = 'bx-sliding-smenu-main';
+            $sStyle = '';
+        }
+
+        $this->_oModule->_oTemplate->addJs(array('menu_site.js'));
+        return '<div id="bx-sliding-menu-' . $this->_sObject . '" class="' . $sClass . ' bx-def-z-index-nav" style="' . $sStyle . '"><div class="bx-sliding-menu-main-cnt">' . parent::getCode() . '</div></div>';
+    }
+
+    protected function _getMenuItem ($a)
+    {
+        //--- Hide '[More Auto]' from Site Menu in Panel
+        if($this->_bSiteMenuInPanel && in_array($a['name'], $this->_aHideFromSiteMenuInPanel))
+            return false;
+
+        $aResult = parent::_getMenuItem($a);
+        if(empty($aResult) || !is_array($aResult))
+            return $aResult;
+
+        $aTmplVarsSubmenu = array();
+        $bTmplVarsSubmenu = $this->_bSiteMenu && $this->_bSiteMenuSubmenu && !empty($aResult['submenu_object']) && (int)$aResult['submenu_popup'] == 1;
+        if($bTmplVarsSubmenu) {
+            $aResult['onclick'] = '';
+
+            $aTmplVarsSubmenu['content'] = BxDolMenu::getObjectInstance($aResult['submenu_object'])->getCode();
+        }
+
+        $aResult['bx_if:show_arrow'] = array (
+            'condition' => false && $bTmplVarsSubmenu,
+            'content' => array(),
+        );
+
+        $aResult['bx_if:show_line'] = array (
+            'condition' => true,
+            'content' => array(),
+        );
+
+        $aResult['bx_if:show_submenu'] = array (
+            'condition' => $bTmplVarsSubmenu,
+            'content' => $aTmplVarsSubmenu,
+        );
+
+        return $aResult;
+    }
+}
+
+/** @} */

+ 68 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/config.php

@@ -0,0 +1,68 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    Lucid Lucid template
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'type' => BX_DOL_MODULE_TYPE_TEMPLATE,
+    'name' => 'bx_lucid',
+    'title' => 'Lucid',
+    'note' => 'Design template',
+    'version' => '13.0.3',
+    'vendor' => 'Boonex',
+    'help_url' => 'http://feed.una.io/?section={module_name}',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/lucid/',
+    'home_uri' => 'lucid',
+
+    'db_prefix' => 'bx_lucid_',
+    'class_prefix' => 'BxLucid',
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Boonex Lucid Template',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 1,
+        'update_languages' => 1,
+    	'clear_db_cache' => 1
+    ),
+    'uninstall' => array (
+        'execute_sql' => 1,
+        'update_languages' => 1,
+    	'clear_db_cache' => 1
+    ),
+    'enable' => array(
+        'execute_sql' => 1
+    ),
+    'disable' => array(
+        'execute_sql' => 1
+    ),
+
+    /**
+     * Dependencies Section
+     */
+    'dependencies' => array(),
+);
+
+/** @} */

+ 303 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/langs/en.xml

@@ -0,0 +1,303 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources name="en" flag="gb" title="English">
+        <string name="_bx_lucid"><![CDATA[Lucid]]></string>
+	<string name="_bx_lucid_wgt_cpt"><![CDATA[Lucid]]></string>
+
+	<string name="_bx_lucid_stg_cpt_type"><![CDATA[Lucid]]></string>
+	<string name="_bx_lucid_stg_cpt_category_system"><![CDATA[General]]></string>
+	<string name="_bx_lucid_stg_cpt_option_switcher_name"><![CDATA[Name in Template Switcher]]></string>
+        <string name="_bx_lucid_stg_cpt_option_default_mix"><![CDATA[Default mix]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_general"><![CDATA[General]]></string>
+	<string name="_bx_lucid_stg_cpt_option_general_item_bg_color_hover"><![CDATA[On-hover item background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_general_item_bg_color_active"><![CDATA[Active item background color]]></string>
+        <string name="_bx_lucid_stg_cpt_option_general_item_bg_color_disabled"><![CDATA[Disabled item background color]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_header"><![CDATA[Header]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_height"><![CDATA[Height]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_bg_image_size"><![CDATA[Background image size]]></string>	
+	<string name="_bx_lucid_stg_cpt_option_site_logo"><![CDATA[Logo image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_site_logo_alt"><![CDATA[Logo ALT]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_border_color"><![CDATA[Header border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_border_size"><![CDATA[Header border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_icon_color"><![CDATA[Icons color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_icon_color_hover"><![CDATA[On-hover icons color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_link_color"><![CDATA[Links color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_header_link_color_hover"><![CDATA[On-hover links color]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_footer"><![CDATA[Footer]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_icon_color"><![CDATA[Icons color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_icon_color_hover"><![CDATA[On-hover icons color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_link_color"><![CDATA[Links color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_footer_link_color_hover"><![CDATA[On-hover links color]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_body"><![CDATA[Body]]></string>
+	<string name="_bx_lucid_stg_cpt_option_body_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_body_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_body_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_body_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_page_width"><![CDATA[Page Width]]></string>
+	<string name="_bx_lucid_stg_cpt_option_body_icon_color"><![CDATA[Icons color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_body_icon_color_hover"><![CDATA[On-hover icons color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_body_link_color"><![CDATA[Links color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_body_link_color_hover"><![CDATA[On-hover links color]]></string>
+
+    <string name="_bx_lucid_stg_cpt_category_styles_cover"><![CDATA[Cover]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_height"><![CDATA[Cover height]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_bg_color"><![CDATA[Background color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_content_padding"><![CDATA[Content margin]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_border_color"><![CDATA[Border color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_border_size"><![CDATA[Border size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_border_radius"><![CDATA[Corners radius]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_shadow"><![CDATA[Shadow]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_icon_border_color"><![CDATA[Icon border color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_icon_border_size"><![CDATA[Icon border size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_icon_border_radius"><![CDATA[Icon corners radius]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_icon_shadow"><![CDATA[Icon shadow]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_text_align"><![CDATA[Text alignment]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_text_shadow"><![CDATA[Text shadow]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_font_family"><![CDATA[Font stack]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_font_size"><![CDATA[Font size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_font_color"><![CDATA[Font color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_cover_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_block"><![CDATA[Blocks]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_bg_color"><![CDATA[Title background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_padding"><![CDATA[Title margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_border_color"><![CDATA[Title Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_border_size"><![CDATA[Title Border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_border_radius"><![CDATA[Title Corners radius]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_font_family"><![CDATA[Title font stack]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_font_size"><![CDATA[Title font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_font_color"><![CDATA[Title font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_font_weight"><![CDATA[Title font weight]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_div_height"><![CDATA[Title separator height]]></string>
+	<string name="_bx_lucid_stg_cpt_option_block_title_div_bg_color"><![CDATA[Title separator color]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_card"><![CDATA[Cards]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_bg_color_hover"><![CDATA[On-hover background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_bg_image_attachment"><![CDATA[Background image attachment]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_lucid_stg_cpt_option_card_shadow"><![CDATA[Shadow]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_popup"><![CDATA[Popups]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_title_bg_color"><![CDATA[Title background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_title_padding"><![CDATA[Title margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_title_font_family"><![CDATA[Title font stack]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_title_font_size"><![CDATA[Title font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_popup_title_font_color"><![CDATA[Title font color]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_menu_main"><![CDATA[Main Menu]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_align_items"><![CDATA[Align items]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_font_color_hover"><![CDATA[On-hover font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_font_color_active"><![CDATA[Active font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_main_font_weight"><![CDATA[Font weight]]></string>
+
+    <string name="_bx_lucid_stg_cpt_category_styles_menu_account"><![CDATA[Account Menu]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_bg_color"><![CDATA[Background color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_bg_image"><![CDATA[Background image]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_bg_image_size"><![CDATA[Background image size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_content_padding"><![CDATA[Content margin]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_border_color"><![CDATA[Border color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_border_size"><![CDATA[Border size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_shadow"><![CDATA[Shadow]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_font_family"><![CDATA[Font stack]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_font_size"><![CDATA[Font size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_font_color"><![CDATA[Font color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_font_color_hover"><![CDATA[On-hover font color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_font_color_active"><![CDATA[Active font color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_font_shadow"><![CDATA[Font shadow]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_account_font_weight"><![CDATA[Font weight]]></string>
+
+    <string name="_bx_lucid_stg_cpt_category_styles_menu_add"><![CDATA[Add Menu]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_bg_color"><![CDATA[Background color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_bg_image"><![CDATA[Background image]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_bg_image_size"><![CDATA[Background image size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_content_padding"><![CDATA[Content margin]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_border_color"><![CDATA[Border color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_border_size"><![CDATA[Border size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_shadow"><![CDATA[Shadow]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_font_family"><![CDATA[Font stack]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_font_size"><![CDATA[Font size]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_font_color"><![CDATA[Font color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_font_color_hover"><![CDATA[On-hover font color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_font_color_active"><![CDATA[Active font color]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_font_shadow"><![CDATA[Font shadow]]></string>
+    <string name="_bx_lucid_stg_cpt_option_menu_add_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_menu_page"><![CDATA[Page Menu]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_font_color_hover"><![CDATA[On-hover font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_font_color_active"><![CDATA[Active font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_page_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_menu_slide"><![CDATA[Slide Menus]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_bg_image"><![CDATA[Background image]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_bg_image_repeat"><![CDATA[Background image repeat]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_bg_image_size"><![CDATA[Background image size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_content_padding"><![CDATA[Content margin]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_border_size"><![CDATA[Border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_font_color_hover"><![CDATA[On-hover font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_font_color_active"><![CDATA[Active font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_menu_slide_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_form"><![CDATA[Forms]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_height"><![CDATA[Input height]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_bg_color"><![CDATA[Input background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_bg_color_active"><![CDATA[Active input background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_border_color"><![CDATA[Input border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_border_color_active"><![CDATA[Active input border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_border_size"><![CDATA[Input border size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_border_radius"><![CDATA[Input corners radius]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_shadow"><![CDATA[Input shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_font_family"><![CDATA[Input font stack]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_font_size"><![CDATA[Input font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_form_input_font_color"><![CDATA[Input font color]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_small_button"><![CDATA[Small Buttons]]></string>
+	<string name="_bx_lucid_stg_cpt_category_styles_small_button_primary"><![CDATA[Small Primary Buttons]]></string>
+	<string name="_bx_lucid_stg_cpt_category_styles_button"><![CDATA[Normal Buttons]]></string>
+	<string name="_bx_lucid_stg_cpt_category_styles_button_primary"><![CDATA[Normal Primary Buttons]]></string>
+	<string name="_bx_lucid_stg_cpt_category_styles_large_button"><![CDATA[Large Buttons]]></string>
+	<string name="_bx_lucid_stg_cpt_category_styles_large_button_primary"><![CDATA[Large Primary Buttons]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_height"><![CDATA[Height]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_bg_color"><![CDATA[Background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_bg_color_hover"><![CDATA[On-hover background color]]></string>
+        <string name="_bx_lucid_stg_cpt_option_button_bg_color_click"><![CDATA[On-click background color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_border_color"><![CDATA[Border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_border_color_hover"><![CDATA[On-hover border color]]></string>
+        <string name="_bx_lucid_stg_cpt_option_button_border_color_click"><![CDATA[On-click border color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_border_size"><![CDATA[Border size (in px)]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_border_radius"><![CDATA[Corners radius]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_shadow"><![CDATA[Shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_font_size"><![CDATA[Font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_font_color"><![CDATA[Font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_font_color_hover"><![CDATA[On-hover font color]]></string>
+        <string name="_bx_lucid_stg_cpt_option_button_font_color_click"><![CDATA[On-click font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_font_shadow"><![CDATA[Font shadow]]></string>
+	<string name="_bx_lucid_stg_cpt_option_button_font_weight"><![CDATA[Font weight]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_font"><![CDATA[Fonts]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_family"><![CDATA[Font stack]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_size_default"><![CDATA[Default font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_default"><![CDATA[Default font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_grayed"><![CDATA[Grayed font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_contrasted"><![CDATA[Contrasted font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_size_small"><![CDATA[Small font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_size_middle"><![CDATA[Middle font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_size_large"><![CDATA[Large font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_size_h1"><![CDATA[H1 font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_weight_h1"><![CDATA[H1 font weight]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_default_h1"><![CDATA[H1 default font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_grayed_h1"><![CDATA[H1 grayed font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_contrasted_h1"><![CDATA[H1 contrasted font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_link_h1"><![CDATA[H1 link font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_link_h1_hover"><![CDATA[H1 on-hover link font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_size_h2"><![CDATA[H2 font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_weight_h2"><![CDATA[H2 font weight]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_default_h2"><![CDATA[H2 default font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_grayed_h2"><![CDATA[H2 grayed font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_contrasted_h2"><![CDATA[H2 contrasted font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_link_h2"><![CDATA[H2 link font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_link_h2_hover"><![CDATA[H2 on-hover link font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_size_h3"><![CDATA[H3 font size]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_weight_h3"><![CDATA[H3 font weight]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_default_h3"><![CDATA[H3 default font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_grayed_h3"><![CDATA[H3 grayed font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_contrasted_h3"><![CDATA[H3 contrasted font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_link_h3"><![CDATA[H3 link font color]]></string>
+	<string name="_bx_lucid_stg_cpt_option_font_color_link_h3_hover"><![CDATA[H3 on-hover link font color]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_styles_custom"><![CDATA[Custom Styles]]></string>
+	<string name="_bx_lucid_stg_cpt_option_styles_custom"><![CDATA[]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_viewport_tablet"><![CDATA[Tablet Viewport]]></string>
+	<string name="_bx_lucid_stg_cpt_option_vpt_font_size_scale"><![CDATA[Fonts size scale]]></string>
+
+	<string name="_bx_lucid_stg_cpt_category_viewport_mobile"><![CDATA[Mobile Viewport]]></string>
+	<string name="_bx_lucid_stg_cpt_option_vpm_font_size_scale"><![CDATA[Fonts size scale]]></string>
+
+	<string name="_bx_lucid_lmi_cpt_styles"><![CDATA[Styles]]></string>
+
+
+	<string name="_bx_lucid_menu_template_title_dropdown_site"><![CDATA[Site Dropdown Navigation]]></string>
+	<string name="_bx_lucid_menu_title_dropdown_site"><![CDATA[Site Dropdown Navigation]]></string>
+
+	<string name="_bx_lucid_menu_item_title_system_search"><![CDATA[Search]]></string>
+	<string name="_bx_lucid_menu_item_title_system_login"><![CDATA[Login]]></string>
+	<string name="_bx_lucid_menu_item_title_login"><![CDATA[Login]]></string>
+	<string name="_bx_lucid_menu_item_title_system_join"><![CDATA[Join]]></string>
+	<string name="_bx_lucid_menu_item_title_join"><![CDATA[Join]]></string>
+</resources>

+ 16 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/sql/disable.sql

@@ -0,0 +1,16 @@
+SET @sName = 'bx_lucid';
+
+
+-- MENU: dropdown menu
+DELETE FROM `sys_menu_templates` WHERE `template`='menu_dropdown_site.html' AND `title`='_bx_lucid_menu_template_title_dropdown_site';
+
+DELETE FROM `sys_objects_menu` WHERE `object`='bx_lucid_dropdown_site';
+
+-- MENU: member toolbar
+DELETE FROM `sys_menu_items` WHERE `set_name`='sys_toolbar_member' AND `name` IN ('bx_lucid_search');
+
+
+-- ALERTS
+SET @iHandler := (SELECT `id` FROM `sys_alerts_handlers` WHERE `name` = @sName LIMIT 1);
+DELETE FROM `sys_alerts` WHERE `handler_id` = @iHandler;
+DELETE FROM `sys_alerts_handlers` WHERE `id` = @iHandler;

+ 25 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/sql/enable.sql

@@ -0,0 +1,25 @@
+SET @sName = 'bx_lucid';
+
+
+-- MENU: dropdown menu
+INSERT INTO `sys_menu_templates` (`id`, `template`, `title`, `visible`) VALUES
+(ROUND(RAND()*(9999 - 1000) + 1000), 'menu_dropdown_site.html', '_bx_lucid_menu_template_title_dropdown_site', 1);
+SET @iTemplId = (SELECT `id` FROM `sys_menu_templates` WHERE `template`='menu_dropdown_site.html' AND `title`='_bx_lucid_menu_template_title_dropdown_site' LIMIT 1);
+
+INSERT INTO `sys_objects_menu`(`object`, `title`, `set_name`, `module`, `template_id`, `deletable`, `active`, `override_class_name`, `override_class_file`) VALUES 
+('bx_lucid_dropdown_site', '_bx_lucid_menu_title_dropdown_site', 'sys_site', @sName, @iTemplId, 0, 1, 'BxTemplMenuDropdownSite', '');
+
+-- MENU: member toolbar
+SET @iMIOrder = (SELECT IFNULL(MAX(`order`), 0) FROM `sys_menu_items` WHERE `set_name` = 'sys_toolbar_member' LIMIT 1);
+INSERT INTO `sys_menu_items`(`set_name`, `module`, `name`, `title_system`, `title`, `link`, `onclick`, `target`, `icon`, `addon`, `submenu_object`, `submenu_popup`, `visible_for_levels`, `hidden_on`, `active`, `copyable`, `order`) VALUES
+('sys_toolbar_member', 'system', 'bx_lucid_search', '_bx_lucid_menu_item_title_system_search', '', 'javascript:void(0);', 'bx_menu_slide_inline(''#bx-sliding-menu-search'', this, ''site'');', '', 'search', '', '', 0, 2147483647, 7, 1, 0, 0);
+
+
+-- ALERTS
+INSERT INTO `sys_alerts_handlers` (`name`, `class`, `file`, `service_call`) VALUES 
+(@sName, 'BxLucidAlertsResponse', 'modules/boonex/lucid/classes/BxLucidAlertsResponse.php', '');
+SET @iHandler := LAST_INSERT_ID();
+
+INSERT INTO `sys_alerts` (`unit`, `action`, `handler_id`) VALUES
+('system', 'save_setting', @iHandler),
+('system', 'change_logo', @iHandler);

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 667 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/sql/install.sql


+ 15 - 0
modules/boonex/lucid/updates/13.0.2_13.0.3/source/install/sql/uninstall.sql

@@ -0,0 +1,15 @@
+SET @sName = 'bx_lucid';
+
+
+-- SETTINGS
+DELETE FROM `top`, `toc`, `to` USING `sys_options_types` AS `top` LEFT JOIN `sys_options_categories` AS `toc` ON `top`.`id`=`toc`.`type_id` LEFT JOIN `sys_options` AS `to` ON `toc`.`id`=`to`.`category_id` WHERE `top`.`name`=@sName;
+DELETE FROM `sys_options` WHERE `name` LIKE 'bx_lucid_site_%';
+
+-- MIXES
+DELETE FROM `tom`, `tomo` USING `sys_options_mixes` AS `tom` LEFT JOIN `sys_options_mixes2options` AS `tomo` ON `tom`.`id`=`tomo`.`mix_id` WHERE `tom`.`type`=@sName;
+
+
+-- STUDIO PAGE & WIDGET
+DELETE FROM `tp`, `tw`, `twb`, `tpw` 
+USING `sys_std_pages` AS `tp` LEFT JOIN `sys_std_widgets` AS `tw` ON `tp`.`id` = `tw`.`page_id` LEFT JOIN `sys_std_widgets_bookmarks` AS `twb` ON `tw`.`id` = `twb`.`widget_id` LEFT JOIN `sys_std_pages_widgets` AS `tpw` ON `tw`.`id` = `tpw`.`widget_id`
+WHERE  `tp`.`name` = @sName;

+ 51 - 0
modules/boonex/stripe_connect/updates/13.0.1_13.0.2/install/config.php

@@ -0,0 +1,51 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'title' => 'Stripe Connect',
+    'version_from' => '13.0.1',
+    'version_to' => '13.0.2',
+    'vendor' => 'BoonEx',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/stripe_connect/updates/update_13.0.1_13.0.2/',
+    'home_uri' => 'stripe_connect_update_1301_1302',
+    
+    'module_dir' => 'boonex/stripe_connect/',
+    'module_uri' => 'stripe_connect',
+
+    'db_prefix' => 'bx_stripe_connect_',
+    'class_prefix' => 'BxStripeConnect',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 0,
+        'update_files' => 1,
+        'update_languages' => 0,
+        'clear_db_cache' => 0,
+    ),
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Stripe Connect',
+
+    /**
+     * Files Section
+     */
+    'delete_files' => array(),
+);

+ 13 - 0
modules/boonex/stripe_connect/updates/13.0.1_13.0.2/install/installer.php

@@ -0,0 +1,13 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ */
+
+class BxStripeConnectUpdater extends BxDolStudioUpdater
+{
+    function __construct($aConfig)
+    {
+        parent::__construct($aConfig);
+    }
+}

+ 94 - 0
modules/boonex/stripe_connect/updates/13.0.1_13.0.2/source/classes/BxStripeConnectTemplate.php

@@ -0,0 +1,94 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    StripeConnect Stripe Connect
+ * @ingroup     TridentModules
+ *
+ * @{
+ */
+
+class BxStripeConnectTemplate extends BxBaseModConnectTemplate
+{
+    function __construct($oConfig, $oDb)
+    {
+    	$this->MODULE = 'bx_stripe_connect';
+
+        parent::__construct($oConfig, $oDb);
+    }
+
+    public function displayBlockConnect()
+    {
+    	$CNF = $this->_oConfig->CNF;
+
+    	$sApiId = $this->_oConfig->getApiId();
+    	if(empty($sApiId))
+    		return '';
+
+		$iVendor = bx_get_logged_profile_id();
+		$aVendorAccount = $this->_oDb->getAccount(array('type' => 'author', 'author' => $iVendor));
+		if(!empty($aVendorAccount) && is_array($aVendorAccount))
+			return $this->displayBlockAccount($aVendorAccount);
+
+		$aVendor = BxDolModule::getInstance($this->MODULE)->getProfileInfo($iVendor);
+    	$bVendorStripe = BxDolPayments::getInstance()->isPaymentProvider($iVendor, $CNF['STRIPE']);
+
+    	$aRequestParams = array(
+			'response_type' => 'code',
+			'client_id' => $sApiId,
+			'scope' => $this->_oDb->getParam($CNF['PARAM_API_SCOPE']),
+			'redirect_uri' => BX_DOL_URL_ROOT . $this->_oConfig->getBaseUri() . $CNF['URI_REDIRECT'],
+			'stripe_landing' => $bVendorStripe ? 'login' : 'register'
+		);
+
+		if(!$bVendorStripe)
+			$aRequestParams = array_merge($aRequestParams, array(
+				'stripe_user[email]' => $aVendor['email'],
+				'stripe_user[url]' => urlencode($aVendor['link']),
+				'stripe_user[first_name]' => $aVendor['name']
+			));
+
+    	$this->addCss(array('main.css'));
+    	return $this->parseHtmlByName('block_connect.html', array(
+    		'link' => bx_append_url_params($CNF['URL_API_AUTHORIZE'], $aRequestParams, false)
+    	));
+    }
+    
+    public function displayBlockAccount($aAccount)
+    {
+    	$CNF = $this->_oConfig->CNF;
+
+    	$sApiId = $this->_oConfig->getApiId();
+    	if(empty($sApiId))
+    		return '';
+
+		$this->addCss(array('main.css'));
+		$this->addJs(array('main.js'));
+    	$this->addJsTranslation(array('_bx_stripe_connect_wrn_disconnect'));
+    	return $this->parseHtmlByName('block_account.html', array(
+    		'js_object' => $this->_oConfig->getJsObject('main'),
+    		'id' => $aAccount['id'],
+    		'user_id' => $aAccount['user_id'],
+    	    'public_key' => $aAccount['public_key'],
+    		'access_token' => $aAccount['access_token'],
+	    	'added' => bx_time_js($aAccount['added']),
+    	    'keys_usage' => _t('_bx_stripe_connect_txt_keys_usage', BxDolPayments::getInstance()->getDetailsUrl()),
+    		'js_code' => $this->getJsCode('main')
+    	));
+    }
+
+	public function displayProfileLink($mixedProfile)
+    {
+    	if(!is_array($mixedProfile))
+    		$mixedProfile = BxDolModule::getInstance($this->MODULE)->getProfileInfo((int)$mixedProfile);
+
+    	return $this->parseHtmlByName('link.html', array(
+            'href' => $mixedProfile['link'],
+            'title' => bx_html_attribute(!empty($mixedProfile['title']) ? $mixedProfile['title'] : $mixedProfile['name']),
+            'content' => $mixedProfile['name']
+        ));
+    }
+}
+
+/** @} */

+ 68 - 0
modules/boonex/stripe_connect/updates/13.0.1_13.0.2/source/install/config.php

@@ -0,0 +1,68 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ *
+ * @defgroup    StripeConnect Stripe Connect
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'type' => BX_DOL_MODULE_TYPE_MODULE,
+    'name' => 'bx_stripe_connect',
+    'title' => 'Stripe Connect',
+    'note' => 'Organize eCommerce platform using Stripe Connect.',
+    'version' => '13.0.2',
+    'vendor' => 'BoonEx',
+    'help_url' => 'http://feed.una.io/?section={module_name}',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/stripe_connect/',
+    'home_uri' => 'stripe_connect',
+
+    'db_prefix' => 'bx_stripe_connect_',
+    'class_prefix' => 'BxStripeConnect',
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Stripe Connect',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 1,
+        'update_languages' => 1,
+    ),
+    'uninstall' => array (
+        'execute_sql' => 1,
+        'update_languages' => 1,
+    ),
+    'enable' => array(
+        'execute_sql' => 1,
+        'clear_db_cache' => 1,
+    ),
+    'disable' => array (
+        'execute_sql' => 1,
+        'clear_db_cache' => 1,
+    ),
+
+    /**
+     * Dependencies Section
+     */
+    'dependencies' => array(),
+);
+
+/** @} */

+ 51 - 0
modules/boonex/tasks/updates/13.0.1_13.0.2/install/config.php

@@ -0,0 +1,51 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ */
+
+$aConfig = array(
+    /**
+     * Main Section.
+     */
+    'title' => 'Tasks',
+    'version_from' => '13.0.1',
+    'version_to' => '13.0.2',
+    'vendor' => 'BoonEx',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/tasks/updates/update_13.0.1_13.0.2/',
+    'home_uri' => 'tasks_update_1301_1302',
+
+    'module_dir' => 'boonex/tasks/',
+    'module_uri' => 'tasks',
+
+    'db_prefix' => 'bx_tasks_',
+    'class_prefix' => 'BxTasks',
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 0,
+        'update_files' => 1,
+        'update_languages' => 0,
+        'clear_db_cache' => 0,
+    ),
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Tasks',
+
+    /**
+     * Files Section
+     */
+    'delete_files' => array(),
+);

+ 13 - 0
modules/boonex/tasks/updates/13.0.1_13.0.2/install/installer.php

@@ -0,0 +1,13 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT
+ */
+
+class BxTasksUpdater extends BxDolStudioUpdater
+{
+    function __construct($aConfig)
+    {
+        parent::__construct($aConfig);
+    }
+}

+ 726 - 0
modules/boonex/tasks/updates/13.0.1_13.0.2/source/classes/BxTasksModule.php

@@ -0,0 +1,726 @@
+<?php defined('BX_DOL') or die('hack attempt');
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT 
+ * @defgroup    Tasks Tasks
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+/**
+ * Tasks module
+ */
+class BxTasksModule extends BxBaseModTextModule implements iBxDolCalendarService 
+{
+    function __construct(&$aModule)
+    {
+        parent::__construct($aModule);
+
+        $CNF = &$this->_oConfig->CNF;
+        $this->_aSearchableNamesExcept = array_merge($this->_aSearchableNamesExcept, array(
+            $CNF['FIELD_PUBLISHED'],
+            $CNF['FIELD_ALLOW_COMMENTS']
+        ));
+    }
+	
+    /**
+    * Action methods
+    */
+	
+    /**
+     * Get possible recipients for start conversation form
+     */
+    public function actionAjaxGetInitialMembers ()
+    {
+        $sTerm = bx_get('term');
+
+        $a = BxDolService::call('system', 'profiles_search', array($sTerm), 'TemplServiceProfiles');
+
+        header('Content-Type:text/javascript; charset=utf-8');
+        echo(json_encode($a));
+    }
+          
+    public function actionSetCompleted($iContentId, $iValue)
+    {
+        if (!$this->isAllowManage($iContentId))
+            return;
+        
+        $CNF = &$this->_oConfig->CNF;
+
+        $this->_oDb->updateEntriesBy(array($CNF['FIELD_COMPLETED'] => $iValue), array($CNF['FIELD_ID'] => (int)$iContentId));
+
+        $sActionName = 'completed';
+        if($iValue == '0')
+            $sActionName = 'reopened';
+
+        $aContentInfo = $this->_oDb->getContentInfoById($iContentId);
+
+        $iContentAuthor = (int)$aContentInfo[$CNF['FIELD_AUTHOR']];
+        bx_alert($this->getName(), $sActionName, $iContentId, false, array(
+            'object_author_id' => $iContentAuthor,
+            'privacy_view' => $aContentInfo[$CNF['FIELD_ALLOW_VIEW_TO']]
+        ));
+
+        $oConnection = BxDolConnection::getObjectInstance($CNF['OBJECT_CONNECTION']);
+        if($oConnection) {
+            $aProfileIds = $oConnection->getConnectedContent($iContentId);
+            if(!empty($aProfileIds) && is_array($aProfileIds))
+                foreach($aProfileIds as $iProfileId) {
+                    if($iProfileId == $iContentAuthor)
+                        continue;
+
+                    bx_alert($this->getName(), $sActionName, $iContentId, false, array(
+                        'object_author_id' => $iProfileId,
+                        'privacy_view' => $aContentInfo[$CNF['FIELD_ALLOW_VIEW_TO']]
+                    ));
+                }
+        }
+
+        echo 'ok';
+    }
+	
+	public function actionSetFilterValue($iListId, $sValue)
+	{
+		$CNF = &$this->_oConfig->CNF;
+		$aTmp = array();
+		if (isset($_COOKIE[$CNF['COOKIE_SETTING_KEY']]))
+			$aTmp =	json_decode($_COOKIE[$CNF['COOKIE_SETTING_KEY']], true);
+			
+		if ($sValue != '')
+			$aTmp[$iListId] = $sValue;
+		else
+			unset($aTmp[$iListId]);
+        bx_setcookie($CNF['COOKIE_SETTING_KEY'], json_encode($aTmp), time() + 60*60*24*365);
+	}
+	
+	public function actionProcessTaskListForm($iContextId, $iId)
+    {
+        if (!$this->isAllowAdd(-$iContextId))
+            return;
+        
+		$CNF = &$this->_oConfig->CNF;
+		$oForm = null;
+		$sPopupTitle = "";
+		$aContentInfo = array();
+		if ($iId == 0){
+			$oForm = BxDolForm::getObjectInstance($CNF['OBJECT_FORM_LIST_ENTRY'], $CNF['OBJECT_FORM_LIST_ENTRY_DISPLAY_ADD']);
+			$sPopupTitle = _t('_bx_tasks_form_list_entry_display_add');
+		}
+		else{
+			$oForm = BxDolForm::getObjectInstance($CNF['OBJECT_FORM_LIST_ENTRY'], $CNF['OBJECT_FORM_LIST_ENTRY_DISPLAY_EDIT']);
+			$aContentInfo = $this->_oDb->getList($iId);
+			$sPopupTitle = _t('_bx_tasks_form_list_entry_display_edit');
+		}
+		
+		$oForm->aFormAttrs['action'] = BX_DOL_URL_ROOT . $this->_oConfig->getBaseUri() . 'process_task_list_form/' . $iContextId . '/' . $iId . '/';
+		if (!$oForm)
+            return '';
+		
+		$oForm->initChecker($aContentInfo, array());
+		
+        if($oForm->isSubmittedAndValid()) {
+			if ($iId == 0){
+				$aValsToAdd['context_id'] = $iContextId;
+				$iId = $oForm->insert($aValsToAdd);
+			}
+			else{
+				$iId = $oForm->update($iId);
+			}
+
+			return echoJson(array(
+				 'eval' => $this->_oConfig->getJsObject('tasks') . '.reloadData(oData, ' . $iContextId . ')',
+			));
+        }
+        else {	
+			$sContent = $this->_oTemplate->parseHtmlByName('popup_form.html', array(
+				'form_id' => $oForm->getId(),
+				'form' => $oForm->getCode(true)
+			));
+																	 
+			if (!$oForm->isSubmitted()){
+				echo $sContent;
+				return;
+			}
+			
+            return echoJson(array('form' => $sContent, 'form_id' => $oForm->getId()));;
+        }
+	}
+    
+    public function actionDeleteTaskList($iId, $iContextId)
+    {
+        if (!$this->isAllowManageByContext($iContextId))
+            return;
+        
+        $this->_oDb->deleteList($iId);  
+        echoJson(array(
+            'context_id' => $iContextId,
+        ));
+    }
+	
+	public function actionProcessTaskForm($iContextId, $iListId)
+    {
+        if (!$this->isAllowAdd(-$iContextId))
+            return;
+        
+		$CNF = &$this->_oConfig->CNF;
+		$oForm = BxDolForm::getObjectInstance($CNF['OBJECT_FORM_ENTRY'], $CNF['OBJECT_FORM_ENTRY_DISPLAY_ADD']);
+		
+		$oForm->aFormAttrs['action'] = BX_DOL_URL_ROOT . $this->_oConfig->getBaseUri() . 'process_task_form/' . $iContextId . '/' . $iListId . '/';
+		if (!$oForm)
+            return '';
+		
+		$oForm->initChecker();
+		
+        if($oForm->isSubmittedAndValid()) {
+			$aValsToAdd[$CNF['FIELD_ALLOW_VIEW_TO']] = $iContextId;
+			$aValsToAdd[$CNF['FIELD_TASKLIST']] = $iListId;
+			$iContentId = $oForm->insert($aValsToAdd);
+			$this->onPublished($iContentId);
+			
+			return echoJson(array(
+				 'eval' => $this->_oConfig->getJsObject('tasks') . '.reloadData(oData, ' . $iContextId . ')',
+			));
+        }
+        else {	
+			$sContent = $this->_oTemplate->parseHtmlByName('popup_form.html', array(
+				'form_id' => $oForm->getId(),
+				'form' => $oForm->getCode(true)
+			));
+																	 
+			if (!$oForm->isSubmitted()){
+				echo $sContent;
+				return;
+			}
+            return echoJson(array('form' => $sContent, 'form_id' => $oForm->getId()));;
+        }
+	}
+	
+	public function actionCalendarData()
+    {
+        // check permissions
+        $aSQLPart = array();
+        $iContextId = (int)bx_get('context_id');
+        
+        if (!$this->isAllowView($iContextId))
+            return; 
+		
+		$oPrivacy = BxDolPrivacy::getObjectInstance($this->_oConfig->CNF['OBJECT_PRIVACY_VIEW']);
+		
+		if($iContextId){
+			$aSQLPart = $oPrivacy ? $oPrivacy->getContentByGroupAsSQLPart(- $iContextId) : array();
+		}
+        // get entries
+        $aEntries = $this->_oDb->getEntriesByDate(bx_get('start'), bx_get('end'), bx_get('event'), $aSQLPart);
+        
+        header('Content-Type: application/json; charset=utf-8');
+        echo json_encode($aEntries);
+    }
+	
+	/**
+     * Data for Timeline module
+     */
+    public function serviceGetTimelineData()
+    {
+    	$sModule = $this->_aModule['name'];
+        return array(
+            'handlers' => array(
+                array('group' => $sModule . '_object', 'type' => 'insert', 'alert_unit' => $sModule, 'alert_action' => 'added', 'module_name' => $sModule, 'module_method' => 'get_timeline_post', 'module_class' => 'Module', 'groupable' => 0, 'group_by' => ''),
+				array('group' => $sModule . '_completed', 'type' => 'insert', 'alert_unit' => $sModule, 'alert_action' => 'completed', 'module_name' => $sModule, 'module_method' => 'get_timeline_completed', 'module_class' => 'Module',  'groupable' => 0, 'group_by' => ''),
+				array('group' => $sModule . '_reopened', 'type' => 'insert', 'alert_unit' => $sModule, 'alert_action' => 'reopened', 'module_name' => $sModule, 'module_method' => 'get_timeline_reopened', 'module_class' => 'Module',  'groupable' => 0, 'group_by' => ''),
+                array('group' => $sModule . '_object', 'type' => 'update', 'alert_unit' => $sModule, 'alert_action' => 'edited'),
+                array('group' => $sModule . '_object', 'type' => 'delete', 'alert_unit' => $sModule, 'alert_action' => 'deleted'),
+            ),
+            'alerts' => array(
+                array('unit' => $sModule, 'action' => 'added'),
+				array('unit' => $sModule, 'action' => 'completed'),
+				array('unit' => $sModule, 'action' => 'reopened'),
+                array('unit' => $sModule, 'action' => 'edited'),
+                array('unit' => $sModule, 'action' => 'deleted'),
+            )
+        );
+    }
+	
+    /**
+     * Entry task for Timeline module
+     */
+    public function serviceGetTimelinePost($aEvent, $aBrowseParams = array())
+    {
+        $CNF = &$this->_oConfig->CNF;
+
+        $aResult = parent::serviceGetTimelinePost($aEvent, $aBrowseParams);
+        if(empty($aResult) || !is_array($aResult) || empty($aResult['date']))
+            return $aResult;
+        $aContentInfo = $this->_oDb->getContentInfoById($aEvent['object_id']);
+        if($aContentInfo[$CNF['FIELD_PUBLISHED']] > $aResult['date'])
+            $aResult['date'] = $aContentInfo[$CNF['FIELD_PUBLISHED']];
+        return $aResult;
+    }
+	
+	public function serviceGetTimelineCompleted($aEvent, $aBrowseParams = array())
+    {
+        $CNF = &$this->_oConfig->CNF;
+
+        $aResult = parent::serviceGetTimelinePost($aEvent, $aBrowseParams);
+		$aResult['sample_action'] = $aResult['content']['sample_action'] = _t('_bx_tasks_txt_action_completed');
+        if(empty($aResult) || !is_array($aResult) || empty($aResult['date']))
+            return $aResult;
+		
+        $aContentInfo = $this->_oDb->getContentInfoById($aEvent['object_id']);
+        if($aContentInfo[$CNF['FIELD_PUBLISHED']] > $aResult['date'])
+            $aResult['date'] = $aContentInfo[$CNF['FIELD_PUBLISHED']];
+        return $aResult;
+    }
+	
+	public function serviceGetTimelineReopened($aEvent, $aBrowseParams = array())
+    {
+        $CNF = &$this->_oConfig->CNF;
+
+        $aResult = parent::serviceGetTimelinePost($aEvent, $aBrowseParams);
+		$aResult['sample_action'] = $aResult['content']['sample_action'] = _t('_bx_tasks_txt_action_reopened');
+        if(empty($aResult) || !is_array($aResult) || empty($aResult['date']))
+            return $aResult;
+		
+        $aContentInfo = $this->_oDb->getContentInfoById($aEvent['object_id']);
+        if($aContentInfo[$CNF['FIELD_PUBLISHED']] > $aResult['date'])
+            $aResult['date'] = $aContentInfo[$CNF['FIELD_PUBLISHED']];
+        return $aResult;
+    }
+
+    public function serviceGetNotificationsData()
+    {
+        $sModule = $this->_aModule['name'];
+
+        $sEventPrivacy = $sModule . '_allow_view_event_to';
+        if(BxDolPrivacy::getObjectInstance($sEventPrivacy) === false)
+                $sEventPrivacy = '';
+
+        $aResult = parent::serviceGetNotificationsData();
+        $aResult['handlers'] = array_merge($aResult['handlers'], array(
+            array('group' => $sModule . '_completed', 'type' => 'insert', 'alert_unit' => $sModule, 'alert_action' => 'completed', 'module_name' => $sModule, 'module_method' => 'get_notifications_completed', 'module_class' => 'Module', 'module_event_privacy' => $sEventPrivacy),
+            array('group' => $sModule . '_reopened', 'type' => 'insert', 'alert_unit' => $sModule, 'alert_action' => 'reopened', 'module_name' => $sModule, 'module_method' => 'get_notifications_reopened', 'module_class' => 'Module', 'module_event_privacy' => $sEventPrivacy),
+            array('group' => $sModule . '_expired', 'type' => 'insert', 'alert_unit' => $sModule, 'alert_action' => 'expired', 'module_name' => $sModule, 'module_method' => 'get_notifications_expired', 'module_class' => 'Module', 'module_event_privacy' => $sEventPrivacy),
+
+            array('group' => $sModule . '_assign', 'type' => 'insert', 'alert_unit' => $sModule, 'alert_action' => 'assigned', 'module_name' => $sModule, 'module_method' => 'get_notifications_assigned', 'module_class' => 'Module', 'module_event_privacy' => $sEventPrivacy),
+            array('group' => $sModule . '_assign', 'type' => 'delete', 'alert_unit' => $sModule, 'alert_action' => 'unassigned'),
+        ));
+
+        $aResult['settings'] = array_merge($aResult['settings'], array(
+            array('group' => 'content', 'unit' => $sModule, 'action' => 'completed', 'types' => array('personal', 'follow_member', 'follow_context')),
+            array('group' => 'content', 'unit' => $sModule, 'action' => 'reopened', 'types' => array('personal', 'follow_member', 'follow_context')),
+            array('group' => 'content', 'unit' => $sModule, 'action' => 'expired', 'types' => array('personal')),
+            array('group' => 'content', 'unit' => $sModule, 'action' => 'assigned', 'types' => array('personal')),
+        ));
+
+        $aResult['alerts'] = array_merge($aResult['alerts'], array(
+            array('unit' => $sModule, 'action' => 'completed'),
+            array('unit' => $sModule, 'action' => 'reopened'),
+            array('unit' => $sModule, 'action' => 'expired'),
+
+            array('unit' => $sModule, 'action' => 'assigned'),
+            array('unit' => $sModule, 'action' => 'unassigned'),
+        ));
+
+        return $aResult; 
+    }
+
+    public function serviceGetNotificationsCompleted($aEvent)
+    {
+        return $this->_serviceGetNotificationsByAction($aEvent, 'completed');
+    }
+
+    public function serviceGetNotificationsReopened($aEvent)
+    {
+        return $this->_serviceGetNotificationsByAction($aEvent, 'reopened');
+    }
+
+    public function serviceGetNotificationsExpired($aEvent)
+    {
+        return $this->_serviceGetNotificationsByAction($aEvent, 'expired');
+    }
+
+    public function serviceGetNotificationsAssigned($aEvent)
+    {
+        return $this->_serviceGetNotificationsByAction($aEvent, 'assigned');
+    }
+
+    protected function _serviceGetNotificationsByAction($aEvent, $sAction)
+    {
+        $CNF = &$this->_oConfig->CNF;
+
+        $aResult = parent::serviceGetNotificationsPost($aEvent);
+        if(empty($aResult) || !is_array($aResult))
+            return $aResult;
+
+        $aResult['entry_author'] = $aEvent['object_owner_id'];
+        $aResult['entry_author_name'] = '';
+        if(($oAuthor = BxDolProfile::getInstance($aResult['entry_author'])) !== false)
+            $aResult['entry_author_name'] = $oAuthor->getDisplayName();
+
+        $sLangKey = '_bx_tasks_txt_notification_' . $sAction;
+        if((int)$aEvent['object_privacy_view'] < 0)
+            $sLangKey .= '_in_context';
+
+        $aResult['lang_key'] = _t($sLangKey);
+        return $aResult;
+    }
+
+    public function serviceIsCompleted($iContentId)
+    {
+        if (!$this->serviceIsAllowManage($iContentId))
+            return false;
+        
+        $CNF = &$this->_oConfig->CNF;
+
+        $aContentInfo = $this->_oDb->getContentInfoById($iContentId);
+        return $aContentInfo[$CNF['FIELD_COMPLETED']] ? false: true;
+    }
+    
+    public function serviceIsUncompleted($iContentId)
+    {
+        if (!$this->serviceIsAllowManage($iContentId))
+            return false;
+        
+		$CNF = &$this->_oConfig->CNF;
+		$aContentInfo = $this->_oDb->getContentInfoById($iContentId);
+        return $aContentInfo[$CNF['FIELD_COMPLETED']] ? true : false;
+    }
+    
+    public function serviceIsAllowManage($iContentId)
+    {
+        if (!$this->isAllowManage($iContentId))
+            return false;
+        return true; 
+    }
+    
+    public function serviceIsAllowBadges($iContentId)
+    {
+        if (!$this->isAllowManage($iContentId))
+            return false;
+        
+        if (!$this->serviceIsBadgesAvaliable())
+            return false;
+        
+        return true; 
+    }
+	
+	public function serviceEntityAssignments($iContentId = 0, $bAsArray = false)
+	{
+		if (!$iContentId)
+            $iContentId = bx_process_input(bx_get('id'), BX_DATA_INT);
+        if (!$iContentId)
+            return false;
+
+		$mixedResult = BxDolConnection::getObjectInstance($this->_oConfig->CNF['OBJECT_CONNECTION'])->getConnectedContent($iContentId);
+        if(!$bAsArray) {
+			$s = '';
+            foreach ($mixedResult as $mixedProfile) {
+				$bProfile = is_array($mixedProfile);
+
+				$oProfile = BxDolProfile::getInstance($bProfile ? (int)$mixedProfile['id'] : (int)$mixedProfile);
+				if(!$oProfile)
+					continue;
+
+				$aUnitParams = array('template' => array('name' => 'unit', 'size' => 'thumb'));
+
+				if($bProfile && is_array($mixedProfile['info']))
+					$aUnitParams['template']['vars'] = $mixedProfile['info'];
+
+				$s .= $oProfile->getUnit(0, $aUnitParams);
+			}
+			$mixedResult = $s;
+			
+            if (!$mixedResult)
+                return MsgBox(_t('_sys_txt_empty'));
+        }
+
+        return $mixedResult;
+    }
+	
+    public function serviceCheckAllowedCommentsTask($iContentId, $sObjectComments) 
+    {
+        $CNF = &$this->_oConfig->CNF;
+        $aContentInfo = $this->_oDb->getContentInfoById($iContentId);
+        if ($aContentInfo[$CNF['FIELD_ALLOW_COMMENTS']] == 0)
+            return false;
+
+        return parent::serviceCheckAllowedCommentsTask($iContentId, $sObjectComments);
+    }
+	
+	public function serviceCheckAllowedCommentsView($iContentId, $sObjectComments) 
+    {
+        $CNF = &$this->_oConfig->CNF;
+        $aContentInfo = $this->_oDb->getContentInfoById($iContentId);
+        if ($aContentInfo[$CNF['FIELD_ALLOW_COMMENTS']] == 0)
+            return false;
+
+        return parent::serviceCheckAllowedCommentsView($iContentId, $sObjectComments);
+    }
+	
+	/**
+     * @page service Service Calls
+     * @section bx_tasks Tasks
+     * @subsection bx_tasks-page_blocks Page Blocks
+     * @subsubsection bx_tasks-calendar calendar
+     * 
+     * @code bx_srv('bx_tasks', 'calendar', [...]); @endcode
+     * 
+     * Shows tasks calendar baced on die date
+     * 
+     * @param $aData additional data to point which events to show, leave empty to show all events, specify event's ID in 'event' array key to show calendar for one event only, specify context's ID in 'context_id' array key to show calendar for one context events only. If only one event is specified then it will show calendar only if it's repeating event.
+     * @param $sTemplate template to use to show calendar, or leave empty for default template, possible options: calendar.html, calendar_compact.html
+     * @return HTML string with calendar to display on the site, all necessary CSS and JS files are automatically added to the HEAD section of the site HTML. On error empty string is returned.
+     *
+     * @see BxTasksModule::serviceCalendar
+     */
+    /** 
+     * @ref bx_tasks-calendar "calendar"
+     */
+    public function serviceCalendar($aData = array(), $sTemplate = 'calendar.html')
+    {
+        if (!$this->isAllowView($aData['context_id']))
+            return; 
+        
+        $o = new BxTemplCalendar(array(
+            'eventSources' => array (
+                bx_append_url_params(BX_DOL_URL_ROOT . $this->_oConfig->getBaseUri() . 'calendar_data', $aData),
+            ),
+        ), $this->_oTemplate);
+        return $o->display($sTemplate);
+    }
+	
+	public function serviceGetCalendarEntries($iProfileId)
+    {
+		$CNF = &$this->_oConfig->CNF;
+        $oConn = BxDolConnection::getObjectInstance($CNF['OBJECT_CONNECTION']);
+        $aData = $oConn->getConnectedInitiators($iProfileId);
+		$aData2 = array(0);
+        foreach($aData as $iProfileId2){
+            $oProfile = BxDolProfile::getInstance($iProfileId2);
+            array_push($aData2, $oProfile->getContentId());
+        }
+        $aSQLPart['where'] = " AND " . $CNF['TABLE_ENTRIES'] . ".`" . $CNF['FIELD_ID'] . "` IN(" . implode(',', $aData2) . ")";
+        return $this->_oDb->getEntriesByDate(bx_get('start'), bx_get('end'), null, $aSQLPart);
+	}
+	
+	public function serviceBrowseContext ($iProfileId = 0, $aParams = array())
+    {
+		if(!$iProfileId)
+            $iProfileId = bx_process_input(bx_get('profile_id'), BX_DATA_INT);
+        if(!$iProfileId)
+            return '';
+        return $this->serviceBrowseTasks (-$iProfileId, $aParams);
+    }
+	
+	public function serviceBrowseTasks ($iContextId = 0, $aParams = array())
+    {
+        if (!$this->isAllowView(-$iContextId))
+            return;  
+        
+        $oProfileContext = BxDolProfile::getInstance(-$iContextId);
+        $mixedResult = $oProfileContext->checkAllowedProfileView(-$iContextId);
+        if($mixedResult !== CHECK_ACTION_RESULT_ALLOWED)
+            return false;
+        
+		$CNF = &$this->_oConfig->CNF;
+		
+		$this->_oTemplate->addCssJs();
+		$aVars = array();
+		$aLists = $this->_oDb->getLists($iContextId);
+		$aListsVars = array();
+		$oConn = BxDolConnection::getObjectInstance($CNF['OBJECT_CONNECTION']);
+		
+		$aFilterValues = array();
+		if (isset($_COOKIE[$CNF['COOKIE_SETTING_KEY']]))
+			$aFilterValues = json_decode($_COOKIE[$CNF['COOKIE_SETTING_KEY']], true);
+
+        $bAllowAdd = $this->isAllowAdd(-$iContextId);
+        $bAllowManage = $this->isAllowManageByContext(-$iContextId);
+        
+        foreach($aLists as $aList) {
+			$aTasks = $this->_oDb->getTasks($iContextId, $aList['id']);
+			$aTasksVars = array();
+			foreach($aTasks as $aTask) {
+				$aMembers = $oConn->getConnectedContent($aTask[$CNF['FIELD_ID']]);
+				$aMembersVars = array();
+				foreach($aMembers as $iMember) {
+					$oProfile = BxDolProfile::getInstance($iMember);
+					$aMembersVars[] = array('info' => $oProfile->getUnit(0, array('template' => 'unit_wo_info')));
+				}
+				$aTasksVars[] = array(
+					'id' => $aTask[$CNF['FIELD_ID']],
+					'title' => $aTask[$CNF['FIELD_TITLE']],
+					'created' => bx_time_js($aTask[$CNF['FIELD_ADDED']]),
+					'class' => $aTask[$CNF['FIELD_COMPLETED']] == 1 ? 'completed' : 'uncompleted',
+					'due' => $aTask[$CNF['FIELD_DUEDATE']] > 0 ? bx_time_js($aTask[$CNF['FIELD_DUEDATE']]) : '',
+					'bx_repeat:members' => $aMembersVars,
+					'badges' => $this->serviceGetBadges($aTask[$CNF['FIELD_ID']], true),
+					'url' => BX_DOL_URL_ROOT . BxDolPermalinks::getInstance()->permalink('page.php?i=' . $CNF['URI_VIEW_ENTRY'] . '&id=' . $aTask[$CNF['FIELD_ID']]),
+					'object' => $this->_oConfig->getJsObject('tasks'),
+                    'bx_if:allow_manage' => array(
+				        'condition' => $bAllowManage,
+				        'content' => array(
+                            'id' => $aTask[$CNF['FIELD_ID']],
+                            'object' => $this->_oConfig->getJsObject('tasks'),
+                            'checked' => $aTask[$CNF['FIELD_COMPLETED']] == 1 ? 'checked' : '',
+                        )
+			        ),
+                    'bx_if:deny_manage' => array(
+				        'condition' => !$bAllowManage,
+				        'content' => array(
+                            'id' => $aTask[$CNF['FIELD_ID']],
+                            'checked' => $aTask[$CNF['FIELD_COMPLETED']] == 1 ? 'checked' : '',
+                        )
+			        ),
+				);
+			}
+            
+			$sClass = $sCompleted = $sAll = "";
+			if (isset($aFilterValues[$aList[$CNF['FIELD_ID']]])){
+				$sClass = $aFilterValues[$aList[$CNF['FIELD_ID']]];
+				if ($sClass == 'completed')
+					$sCompleted= 'selected';
+				if ($sClass == 'all')
+					$sAll = 'selected';
+			}
+            
+			$aListsVars[] = array(
+               'bx_if:allow_edit_list' => array(
+				    'condition' => $bAllowAdd,
+				    'content' => array(
+                        'title' => $aList[$CNF['FIELD_TITLE']],
+                        'context_id' => $iContextId,
+                        'list_id' => $aList[$CNF['FIELD_ID']],
+                        'object' => $this->_oConfig->getJsObject('tasks'),
+                    )
+			    ),
+               'bx_if:allow_add' => array(
+				    'condition' => $bAllowAdd,
+				    'content' => array(
+                        'context_id' => $iContextId,
+                        'list_id' => $aList[$CNF['FIELD_ID']],
+                        'object' => $this->_oConfig->getJsObject('tasks'),
+                    )
+			    ),
+                'bx_if:allow_delete_list' => array(
+				    'condition' => $bAllowManage,
+				    'content' => array(
+                        'context_id' => $iContextId,
+                        'list_id' => $aList[$CNF['FIELD_ID']],
+                        'object' => $this->_oConfig->getJsObject('tasks'),
+                    )
+			    ),
+                'bx_if:deny_edit_list' => array(
+				    'condition' => !$bAllowAdd,
+				    'content' => array(
+                        'title' => $aList[$CNF['FIELD_TITLE']],
+                    )
+			    ),
+				'id' => $aList['id'],
+				'bx_repeat:tasks' =>  $aTasksVars,
+				'context_id' => $iContextId,
+				'list_id' => $aList[$CNF['FIELD_ID']],
+				'object' => $this->_oConfig->getJsObject('tasks'),
+				'class' => $sClass,
+				'completed' => $sCompleted,
+				'all' => $sAll,
+			);
+		}
+		
+		$aVars = array(
+			'bx_repeat:task_lists' => $aListsVars,
+			'bx_if:allow_add_list' => array(
+				'condition' => $bAllowAdd,
+				'content' => array(
+                    'context_id' => $iContextId,
+                    'object' => $this->_oConfig->getJsObject('tasks'),
+                )
+			),
+		);
+		
+		$this->_oTemplate->addJs(array(
+			'jquery-ui/jquery-ui.min.js',
+			'tasks.js',
+            'modules/base/general/js/|forms.js'
+    	));
+		
+		return $this->_oTemplate->getJsCode('tasks', array('t_confirm_block_deletion' => _t('_bx_tasks_confirm_tasklist_deletion'))) . $this->_oTemplate->parseHtmlByName('browse_tasks.html', $aVars);
+    }
+	
+    /**
+    * Common methods
+    */
+    public function onExpired($iContentId)
+    {
+        $CNF = &$this->_oConfig->CNF;
+
+        $aContentInfo = $this->_oDb->getContentInfoById($iContentId);
+        if(!$aContentInfo)
+            return;
+
+        $oConnection = BxDolConnection::getObjectInstance($CNF['OBJECT_CONNECTION']);
+        if($oConnection) {
+            $aProfileIds = $oConnection->getConnectedContent($iContentId);
+            if(!empty($aProfileIds) && is_array($aProfileIds))
+                foreach($aProfileIds as $iProfileId)
+                    bx_alert($this->getName(), 'expired', $iContentId, false, array(
+                        'object_author_id' => $iProfileId,
+                        'privacy_view' => $aContentInfo[$CNF['FIELD_ALLOW_VIEW_TO']]
+                    ));
+        }
+    }
+    
+    function isAllowView($iContextId)
+    {
+        $oProfileContext = BxDolProfile::getInstance($iContextId);
+        $mixedResult = $oProfileContext->checkAllowedProfileView($iContextId);
+        if($mixedResult !== CHECK_ACTION_RESULT_ALLOWED)
+            return false;
+        return true;
+    }
+    
+    function isAllowAdd($iContextId)
+    {
+        $oProfileContext = BxDolProfile::getInstance($iContextId);
+        $mixedResult = $oProfileContext->checkAllowedPostInProfile($iContextId);
+        if($mixedResult !== CHECK_ACTION_RESULT_ALLOWED)
+            return false;
+        return true;
+    }
+    
+    function isAllowManageByContext($iContextId)
+    {
+        if(isAdmin())
+            return true;
+      
+        $oProfileContext = BxDolProfile::getInstance($iContextId);
+        if(BxDolService::call($oProfileContext->getModule(), 'is_admin', array($iContextId)))
+            return true;
+    }
+    
+    function isAllowManage($iContentId)
+    {
+        $CNF = &$this->_oConfig->CNF;
+        
+        $aContentInfo = $this->_oDb->getContentInfoById($iContentId);
+        $bRv = $this->isAllowManageByContext(-$aContentInfo[$CNF['FIELD_ALLOW_VIEW_TO']]);
+        if ($bRv)
+            return $bRv;
+        
+        if ($aContentInfo[$CNF['FIELD_AUTHOR']] == bx_get_logged_profile_id())
+            return true;
+       
+        $oConnection = BxDolConnection::getObjectInstance($CNF['OBJECT_CONNECTION']);
+        if($oConnection) {
+            $aProfileIds = $oConnection->getConnectedContent($iContentId);
+            if(!empty($aProfileIds) && is_array($aProfileIds)){
+                if (in_array(bx_get_logged_profile_id(), $aProfileIds))
+                    return true;
+            }
+        }
+
+        return false;
+    }
+}
+
+/** @} */

+ 149 - 0
modules/boonex/tasks/updates/13.0.1_13.0.2/source/install/config.php

@@ -0,0 +1,149 @@
+<?php
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT 
+ * @defgroup    Tasks Tasks
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+$aConfig = array(
+
+    /**
+     * Main Section.
+     */
+    'type' => BX_DOL_MODULE_TYPE_MODULE,
+    'name' => 'bx_tasks',
+    'title' => 'Tasks',
+    'note' => 'Tasks module.',
+    'version' => '13.0.2',
+    'vendor' => 'BoonEx',
+    'help_url' => 'http://feed.una.io/?section={module_name}',
+
+    'compatible_with' => array(
+        '13.0.0-B2'
+    ),
+
+    /**
+     * 'home_dir' and 'home_uri' - should be unique. Don't use spaces in 'home_uri' and the other special chars.
+     */
+    'home_dir' => 'boonex/tasks/',
+    'home_uri' => 'tasks',
+
+    'db_prefix' => 'bx_tasks_',
+    'class_prefix' => 'BxTasks',
+
+    /**
+     * Category for language keys.
+     */
+    'language_category' => 'Tasks',
+
+    /**
+     * List of page triggers.
+     */
+    'page_triggers' => array (
+    	'trigger_page_profile_view_entry',
+    ),
+    
+    /**
+     * Menu triggers.
+     */
+    'menu_triggers' => array(
+        'trigger_profile_view_submenu',
+        'trigger_group_view_submenu',
+    ),
+
+    /**
+     * Storage objects to automatically delete files from upon module uninstallation.
+     * Note. Don't add storage objects used in transcoder objects.
+     */
+    'storages' => array(
+        'bx_tasks_covers',
+    	'bx_tasks_photos',
+        'bx_tasks_videos',
+        'bx_tasks_files'
+    ),
+
+    /**
+     * Transcoders.
+     */
+    'transcoders' => array(
+        'bx_tasks_preview',
+        'bx_tasks_gallery',
+        'bx_tasks_cover',
+
+        'bx_tasks_preview_photos',
+        'bx_tasks_gallery_photos', 
+
+        'bx_tasks_videos_poster',
+        'bx_tasks_videos_poster_preview',
+        'bx_tasks_videos_mp4',
+        'bx_tasks_videos_mp4_hd',
+
+        'bx_tasks_preview_files',
+        'bx_tasks_gallery_files'
+    ),
+
+    /**
+     * Extended Search Forms.
+     */
+    'esearches' => array(
+        'bx_tasks',
+    	'bx_tasks_cmts'
+    ),
+
+    /**
+     * Installation/Uninstallation Section.
+     */
+    'install' => array(
+        'execute_sql' => 1,
+        'update_languages' => 1,
+        'clear_db_cache' => 1,
+    ),
+    'uninstall' => array (
+    	'process_esearches' => 1,
+        'execute_sql' => 1,
+        'update_languages' => 1,
+        'update_relations' => 1,
+        'clear_db_cache' => 1,
+    ),
+    'enable' => array(
+        'execute_sql' => 1,
+        'update_relations' => 1,
+        'clear_db_cache' => 1,
+    ),
+    'enable_success' => array(
+        'process_menu_triggers' => 1,
+        'process_page_triggers' => 1,
+    	'process_esearches' => 1,
+        'register_transcoders' => 1,
+        'clear_db_cache' => 1,
+    ),
+    'disable' => array (
+        'execute_sql' => 1,
+        'update_relations' => 1,
+        'unregister_transcoders' => 1,
+        'clear_db_cache' => 1,
+    ),
+    'disable_failed' => array (
+        'register_transcoders' => 1,
+        'clear_db_cache' => 1,
+    ),
+
+    /**
+     * Dependencies Section
+     */
+    'dependencies' => array(),
+
+    /**
+     * Relations Section
+     */
+    'relations' => array(
+    	'bx_timeline',
+    	'bx_notifications'
+    ),
+
+);
+
+/** @} */

+ 85 - 0
modules/boonex/tasks/updates/13.0.1_13.0.2/source/js/tasks.js

@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) UNA, Inc - https://una.io
+ * MIT License - https://opensource.org/licenses/MIT 
+ * @defgroup    Tasks Tasks
+ * @ingroup     UnaModules
+ *
+ * @{
+ */
+
+function BxTasksView(oOptions) {
+    this._oOptions = oOptions
+    var $this = this;
+    $(document).ready(function () {
+        $this.init();
+    });
+}
+
+BxTasksView.prototype.init = function () {
+    var $this = this;
+}
+
+BxTasksView.prototype.setCompleted = function (iId, oObj) {
+    var $this = this;
+	var iVal = ($(oObj).prop('checked') ? 1 : 0);
+	$this._setCompleted(iId, iVal);
+}
+
+BxTasksView.prototype.setCompletedByMenu = function (iId, iValue, oObj) {
+    var $this = this;
+	$(oObj).addClass('bx-btn-disabled');
+	$this._setCompleted(iId, iValue);
+	document.location.reload(true);
+}
+
+BxTasksView.prototype._setCompleted = function (iId, iValue) {
+	var $this = this;
+	$.getJSON($this._oOptions.sActionUri + 'set_completed/' + iId + '/' + iValue + '/', {}, function () { });
+}
+	
+BxTasksView.prototype.processTaskList = function (iContextId, iId, obj) {
+    var $this = this;
+	$(window).dolPopupAjax({
+	    url: $this._oOptions.sActionUri + 'process_task_list_form/' + iContextId + '/' + iId + '/',
+        closeOnOuterClick: false,
+		removeOnClose: true
+    });   
+}
+
+BxTasksView.prototype.deleteTaskList = function (iId, iContextId, obj) {
+    var $this = this;
+    bx_confirm($this._oOptions.t_confirm_block_deletion, function () {
+        $.getJSON($this._oOptions.sActionUri + 'delete_task_list/' + iId + '/' + iContextId + '/', {}, function (oData) {
+            $this.reloadData(oData, iContextId)
+        });
+    });
+}
+	
+BxTasksView.prototype.processTask = function (iContextId, iListId, obj) {
+    var $this = this;
+	$(window).dolPopupAjax({
+	    url: $this._oOptions.sActionUri + 'process_task_form/' + iContextId + '/' + iListId + '/',
+        closeOnOuterClick: false,
+        removeOnClose: true
+    });   
+}
+
+BxTasksView.prototype.reloadData = function (oData, iContextId) {
+	$(".bx-popup-applied:visible").dolPopupHide();
+	var $this = this;
+	loadDynamicBlockAuto($('.bx-tasks-tasklist-add'), window.location.href )
+}
+
+BxTasksView.prototype.setFilter = function (iListId, object) {
+	var $this = this;
+	var val = $(object).val();
+	
+	$('#bx-tasks-tasklist-' + iListId).removeClass (function (index, className) {
+    	return (className.match (/(^|\s)bx-tasks-tasklist-filter-\S+/g) || []).join(' ');
+	})
+	if (val)
+		$('#bx-tasks-tasklist-' + iListId).addClass('bx-tasks-tasklist-filter-' + val);
+  	
+	$.getJSON($this._oOptions.sActionUri + 'setFilterValue/' + iListId + '/' + val + '/', function (oData) {});
+}
+

+ 112 - 0
modules/boonex/tasks/updates/13.0.1_13.0.2/source/template/css/main.css

@@ -0,0 +1,112 @@
+.bx-tasks-tasklist .bx-def-color-bg-hl{
+	display: flex;
+	flex-wrap: wrap;
+	justify-content: space-between;
+	align-items: center
+}
+.bx-tasks-tasklist-title {
+	font-weight: bold;
+	white-space: nowrap;
+	overflow: hidden;
+	text-overflow: ellipsis;
+	display: inline-block;
+	max-width: calc(100% - 220px);
+}
+
+.bx-task-due-date {
+    color: red;
+}
+.bx-tasks-members .bx-base-pofile-unit-wo-info {
+    width: 2rem;
+    height: 2rem;
+	display: inline-block;   
+}
+.bx-tasks-members .bx-def-thumb-size{
+	width: 2rem;
+    height: 2rem;
+	 font-size: 1rem;
+}
+.bx-tasks-members div.bx-base-pofile-unit-wo-info {
+    margin-left: -1rem;
+}
+
+.bx-tasks-task-checkbox{
+    display: inline-block;
+	height: 24px;
+}
+.bx-tasks-task-checkbox input[type=checkbox] {
+        display:none;
+}
+.bx-tasks-task-checkbox  input[type=checkbox] + label{
+	height: 24px;
+	width: 24px;
+	display:inline-block;
+	padding: 0;
+	cursor: pointer;
+}
+
+.bx-tasks-task-checkbox  input[type=checkbox] + label:before{
+    content: "\f111";
+    font-family: "sys-user-far", sans-serif;
+    display: block;
+    width: 100%;
+    height: 100%;
+    font-size: 1.5rem;
+    line-height: 1;
+}
+
+.bx-tasks-task-checkbox input[type=checkbox]:checked + label{
+	height: 24px;
+	width: 24px;
+	display:inline-block;
+	padding: 0;
+}
+.bx-tasks-task-checkbox input[type=checkbox]:checked + label:before{
+    content: "\f058";
+    font-family: "sys-user-far", sans-serif;
+    display: block;
+    width: 100%;
+    height: 100%;
+    font-size: 1.5rem;
+    line-height: 1;
+}
+.bx-tasks-task{
+	display: flex;
+	justify-content: space-between;
+	align-items: center
+}
+.bx-tasks-members{
+	flex-grow: 2;
+	text-align: right;
+}
+.bx-tasks-task .bx-badge, .bx-tasks-task .bx-badges-list{
+	display: inline-block;
+}
+.bx-tasks-tasklist .bx-tasks-task-completed{
+	display: none;
+}
+.bx-tasks-tasklist-filter-all .bx-tasks-task-completed{
+	display: flex;
+}
+.bx-tasks-tasklist-filter-completed .bx-tasks-task-uncompleted{
+	display: none;
+}
+.bx-tasks-tasklist-filter-completed .bx-tasks-task-completed{
+	display: flex;
+}
+.bx-tasks-tasklist .bx-def-border-bottom:last-child{
+	border: none;
+}
+.bx-tasks-task .bx-tasks-task-name{
+	max-width: 50%;
+	white-space: nowrap;
+	overflow: hidden;
+	text-overflow: ellipsis;
+	display: inline-block;
+}
+.ui-autocomplete{
+	z-index: 10000 !important;
+}
+.bx-media-desktop .bx-tasks-form-cnt{
+	width: 800px;
+}

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio