Dateiverwaltung für die WebBox
ulrich
2017-02-19 b7475d69c0d52f1639a13fae0afc617767852173
web/ui/ui.js
@@ -6,6 +6,10 @@
  $('#newTextFile').on('click', fm_menu_neue_textdatei);
  $('#saveFile').on('click', fm_menu_datei_speichern);
  $('#closeFile').on('click', fm_menu_datei_schliessen);
  $('#myModal').on('hidden.bs.modal', function (e) {
    $('#modal_ok').attr('onclick','').unbind('click');
  });
  $('#logout').click(fm_logout);
  fm_get_login();
}
@@ -23,17 +27,33 @@
  $('#dateiansicht').show();  
}
/* ----- API Calls ------------- */
function fm_get_login() {
  var m = '?c=de.uhilger.um.pub.SessionManager&m=getSessionUser';
  var u = '../../um/pub' + m;
  fm_get(u, function(resp) {
  fm_get(u, "json", function(resp) {
    $('#userMenu').text(resp.UserData.firstName);
  });  
}
function fm_menu_datei_speichern() {
  // FileRef saveTextFile(String relPath, String fileName, String contents)
  
  $('#modal_ok').click(function() {
    // hier speichern
    var m = '?c=de.uhilger.filecms.api.FileMgr&m=saveTextFile';
    var u = '../svc' + m;
    fm_post(u, {p1: '', p2: $('#dateiname').val(), p3: cm.getValue()}, function(resp) {
    });
  });
  $('#saveModal').modal({
    keyboard: false,
    show: true
  });
  // FileRef saveTextFile(String relPath, String fileName, String contents)
  
  
  /*
@@ -48,11 +68,21 @@
  */
}
function fm_logout() {
  var m = '?c=de.uhilger.filecms.pub.SessionManager&m=expireSession';
  var u = '../pub' + m;
  fm_get(u, "text", function(resp) {
    $('#userMenu').text('nicht angemeldet');
    window.location.href = '../logout.html';
  });
}
/* ---- codemirror editor handling -------- */
function fm_code_edit(content) {
  var windowHeight = $(window).height();
  //var windowHeight = $(window).height();
  //$("editspace").empty();
  //self.cm.toTextArea();
@@ -61,29 +91,26 @@
    mode: "xml",
    viewportMargin : Infinity,
    extraKeys: {
           "F9": function(cm) {
             cm.setOption("fullScreen", !cm.getOption("fullScreen"));
           },
           "Esc": function(cm) {
             if (cm.getOption("fullScreen")) cm.setOption("fullScreen", false);
          }
        "F9": function(cm) {
        cm.setOption("fullScreen", !cm.getOption("fullScreen"));
      },
        "Esc": function(cm) {
        if (cm.getOption("fullScreen")) cm.setOption("fullScreen", false);
      }
    }
  });
  // cm.setSize("100%", windowHeight - 100); // w, h
  cm.setValue(content);
};
}
/* -------- helper functions ----------- */
function fm_get(u, scallback) {
function fm_get(u, dtype, scallback) {
  $.ajax({
    url: u,
    type: "GET",
    dataType: "json",
    dataType: dtype,
    success: scallback,
    error: function (xhr, status, errorThrown) {
      alert("Error: " + errorThrown + " Status: " + status + " URL: " + u);
@@ -93,7 +120,7 @@
    }
  });
};
}
function fm_post(u, d, scallback) {
  $.ajax({
@@ -109,9 +136,9 @@
      //alert( "The request is complete!" );
    }
  });
};
}
function fm_serialise(obj) {
  return '{"' + obj.constructor.name + '":' + JSON.stringify(obj) + '}';
};
}