From 5ded712328d34ce0fea8ec719752a2d49060fd14 Mon Sep 17 00:00:00 2001
From: tvluke <tvluke@chaotikum.org>
Date: Thu, 23 May 2024 01:10:26 +0200
Subject: [PATCH] verbesserungen beim ausleihen

---
 _inventory/klemmlampe-1.md |  2 +-
 ausleihen.md               | 40 ++++++++++++++++++++++++++++++++++++--
 2 files changed, 39 insertions(+), 3 deletions(-)

diff --git a/_inventory/klemmlampe-1.md b/_inventory/klemmlampe-1.md
index 630daa75..1500d828 100644
--- a/_inventory/klemmlampe-1.md
+++ b/_inventory/klemmlampe-1.md
@@ -1,6 +1,6 @@
 ---
 layout: device
-name: "KLemmlampe mit LED-Glühbirne"
+name: "Klemmlampe mit LED-Glühbirne"
 #https://www.uuidgenerator.net/
 uid: c843c1d0-bb17-44d4-a1c1-bb07cb3f265a
 wikilink: https://wiki.chaotikum.org/hackspace:equipment:klemmlampe_1
diff --git a/ausleihen.md b/ausleihen.md
index 0a6106bf..eaff6fd7 100644
--- a/ausleihen.md
+++ b/ausleihen.md
@@ -43,7 +43,7 @@ Dieses Formular ist bisher lediglich ein Platzhalter und hat keine Funktionalit
           {% for set in site.sets %}
             {% if set.tag == set_tag -%}
               <div>
-                <input type="checkbox" id="{{set_tag}}" name="set_interest" value="{{set_tag}}" />
+                <input type="checkbox" id="{{set_tag}}" name="set_interest" value="{{set_tag}}" onclick="calc(this.id);" />
                 <label for="{{set_tag}}">{{set.name}}</label><br>
                 {% assign relevant_tools = site.inventory | where_exp: "rtools", "rtools.sets contains set_tag" -%}
                 <small class="form-text text-muted" style="padding-left: 10px">{% for tool in relevant_tools -%}{{tool.name}}{% unless forloop.last %}, {% endunless %}{% endfor-%}</small>
@@ -52,7 +52,7 @@ Dieses Formular ist bisher lediglich ein Platzhalter und hat keine Funktionalit
           {% endfor -%}
         {% endfor -%}
         <br>
-        <legend>Geräte</legend>
+        <legend>Geräte (einzeln)</legend>
         {% for tool in site.inventory -%}
           {%- if tool.sets contains 'leihbar' -%}
             <div>
@@ -100,5 +100,41 @@ Dieses Formular ist bisher lediglich ein Platzhalter und hat keine Funktionalit
 </div>
 
 <script>
+function calc(id)
+{
+  xhttp = new XMLHttpRequest();
+  xhttp.open("GET", "{{ site.baseurl }}/nobreakspace/inventory.xml", false);
+  xhttp.send();
+  xmlDoc = xhttp.responseXML; 
 
+  var devices = xmlDoc.getElementsByTagName("device")
+
+  if(document.getElementById(id).checked) {
+    for (let i = 0; i < devices.length; i++) {
+      devi = devices[i]
+      deviId= devi.getElementsByTagName("uid")[0].textContent
+      var sets = devi.getElementsByTagName("set")
+      for (let j = 0; j < sets.length; j++) {
+        set = sets[j];
+        if(set.textContent == id) {
+          cb = document.getElementById(deviId);
+          cb.disabled = true;
+        }
+      }
+    }
+  } else {
+    for (let i = 0; i < devices.length; i++) {
+      devi = devices[i]
+      deviId= devi.getElementsByTagName("uid")[0].textContent
+      var sets = devi.getElementsByTagName("set")
+      for (let j = 0; j < sets.length; j++) {
+        set = sets[j];
+        if(set.textContent == id) {
+          cb = document.getElementById(deviId);
+          cb.disabled = false;
+        }
+      }
+    }
+  }
+}
 </script>
-- 
GitLab