Dateiverwaltung für die WebBox
Ulrich
2017-02-23 7aa5665ab6b2bb72582713eda9534a02f7b3c50a
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;
}
}