Dateiverwaltung für die WebBox
ulrich
2017-03-12 cccd2bf52b77a8b7b17357093a5bfd3092d29a7a
web/ui/ui.js
@@ -28,6 +28,9 @@
var cutCopySrcDir;
var cutCopyFiles;
var cutCopyOperation;
var loc;
var PERS_DIR = "Persoenlich";
var PUB_DIR = "Oeffentlich";
function fm_init() {
  $("#mce-editor").hide();
@@ -61,6 +64,14 @@
  fm_get_login();
  fm_get_list('');
  fm_init_uploader();
  /*
  console.log('href: ' + window.location.href);
  console.log('host: ' + window.location.host);
  console.log('hostname: ' + window.location.hostname);
  console.log('port: ' + window.location.port);
  console.log('protocol: ' + window.location.protocol);
  */
  loc = window.location.protocol + '//' + window.location.host;
}
function fm_resize_editor() {
@@ -77,10 +88,10 @@
function fm_get_path(uid) {
  //console.log('pfad: ' + pfad);
  var restdir;
  if(pfad.indexOf('Oeffentlich') > -1) {
    restdir = pfad.substr('Oeffentlich'.length);
  } else if(pfad.indexOf('Persoenlicher Ordner') > -1) {
    restdir = pfad.substr('Persoenlicher Ordner'.length);
  if(pfad.indexOf(PUB_DIR) > -1) {
    restdir = pfad.substr(PUB_DIR.length);
  } else if(pfad.indexOf(PERS_DIR) > -1) {
    restdir = pfad.substr(PERS_DIR.length);
  }
  if(restdir !== undefined && restdir.startsWith('/')) {
    restdir = restdir.substr(1);
@@ -97,9 +108,9 @@
function fm_get_base(uid) {
  //console.log('pfad: ' + pfad);
  var pdir;
  if(pfad.indexOf('Oeffentlich') > -1) {
  if(pfad.indexOf(PUB_DIR) > -1) {
    pdir = '/data/';
  } else if(pfad.indexOf('Persoenlicher Ordner') > -1) {
  } else if(pfad.indexOf(PERS_DIR) > -1) {
    pdir = '/home/';
  }
  //console.log('base: ' + pdir + uid);
@@ -319,7 +330,7 @@
        }
        fm_get_list(pfad);
      }
    } else if($(elem).children(0).hasClass('fa-file')) {
    } else if($(elem).children(0).hasClass('datei')) {
      if(/*ev.shiftKey || */ ev.ctrlKey) {
        // mehrere Dateien sollen gewaehlt werden
      } else {
@@ -853,6 +864,7 @@
function FileRef(obj) {
  var self = this;
  this.fr = obj;
  this.fnx;
  
  this.typeClass = function() {
    if(modus == 'kacheln') {
@@ -870,13 +882,88 @@
    }
  };
  
  this.mini = function() {
    var miniatur = false;
    var namen = self.fr.absolutePath.split('/');
    if(namen.length > 0) {
      self.fnx = decodeURIComponent(namen[namen.length - 1]);
    } else {
      self.fnx = decodeURIComponent(self.fr.absolutePath);
    }
    if(self.fnx.indexOf('.jpg') > -1 || self.fnx.indexOf('.png') > -1 || self.fnx.indexOf('.gif') > -1 || self.fnx.indexOf('.jpeg') > -1) {
      miniatur = true;
    }
    return miniatur;
  };
  this.miniurl = function() {
      var userid = $('#userMenu').text();
      var ext = '';
      var dotpos = self.fnx.indexOf('.');
      if(dotpos > -1) {
        var fny = self.fnx;
        self.fnx = self.fnx.substring(0, dotpos);
        ext = fny.substr(dotpos);
      }
      var path = fm_get_path(userid);
      var imgurl = loc + path + '/' + self.fnx + '_tn' + ext;
      return imgurl;
  };
  /*
  this.kachel = function() {
    var htm;
    var fnx; // = self.fileName;
    var namen = self.fr.absolutePath.split('/');
    if(namen.length > 0) {
      fnx = decodeURIComponent(namen[namen.length - 1]);
    } else {
      fnx = decodeURIComponent(self.fr.absolutePath);
    }
    if(fnx.indexOf('.jpg') > -1 || fnx.indexOf('.png') > -1 || fnx.indexOf('.gif') > -1 || fnx.indexOf('.jpeg') > -1) {
      var userid = $('#userMenu').text();
      var ext = '';
      var dotpos = fnx.indexOf('.');
      if(dotpos > -1) {
        fnx = fnx.substring(0, dotpos);
        ext = fnx.substr(dotpos);
      }
      var path = fm_get_path(userid);
      var imgurl = path + '/' + fnx + '_tn' + ext;
      htm = "img src='" + imgurl + "'";
    } else {
      var cl;
      if(modus == 'kacheln') {
        if(self.fr.isDirectory) {
          cl = 'fa-folder ordner';
        } else {
          cl = 'fa-file datei';
        }
      } else {
        if(self.fr.isDirectory) {
          cl = 'fa-folder ordner';
        } else {
          cl = 'fa-file-o datei';
        }
      }
      htm = "i class='fa " + cl + " fa-3x'></i";
    }
    return htm;
  };
  */
  this.fileName = function() {
    var namen = self.fr.absolutePath.split('/');
    if(namen.length > 0) {
      return decodeURIComponent(namen[namen.length - 1]);
    } else {
      return decodeURIComponent(self.fr.absolutePath);
    }
  };
}