Dateiverwaltung für die WebBox
ulrich
2021-01-21 e3cec295db825d2f0a1c465a159161c541eb5b5a
web/ui2/js/app.js
@@ -23,6 +23,7 @@
  this.cutCopyOperation;
  this.cutCopySrcDir;
  this.cutCopyFiles;
  this.fm_slideshow = false;
  this.dateien;
  this.cache = {}; // mustache template cache
@@ -71,7 +72,7 @@
  this.fm_init_uploader = function() {
    //console.log('init_uploader');
    self.dateien = new Array();
    var dropzone = document.getElementById("dateien");
    var dropzone = document.getElementById("upload-target");
    dropzone.ondragover = dropzone.ondragenter = function(event) {  
      event.stopPropagation();  
      event.preventDefault();  
@@ -103,7 +104,17 @@
  this.fm_hilfe = function() {
    window.open('/data/dok/wbx-doku.html#wbx-bedienung', '_blank');
  };
  this.fm_toggle_show_slideshow = function() {
    if(self.fm_slideshow) {
      //$('#m-toggle-slideshow').text('Diashow einschalten');
      self.fm_slideshow = false;
    } else {
      //$('#m-toggle-slideshow').text('Diashow ausschalten');
      self.fm_slideshow = true;
    }
  };
  this.fm_view_slideshow = function() {
    // https://localhost:8443/file-cms/fotos/?o=ulrich/bilder/diashow/ordnername
@@ -124,7 +135,14 @@
    window.open('/file-cms/fotos/?o=' + restdir + '/' /*+ fname*/, '_blank');
  };
  this.fm_menu_datei_entpacken = function() {
    //var gewaehlte = $('.datei-gewaehlt');
    //var fname = $(gewaehlte[0]).text();
    var gewaehlte = document.querySelector('.datei-gewaehlt');
    var fname = gewaehlte.textContent;
    self.fm_unzip_file(fname);
  };
  this.menue_umschalten = function () {
    var ham = document.querySelector(".hamburger");
    ham.classList.toggle("is-active"); // hamburger-icon umschalten
@@ -159,6 +177,14 @@
    }
    self.menue_umschalten();
  };
  this.fm_fusszeile_zeigen = function() {
    var suedDiv = document.querySelector('.sued');
    suedDiv.classList.add('sued-open');
    suedDiv.style.height = '7em';
    //$('.sued').show();
  };
  this.meldung_mit_timeout = function (meldung, timeout) {
    var s = document.querySelector('.sued');
@@ -347,7 +373,8 @@
    var elem = ev.target;
    if(self.modus == 'kacheln') {
      // Kacheln
      var par = elem.parentElement;
      //var par = elem.parentElement;
      var par = elem.closest('.datei-figure');
      var dElem = par.querySelector('.dateiname');
      if(elem.classList.contains("icon-folder")) {
        // Ordner
@@ -733,7 +760,7 @@
    // 'liste' enthaelt:
    // {"List":[{"java.lang.String":"test3.txt"},{"java.lang.String":"Test1.txt"},{"java.lang.String":"Test2.txt"}]}
    // und wird auf dem Server zu einer List[ArrayList<String>] bei der jede ArrayList<String> nur ein Element hat 
    console.log(liste);
    //console.log(liste);
    return liste;
  };
@@ -751,24 +778,6 @@
        self.dialog_schliessen();
      });
    });    
    /*
    $('#modal_ok').click(function() {
      // hier umbenennen
      fm_rename_file(fname, pfad, $('#dateiname').val());
    });
    $('#saveModalTitle').text('Datei umbenennen');
    $('#dialogfrage').text("Neuer Dateiname?");
    if(fname !== undefined) {
      $('#dateiname').val(fname);
      $('#dateiname').attr('placeholder', 'Dateiname');
      $('#saveModal').modal({
        keyboard: false,
        show: true
      });
    }
    */
  };
  
  this.fm_menu_html_export = function() {
@@ -831,41 +840,9 @@
    var gewaehlte = document.querySelector('.datei-gewaehlt');
    var fname = gewaehlte.textContent;
    self.datei_ansehen_oder_bearbeiten(fname);
    /*
    if(fname.endsWith('htmi')) {
      //self.fm_edit_as_doc();
      self.fm_get_file_content('doc', fname);
    } else {
      //self.fm_edit_as_text();
      self.fm_get_file_content('text', fname);
    }
    */
  };
  /*
  this.fm_edit_as_text = function() {
    self.fm_get_sel_for_file_content('text');
  };
  this.fm_edit_as_doc = function() {
    self.fm_get_sel_for_file_content('doc');
  };
  this.fm_get_sel_for_file_content = function(typ) {
    var gewaehlte = document.querySelector('.datei-gewaehlt');
    //var fname = $(gewaehlte).find('.dateiname').text();
    var fname = gewaehlte.textContent;
    self.fm_get_file_content(typ, fname);
  };
  */
  this.fm_get_file_content = function(typ, fname) {
    //var gewaehlte = document.querySelector('.datei-gewaehlt');
    //var fname = $(gewaehlte).find('.dateiname').text();
    //var fname = gewaehlte.textContent;
    //console.log('fname: ' + fname);
    self.openFileName = fname;
    var m = '?c=de.uhilger.filecms.api.FileMgr&m=getCode&p=' + self.pfad + '&p=' + fname;
    var u = '../svc' + m;
@@ -899,14 +876,8 @@
    }
    var m = '?c=de.uhilger.filecms.api.FileMgr&m=' + method;
    var u = '../svc' + m;
    //var data = '&p=' + self.pfad + '&p=' + saveFileName + '&p=' +
    //        encodeURIComponent(content);
    var data = '&p=' + self.pfad + '&p=' + saveFileName + '&p=' + 
            encodeURIComponent(content);
    // '{"foo": "bar"}'
    //var data = '{"p1": "' + self.pfad + '", "p2": "' + saveFileName +
    //        '", "p3": "' + encodeURIComponent(self.escapeHtml(content)) + '"}';
    self.fm_post(u, data, "text", function(resp) {
      // ...
    });
@@ -959,6 +930,30 @@
      self.fm_get_list(self.pfad);
    });  
  };
  this.fm_unzip_file = function(fn) {
    var m = '?c=de.uhilger.filecms.api.FileMgr&m=extractZipfile';
    m = m + '&p=' + self.pfad;
    m = m + '&p=' + fn;
    var u = '../svc' + m;
    self.fm_get(u, "text", function(resp) {
      var mtx = new Meldung('Rueckmeldung vom Entpacken: ' + resp);
      //console.log(mtx);
      self.html_erzeugen("data/tpl/fuss.tpl", mtx, function(html) {
        //console.log(html);
        var elem = document.querySelector('.sued');
        elem.innerHTML = html;
        document.querySelector('.close-btn-fuss').addEventListener('click', function(){
          var suedDiv = document.querySelector('.sued');
          document.querySelector('.close-btn-fuss').removeEventListener('click', this);
          suedDiv.classList.remove('sued-open');
          suedDiv.style.height = '0';
        });
        self.fm_fusszeile_zeigen();
        self.fm_get_list(self.pfad);
      });
    });
  };
  /* -------- upload ----------- */