From f43cf99eac2ae18c13272a9db86f250c4dc89be5 Mon Sep 17 00:00:00 2001
From: Henning Leutz <leutz@pcsg.de>
Date: Fri, 20 May 2016 08:30:33 +0200
Subject: [PATCH] promoslider einstellungen

---
 bin/Controls/Slider/Promoslider.js            |  6 ++++
 bricks.xml                                    | 10 ++++++
 locale.xml                                    | 13 +++++++
 .../Bricks/Controls/Slider/Promoslider.php    | 35 ++++++++++++++++++-
 4 files changed, 63 insertions(+), 1 deletion(-)

diff --git a/bin/Controls/Slider/Promoslider.js b/bin/Controls/Slider/Promoslider.js
index 841aea3..c88bf89 100644
--- a/bin/Controls/Slider/Promoslider.js
+++ b/bin/Controls/Slider/Promoslider.js
@@ -38,6 +38,7 @@ define('package/quiqqer/bricks/bin/Controls/Slider/Promoslider', [
             effectduration: 400,
             autostart     : true,
             touch         : true,
+            shownavigation: true,
 
             pagefit         : false,
             pagefitcut      : 0,
@@ -163,6 +164,11 @@ define('package/quiqqer/bricks/bin/Controls/Slider/Promoslider', [
                 });
             }
 
+            if (!this.getAttribute('shownavigation')) {
+                this.$DotsDesktop.setStyle('display', 'none');
+                this.$DotsMobile.setStyle('display', 'none');
+            }
+
             this.resize().then(function () {
                 // periodical slide
                 if (this.getAttribute('autostart')) {
diff --git a/bricks.xml b/bricks.xml
index 013bac3..0281ded 100644
--- a/bricks.xml
+++ b/bricks.xml
@@ -148,6 +148,16 @@
                 <setting name="image-as-wallpaper" type="checkbox">
                     <locale group="quiqqer/bricks" var="brick.control.promoslider.image-as-wallpaper"/>
                 </setting>
+                <setting name="autostart" type="checkbox">
+                    <locale group="quiqqer/bricks" var="brick.control.promoslider.settings.autostart"/>
+                </setting>
+                <setting name="delay" type="number">
+                    <locale group="quiqqer/bricks" var="brick.control.promoslider.settings.delay"/>
+                </setting>
+                <setting name="shownavigation" type="checkbox">
+                    <locale group="quiqqer/bricks" var="brick.control.promoslider.settings.shownavigation"/>
+                </setting>
+
                 <setting type="select" name="image-wallpaper-position">
                     <locale group="quiqqer/bricks" var="brick.control.promoslider.image-wallpaper-position"/>
 
diff --git a/locale.xml b/locale.xml
index 6d9daf7..e0c7a2e 100644
--- a/locale.xml
+++ b/locale.xml
@@ -324,6 +324,19 @@
             <de><![CDATA[Navigations-Position]]></de>
             <en><![CDATA[Navigation position]]></en>
         </locale>
+        <locale name="brick.control.promoslider.settings.autostart">
+            <de><![CDATA[Autostart]]></de>
+            <en><![CDATA[Autostart]]></en>
+        </locale>
+        <locale name="brick.control.promoslider.settings.shownavigation">
+            <de><![CDATA[Navigation anzeigen]]></de>
+            <en><![CDATA[Show navigation]]></en>
+        </locale>
+        <locale name="brick.control.promoslider.settings.delay">
+            <de><![CDATA[Zeit zum nächsten Slide (VerzÜgerung)]]></de>
+            <en><![CDATA[Time to start next slide (Delay)]]></en>
+        </locale>
+
         <locale name="brick.control.promoslider.navigation-position-inner">
             <de><![CDATA[innen]]></de>
             <en><![CDATA[inner]]></en>
diff --git a/src/QUI/Bricks/Controls/Slider/Promoslider.php b/src/QUI/Bricks/Controls/Slider/Promoslider.php
index 56cc432..b414bd2 100644
--- a/src/QUI/Bricks/Controls/Slider/Promoslider.php
+++ b/src/QUI/Bricks/Controls/Slider/Promoslider.php
@@ -40,7 +40,11 @@ public function __construct($attributes = array())
             'class' => 'quiqqer-bricks-promoslider',
             'nodeName' => 'section',
             'data-qui' => 'package/quiqqer/bricks/bin/Controls/Slider/Promoslider',
-            'role' => 'listbox'
+            'role' => 'listbox',
+            'shownavigation' => false,
+            'image-as-wallpaper' => false,
+            'autostart' => false,
+            'delay' => 5000
         ));
 
         $this->addCSSFile(
@@ -63,10 +67,24 @@ public function getBody()
     {
         $Engine = QUI::getTemplateManager()->getEngine();
 
+        // defaults
+        $this->setAttribute('data-qui-options-autostart', false);
+        $this->setAttribute('data-qui-options-pagefit', false);
+        $this->setAttribute('data-qui-options-pagefitcut', false);
+        $this->setAttribute('data-qui-options-pagefitcutmobile', false);
+        $this->setAttribute('data-qui-options-autostart', false);
+        $this->setAttribute('data-qui-options-shownavigation', false);
+        $this->setAttribute('data-qui-options-image-as-wallpaper', false);
+        $this->setAttribute('data-qui-options-delay', 5000);
+
         if ($this->getAttribute('pagefit')) {
             $this->setAttribute('data-qui-options-pagefit', $this->getAttribute('pagefit'));
         }
 
+        if ($this->getAttribute('delay')) {
+            $this->setAttribute('data-qui-options-delay', $this->getAttribute('delay'));
+        }
+
         if ($this->getAttribute('pagefitcut')) {
             $this->setAttribute('data-qui-options-pagefitcut', $this->getAttribute('pagefitcut'));
         }
@@ -78,6 +96,21 @@ public function getBody()
             );
         }
 
+        if ($this->getAttribute('autostart')) {
+            $this->setAttribute(
+                'data-qui-options-autostart',
+                $this->getAttribute('autostart')
+            );
+        }
+
+        if ($this->getAttribute('shownavigation')) {
+            $this->setAttribute(
+                'data-qui-options-shownavigation',
+                $this->getAttribute('shownavigation')
+            );
+        }
+
+
         if ($this->getAttribute('image-as-wallpaper')) {
             $this->setAttribute(
                 'data-qui-options-image-as-wallpaper',
-- 
GitLab