From 34aa39872f9563a0a872ff1b4eed637ab0410fd1 Mon Sep 17 00:00:00 2001
From: ulrich <not disclosed>
Date: Fri, 30 Mar 2018 15:30:43 +0000
Subject: [PATCH] Weitere Beispielfunktionen hinzugefuegt

---
 app.js |  116 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 114 insertions(+), 2 deletions(-)

diff --git a/app.js b/app.js
index 968c3aa..36bae97 100644
--- a/app.js
+++ b/app.js
@@ -1,8 +1,10 @@
 function AppVorlage() {
   var self = this;
   var appMenu;
+  var vorlagen;
 
   this.init = function() {
+    self.vorlagen = new Vorlagen();
     self.appMenu = new AppMenu();
     self.appMenu.init(
       "data/menu/",
@@ -11,13 +13,123 @@
       ".west",
       "8em");
     $(".hamburger").on("click", function(e) {
-      self.app_menue_umschalten();
+      self.menue_umschalten();
     });
 
   };
 
-  this.app_menue_umschalten = function() {
+  this.menue_umschalten = function() {
     $(".hamburger").toggleClass("is-active"); // hamburger-icon umschalten
     self.appMenu.toggle(); // menue oeffnen/schliessen
   };
+
+  this.info_dialog_zeigen = function() {
+    self.dialog_laden_und_zeigen('data/tpl/dlg-info.tpl', '');
+    self.menue_umschalten();
+  };
+
+  this.seitenleiste_umschalten = function() {
+    var ostDiv = $('.ost');
+    if($(ostDiv).hasClass('ost-open')) {
+      $(ostDiv).removeClass('ost-open');
+      $(ostDiv).css("flex-basis", "0em");
+    } else {
+      $(ostDiv).addClass('ost-open');
+      $(ostDiv).css("flex-basis", '6em'); // z.B. "16em"
+    }
+    self.menue_umschalten();
+  };
+
+  this.fusszeile_umschalten = function() {
+    var suedDiv = $('.sued');
+    if($(suedDiv).hasClass('sued-open')) {
+      $(suedDiv).removeClass('sued-open');
+      $(suedDiv).css("height", "0");
+    } else {
+      $(suedDiv).addClass('sued-open');
+      $(suedDiv).css("height", '1.5em'); // z.B. "16em"
+    }
+    self.menue_umschalten();
+  };
+
+  this.menu_message = function(msg) {
+    self.meldung_mit_timeout(msg, 1500);
+    var suedDiv = $('.sued');
+    if($(suedDiv).hasClass('sued-open')) {
+    } else {
+      $(suedDiv).addClass('sued-open');
+      $(suedDiv).css("height", '1.5em'); // z.B. "16em"
+    }
+    self.menue_umschalten();
+  };
+
+  this.message_1 = function() {
+    self.menu_message('Eine Mitteilung.');
+  };
+
+  this.message_2 = function() {
+    self.menu_message('Was wir schon immer sagen wollten.');
+  };
+
+  this.message_3 = function(text) {
+    self.menu_message(text);
+  };
+
+  this.meldung_mit_timeout = function(meldung, timeout) {
+    var s = $('.sued');
+    s.text(meldung);
+    setTimeout(function() {
+      s.text('Bereit.');
+      setTimeout(function() {
+        var suedDiv = $('.sued');
+        if($(suedDiv).hasClass('sued-open')) {
+          $(suedDiv).removeClass('sued-open');
+          $(suedDiv).css("height", "0");
+        }
+      }, 500);
+    }, timeout);
+  };
+
+  /* Dialog-Funktionen */
+
+  /*
+    Einen Dialog aus Vorlagen erzeugen
+
+    vurl - URL zur Dialogvorlage
+    msgTpl - URL mit einer Vorlage eines Mitteilungstextes (optional)
+  */
+  this.dialog_laden_und_zeigen = function(vurl, msgTpl) {
+    if(msgTpl !== '') {
+      $.ajax({
+        url: msgTpl,
+        type: "GET",
+        dataType : "json"
+      }).done(function( msg ) {
+        self.dialog_zeigen(vurl, msg);
+      });
+    } else {
+      self.dialog_zeigen(vurl, '');
+    }
+  };
+
+  this.dialog_zeigen = function(vurl, inhalt) {
+    var dlg = $(".dialog");
+    self.vorlagen.html_erzeugen(
+      vurl,
+      inhalt,
+      function(html) {
+        dlg.html(html);
+        $(".close-btn").on('click', function() {
+          self.dialog_schliessen();
+        });
+        dlg.slideDown(300);
+    });
+  };
+
+  self.dialog_schliessen = function() {
+    $('.close-btn').off('click');
+    $('.dialog').slideUp(300);
+  };
+
+
 }

--
Gitblit v1.9.3