From 7aa5665ab6b2bb72582713eda9534a02f7b3c50a Mon Sep 17 00:00:00 2001
From: Ulrich <undisclosed>
Date: Thu, 23 Feb 2017 16:50:10 +0000
Subject: [PATCH] erste Rohfassung der Upload-Funktion laeuft

---
 web/ui/ui.js |   91 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 90 insertions(+), 1 deletions(-)

diff --git a/web/ui/ui.js b/web/ui/ui.js
index 718b6dc..9b5147e 100644
--- a/web/ui/ui.js
+++ b/web/ui/ui.js
@@ -20,7 +20,95 @@
   $('#logout').click(fm_logout);  
   fm_get_login();
   fm_get_list('');
+  fm_init_uploader();
 }
+
+/* ----- Uploader Anfang ----------*/
+
+var idNr; 
+var dateien = new Array();
+var sendet = false;
+
+function fm_init_uploader() {
+  var dropzone = document.getElementById("dateien");  
+  dropzone.ondragover = dropzone.ondragenter = function(event) {  
+    event.stopPropagation();  
+    event.preventDefault();  
+  };
+
+  dropzone.ondrop = function(event) {  
+    console.log('drop ' + event.dataTransfer.files[0]);
+    event.stopPropagation();  
+    event.preventDefault();  
+
+    var filesArray = event.dataTransfer.files;  
+    for (var i=0; i<filesArray.length; i++) {  
+      //sendFile(filesArray[i]);  
+      var datei = new Datei(++idNr, filesArray[i]);
+      dateien.push(datei);
+      dateiListen(datei);
+    }  
+    naechsteDatei();
+  };
+}
+
+function dateiListen(d) {
+  $('.ost').append(d.file.name);
+}
+
+function naechsteDatei() {
+  if(!sendet && dateien.length > 0) {
+    sendFile(dateien.pop());
+  }
+}
+
+function sendFile(datei) {
+
+  // Dateitabelle ergaenzen
+  /*
+  var elem = document.getElementById('dateitabelle');
+  var tr = document.createElement('tr');
+  var td = document.createElement('td');
+  td.innerHTML = file.name;
+  tr.appendChild(td);
+  td = document.createElement('td');
+  td.innerHTML = 'wird hochgeladen..';
+  tr.appendChild(td);
+  elem.appendChild(tr);
+  */
+  
+  //doNotImplemented();
+  // Datei senden
+  var uri = "../api/upload"; // "../api/UploadFile"; //"/index.php";  
+  var xhr = new XMLHttpRequest();  
+  var fd = new FormData();  
+    
+  sendet = true;
+  xhr.open("POST", uri, true);  
+  xhr.onreadystatechange = function() {  
+    if (xhr.readyState == 4 && xhr.status == 200) {  
+      //var td = document.getElementById('dateizeile' + datei.nr);
+      // Handle response.  
+      //td.innerHTML = 'hochladen beendet';
+      //alert(xhr.responseText + ' ' + index); // handle response.  
+      sendet = false;
+      //window.setTimeout(function() {
+      fm_get_list(pfad);
+      naechsteDatei();
+      //}, 1000);                    
+    }  
+  };  
+  fd.append('dateiauswahlfeld', datei.file);  
+  // Initiate a multipart/form-data upload  
+  xhr.send(fd);          
+}
+
+function Datei (n, d) {
+  this.nr = n;
+  this.file = d;
+}
+
+/* ----- Uploader Ende --------------- */
 
 function fm_menu_test() {
   var w = $('.ost').width();
@@ -421,4 +509,5 @@
 function BcrFile(rp, n) {
   this.relPath = rp;
   this.fName = n;
-}
\ No newline at end of file
+}
+

--
Gitblit v1.9.3