From 1d0caf95134f9149428d3f41eb012a34b7a6bf54 Mon Sep 17 00:00:00 2001
From: Erik Thuning <boooink@gmail.com>
Date: Tue, 26 Jul 2022 10:56:59 +0200
Subject: [PATCH] Sorted the bugs when picking an interval via button

---
 html/fragments.html |  6 +++---
 script.js           | 17 +++++++++++++----
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/html/fragments.html b/html/fragments.html
index 9dbb066..761a059 100644
--- a/html/fragments.html
+++ b/html/fragments.html
@@ -611,9 +611,9 @@
     </button>
     <br/>
     <label>Löptid:</label>
-    <button onClick="JavaScript:loanLength(event, 7)">1 vecka</button>
-    <button onClick="JavaScript:loanLength(event, 365)">1 år</button>
-    <button onClick="JavaScript:loanLength(event, 1095)">3 år</button>
+    <button onClick="JavaScript:loanLength(event, 7, 'day')">1 vecka</button>
+    <button onClick="JavaScript:loanLength(event, 1, 'year')">1 år</button>
+    <button onClick="JavaScript:loanLength(event, 3, 'year')">3 år</button>
     <br/>
     <label for="end">Slutdatum:</label>
     <input type="text"
diff --git a/script.js b/script.js
index 2dc75e4..3478b9a 100644
--- a/script.js
+++ b/script.js
@@ -483,6 +483,7 @@ function calendar(event) {
     if(!input.cal) {
         var cal = new dhtmlXCalendarObject(input.id)
         cal.hideTime()
+        cal.setDate(input.value)
         input.cal = cal
         cal.show()
     }
@@ -574,16 +575,24 @@ function showFile(event) {
     filefield.value = event.currentTarget.files[0].name
 }
 
-function loanLength(event, days) {
+function loanLength(event, length, unit) {
     event.preventDefault()
     var end = document.getElementById('end')
     var enddate = new Date()
-    enddate.setDate(enddate.getDate() + days)
-    var month = enddate.getMonth()
+    switch(unit) {
+    case 'day':
+        enddate.setDate(enddate.getDate() + length)
+        break
+    case 'year':
+        enddate.setFullYear(enddate.getFullYear() + length)
+        break;
+    }
+    // javascript zero-indexes months because of course
+    var month = enddate.getMonth() + 1
     if(month < 10) {
         month = '0' + month
     }
-    var day = enddate.getDay()
+    var day = enddate.getDate()
     if(day < 10) {
         day = '0' + day
     }