From a29f5ca76074f014d2a82390610797907528efc1 Mon Sep 17 00:00:00 2001
From: ulrich
Date: Wed, 21 Apr 2021 06:37:03 +0000
Subject: [PATCH] Unterscheidung und Verarbeitung Geraete-Liste mit allen Angaben (auch Status) oder nur Name

---
 www/ui/js/app.js |   34 +++++++++++++++++++++++++++-------
 1 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/www/ui/js/app.js b/www/ui/js/app.js
index 489cad0..5051dd6 100644
--- a/www/ui/js/app.js
+++ b/www/ui/js/app.js
@@ -156,11 +156,28 @@
   };
   
   this.geraet_schalt_liste = function() {
-    self.entitaet_liste('Geräte schalten','../api/store/Geraet/liste/', 
+    self.entitaet_liste('Geräte schalten','../api/store/Geraet/listealles/', 
       "data/tpl/geraet_schalt_liste.txt", '../api/store/Geraet/', 
       "self.form_geraet_status", function(responseText) {
         var geraet = JSON.parse(responseText);
         self.geraet_status_form(geraet);
+      }, function() {
+        self.addEvtListener('#ein-btn', 'click', function (event) {
+          var geraetName = event.target.attributes.gname.nodeValue;
+          //var geraetName = document.querySelector('.schalt-geraet-name').textContent;
+          self.http_get('../api/gstrg/geraet/' + geraetName + "/ein", function(responseText) {
+            // console.log(responseText);
+            self.geraet_schalt_liste();
+          });
+        });
+        self.addEvtListener('#aus-btn', 'click', function (event) {
+          var geraetName = event.target.attributes.gname.nodeValue;
+          //var geraetName = document.querySelector('.schalt-geraet-name').textContent;
+          self.http_get('../api/gstrg/geraet/' + geraetName + "/aus", function(responseText) {
+            // console.log(responseText);
+            self.geraet_schalt_liste();
+          });
+        });        
       });
   };
   
@@ -493,7 +510,7 @@
    *     self.ablageort_form(ablageort);
    *   });
    */
-  this.entitaet_liste = function(bname, listUrl, tpl, storeUrl, formFunc, cb) {
+  this.entitaet_liste = function(bname, listUrl, tpl, storeUrl, formFunc, cb, customListCode) {
     self.reset_top_buttons();
     document.querySelector('.bereich-name').textContent = bname;
     var bb = document.querySelector('.breadcrumb-behaelter');
@@ -508,7 +525,12 @@
         //self.addEvtListener('#neu-btn', 'click', function (event) {
         self.addEvtListener('#top-neu-btn', 'click', function(event) {
           eval(formFunc + "(this)");
-        });        
+        });                
+        if(typeof(customListCode) !== 'function') {
+          // ..
+        } else {
+          customListCode();
+        }        
       });
     });
   };  
@@ -554,11 +576,8 @@
    */
   this.handle_submit = function(event, existingKey, putUrl, keySelector, cb) {
     event.preventDefault();
-    console.log('handle submit, key: ' + event.target.id);
     const data = new FormData(event.target);
     const value = Object.fromEntries(data.entries());
-    //console.log({ value });
-    //console.log(JSON.stringify(value));
     var daten = JSON.stringify(value);
     var formkey = document.querySelector(keySelector).value;
     formkey = formkey.replace(' ', '').replace(/[\W]+/g, '');
@@ -870,9 +889,10 @@
   this.album  = a;
 }
 
-function Geraet(n, e, a, s) {
+function Geraet(n, e, a, s, st) {
   this.name = n;
   this.einUrl = e;
   this.ausUrl = a;
   this.statusUrl = s;
+  this.status = st;
 }
\ No newline at end of file

--
Gitblit v1.9.3