From be20934701044cf010eb78d437c4f72cccddf3ce Mon Sep 17 00:00:00 2001
From: "michael.daniel" <michael@pcsg.de>
Date: Fri, 9 Aug 2019 15:53:21 +0200
Subject: [PATCH] fix: Lang Currency Switch: no dropdown if there are nothing
 to show. refactor: Many small changes. fix: Search on product search site
 works.

---
 bin/css/products.css                          |  5 --
 bin/css/style.css                             |  5 ++
 bin/javascript/controls/LangCurrencySwitch.js | 11 ++-
 bin/javascript/init.js                        | 37 ++++++---
 index.html                                    | 75 ++++++++++---------
 locale.xml                                    | 10 +--
 .../Controls/LangCurrencySwitch.css           |  4 +
 7 files changed, 86 insertions(+), 61 deletions(-)

diff --git a/bin/css/products.css b/bin/css/products.css
index 48b4543..ff55bf3 100644
--- a/bin/css/products.css
+++ b/bin/css/products.css
@@ -429,11 +429,6 @@
     width: 40px;
 }
 
-
-.quiqqer-products-productList-products {
-    float: none !important;
-}
-
 .quiqqer-product-list {
     margin: 2em 0;
     position: relative;
diff --git a/bin/css/style.css b/bin/css/style.css
index d4bfc9a..750d468 100644
--- a/bin/css/style.css
+++ b/bin/css/style.css
@@ -499,6 +499,10 @@ a.toTop:before {
     display: flex;
 }
 
+.topbar-left > p {
+    margin-bottom: 0;
+}
+
 .topbar-contact-mail,
 .topbar-phone {
     margin-right: 20px;
@@ -614,6 +618,7 @@ a.toTop:before {
 @media screen and (max-width: 767px) {
     .template-search {
         min-width: auto;
+        flex-grow: 1;
     }
 
     .quiqqer-products-search-suggest-form .input-search-icon {
diff --git a/bin/javascript/controls/LangCurrencySwitch.js b/bin/javascript/controls/LangCurrencySwitch.js
index 0dbd8e0..18747d7 100644
--- a/bin/javascript/controls/LangCurrencySwitch.js
+++ b/bin/javascript/controls/LangCurrencySwitch.js
@@ -83,7 +83,7 @@ define('package/quiqqer/template-cologne/bin/javascript/controls/LangCurrencySwi
 
                     self.open();
                 });
-            })
+            });
         },
 
         $checkLang: function () {
@@ -115,12 +115,15 @@ define('package/quiqqer/template-cologne/bin/javascript/controls/LangCurrencySwi
                 }, {
                     'package': 'quiqqer/template-cologne'
                 });
-            })
+            });
         },
 
         $checkCurrencies: function () {
             var self = this;
 
+            console.log(self.getAttribute('currencySwitch'));
+            console.log(self.getAttribute('userrelatedcurrency'));
+
             return new Promise(function (resolve) {
                 if (!self.getAttribute('currencySwitch') ||
                     !self.getAttribute('userrelatedcurrency')) {
@@ -136,7 +139,7 @@ define('package/quiqqer/template-cologne/bin/javascript/controls/LangCurrencySwi
                     }
                     resolve();
                 });
-            })
+            });
         },
 
         /**
@@ -157,7 +160,7 @@ define('package/quiqqer/template-cologne/bin/javascript/controls/LangCurrencySwi
 
             this.createMenu().then(function () {
                 if (!self.currencySwitch || !self.langSwitch) {
-                    self.Menu.addClass('single-control')
+                    self.Menu.addClass('single-control');
                 }
 
                 self.Menu.inject(self.MenuWrapper);
diff --git a/bin/javascript/init.js b/bin/javascript/init.js
index ce3f961..e34cdad 100644
--- a/bin/javascript/init.js
+++ b/bin/javascript/init.js
@@ -3,12 +3,15 @@ var lg = 'quiqqer/template-cologne';
 window.addEvent('domready', function () {
     "use strict";
 
-    initMobileMenu();
 
     require([
         'qui/QUI'
     ], function (QUI) {
 
+        if (SHOW_CATEGORY_MENU) {
+            initMobileMenu();
+        }
+
         /**
          * toTop button
          */
@@ -351,8 +354,8 @@ function createLogoutWindow (LogoutWindow) {
                         moofx(ContentElm).animate({
                             opacity: 1
                         });
-                    })
-                }).delay(50)
+                    });
+                }).delay(50);
             }
         }
     }).open();
@@ -376,18 +379,32 @@ function createLoginWindow () {
                 }
             }
         }).open();
-    })
+    });
 }
 
 /**
  * Menu mobile
  */
-function initMobileMenu() {
+function initMobileMenu () {
+    var OpenCategoryBtn = document.getElement('.shop-category-menu-button'),
+        MenuElm         = document.getElement('[data-qui="package/quiqqer/menu/bin/SlideOut"]');
 
-    var OpenMenuBtn = document.getElement('.shop-category-menu-button');
-    console.log(OpenMenuBtn)
-    console.log(1)
-    if (OpenMenuBtn) {
-        console.log(OpenMenuBtn)
+    if (!OpenCategoryBtn) {
+        console.error('Open Category Button not found.');
+        return;
     }
+
+
+    require(['utils/Controls'], function (Controls) {
+        Controls.getControlByElement(MenuElm).then(function (MenuControl) {
+            /*console.log(OpenCategoryBtn)
+
+            OpenCategoryBtn.removeEvents('click');
+            console.log(OpenCategoryBtn)
+
+            console.log(MenuControl);*/
+        });
+    });
+
+
 }
\ No newline at end of file
diff --git a/index.html b/index.html
index 6ca6d9d..daad991 100644
--- a/index.html
+++ b/index.html
@@ -28,9 +28,10 @@
 
     <script>
         var BASKET_STYLE        = "{$basketStyle}";
-        var BASKET_OPEN          = "{$basketOpen}";
+        var BASKET_OPEN         = "{$basketOpen}";
         var INITAL_BASKET_PRICE = "{$initialBasketPrice}";
         var COUNT_LANGUAGES     = "{$countLanguages}";
+        var SHOW_CATEGORY_MENU  = "{$showCategoryMenu}";
     </script>
 
 </head>
@@ -39,7 +40,7 @@
 
 {* small top bar *}
 {fetch template="template/topBar.html" Project=$Project Menu=$Menu User=$User Avatar=$Avatar
-    Flags=$Flags LangCurrencySwitch=$LangCurrencySwitch Search=$Search}
+Flags=$Flags LangCurrencySwitch=$LangCurrencySwitch Search=$Search}
 
 {* main navigation / menu *}
 <div>
@@ -50,7 +51,7 @@
 </div>
 
 {if $header == 'afterNav' && $Site->getAttribute('image_emotion')}
-    {fetch template="template/pageHeader.html" Site=$Site pageTitle=$pageTitle}
+{fetch template="template/pageHeader.html" Site=$Site pageTitle=$pageTitle}
 {/if}
 
 {* <!--Shop category menu--> *}
@@ -62,25 +63,25 @@
 
 <!-- breadcrumb -->
 {if $showBreadcrumb}
-    {fetch template="template/breadcrumb.html" Site=$Site pageTitle=$pageTitle}
+{fetch template="template/breadcrumb.html" Site=$Site pageTitle=$pageTitle}
 {/if}
 
 {assign var=headerSuffix value=$BricksManager->getBricksByArea('headerSuffix', $Site)}
 {foreach $headerSuffix as $Brick}
-    {assign var=brickFullWidth value=''}
-    {if $Brick->getSetting( 'general.fullWidth' )}
-        {assign var=brickFullWidth value='brick-full-width'}
-    {/if}
-
-    {assign var=brickNoPadding value=""}
-        {if $Brick->getSetting('general.noSpacing')}
-        {assign var=brickNoPadding value="brick-no-spacing"}
-    {/if}
-    <section class="template-brick-container template-brick-headerSuffix brick-id-{$Brick->getAttribute('id')}">
-        <div class="template-grid-container template-grid-row {$brickFullWidth} {$brickNoPadding}">
-            {$Brick->create()}
-        </div>
-    </section>
+{assign var=brickFullWidth value=''}
+{if $Brick->getSetting( 'general.fullWidth' )}
+{assign var=brickFullWidth value='brick-full-width'}
+{/if}
+
+{assign var=brickNoPadding value=""}
+{if $Brick->getSetting('general.noSpacing')}
+{assign var=brickNoPadding value="brick-no-spacing"}
+{/if}
+<section class="template-brick-container template-brick-headerSuffix brick-id-{$Brick->getAttribute('id')}">
+    <div class="template-grid-container template-grid-row {$brickFullWidth} {$brickNoPadding}">
+        {$Brick->create()}
+    </div>
+</section>
 {/foreach}
 
 <main class="cologne-main">
@@ -91,20 +92,20 @@
 
 {assign var=footerPrefix value=$BricksManager->getBricksByArea('footerPrefix', $Site)}
 {foreach $footerPrefix as $Brick}
-    {assign var=brickFullWidth value=''}
-    {if $Brick->getSetting( 'general.fullWidth' )}
-        {assign var=brickFullWidth value='brick-full-width'}
-    {/if}
-
-    {assign var=brickNoPadding value=""}
-    {if $Brick->getSetting('general.noSpacing')}
-        {assign var=brickNoPadding value="brick-no-spacing"}
-    {/if}
-    <section class="template-brick-container template-brick-footerPrefix brick-id-{$Brick->getAttribute('id')}">
-        <div class="template-grid-container template-grid-row {$brickFullWidth} {$brickNoPadding}">
-            {$Brick->create()}
-        </div>
-    </section>
+{assign var=brickFullWidth value=''}
+{if $Brick->getSetting( 'general.fullWidth' )}
+{assign var=brickFullWidth value='brick-full-width'}
+{/if}
+
+{assign var=brickNoPadding value=""}
+{if $Brick->getSetting('general.noSpacing')}
+{assign var=brickNoPadding value="brick-no-spacing"}
+{/if}
+<section class="template-brick-container template-brick-footerPrefix brick-id-{$Brick->getAttribute('id')}">
+    <div class="template-grid-container template-grid-row {$brickFullWidth} {$brickNoPadding}">
+        {$Brick->create()}
+    </div>
+</section>
 {/foreach}
 
 <footer class="template-footer">
@@ -113,11 +114,11 @@
 
     {* pre-defined footer *}
     {fetch template="template/footer.predefined.html"
-        Site=$Site
-        paymentsData=$paymentsData
-        shortText=$shortText
-        urlList=$urlList
-        featuredProducts=$featuredProducts
+    Site=$Site
+    paymentsData=$paymentsData
+    shortText=$shortText
+    urlList=$urlList
+    featuredProducts=$featuredProducts
     }
 
     {* footer copyright *}
diff --git a/locale.xml b/locale.xml
index 4c12915..20be48f 100644
--- a/locale.xml
+++ b/locale.xml
@@ -192,12 +192,12 @@
         <locale name="template.topbar.content.left" html="true">
             <de><![CDATA[
                     <span class="topbar-contact-mail">
-                        <span class="fa fa-envelope-o"></span>
+                        <span class="fa fa-envelope-o">&nbsp;</span>
                         <a href="mailto:info@e-commerce.de">info@e-commerce.de</a>
                     </span>
 
                     <span class="topbar-phone">
-                        <span class="fa fa-phone"></span>
+                        <span class="fa fa-phone">&nbsp;</span>
                         0202 2454545
                     </span>
 
@@ -209,12 +209,12 @@
             </de>
             <en><![CDATA[
                     <span class="topbar-contact-mail">
-                        <span class="fa fa-envelope-o"></span>
+                        <span class="fa fa-envelope-o">&nbsp;</span>
                         <a href="mailto:info@e-commerce.de">info@e-commerce.de</a>
                     </span>
 
                     <span class="topbar-phone">
-                        <span class="fa fa-phone"></span>
+                        <span class="fa fa-phone">&nbsp;</span>
                         0202 2454545
                     </span>
 
@@ -469,7 +469,7 @@
             <en><![CDATA[Breadcrumb settings]]></en>
         </locale>
         <locale name="settings.breadcrumb.text" html="true">
-            <de><![CDATA[Brotkrumennavigation anzeigen? <br/>Bestimmen Sie für jeden Seitentyp, ob die Brotkrumennavigation angezeigt werden soll.]]></de>
+            <pl><![CDATA[Brotkrumennavigation anzeigen? <br/>Bestimmen Sie für jeden Seitentyp, ob die Brotkrumennavigation angezeigt werden soll.]]></pl>
             <en><![CDATA[Display breadcrumb? <br/>For each page type, specify if you want the breadcrumb navigation to be displayed.]]></en>
         </locale>
 
diff --git a/src/QUI/TemplateCologne/Controls/LangCurrencySwitch.css b/src/QUI/TemplateCologne/Controls/LangCurrencySwitch.css
index 37e879b..9b1dd49 100644
--- a/src/QUI/TemplateCologne/Controls/LangCurrencySwitch.css
+++ b/src/QUI/TemplateCologne/Controls/LangCurrencySwitch.css
@@ -27,6 +27,10 @@
     color: #9ba3ad;
 }
 
+.lcs-button.lcs-button__no-hover .fa {
+    display: none;
+}
+
 .lcs-button-flag {
     border-right: 1px solid #ddd;
     padding: 0 1rem;
-- 
GitLab