var cm;
|
|
function fm_init() {
|
$('.codeeditor-space').hide();
|
$('.code-editor-container').hide();
|
$('#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');
|
})
|
fm_get_login();
|
}
|
|
function fm_menu_neue_textdatei() {
|
$('#dateiansicht').hide();
|
$('.codeeditor-space').show();
|
$('.code-editor-container').show();
|
fm_code_edit('Test');
|
}
|
|
function fm_menu_datei_schliessen() {
|
$('.codeeditor-space').hide();
|
$('.code-editor-container').hide();
|
cm.toTextArea();
|
$('#dateiansicht').show();
|
}
|
|
function fm_get_login() {
|
var m = '?c=de.uhilger.um.pub.SessionManager&m=getSessionUser';
|
var u = '../../um/pub' + m;
|
fm_get(u, function(resp) {
|
$('#userMenu').text(resp.UserData.firstName);
|
});
|
}
|
|
function fm_menu_datei_speichern() {
|
|
$('#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)
|
|
|
/*
|
var t = new Template(-2, $('#filename').val(), self.cm.getValue(), 3);
|
var u = '../api/tr/?c=de.uhilger.webbox.api.ContentApi&m=newTemplate';
|
self.post(u, {p: self.serialise(t)}, function (resp) {
|
self.isnew = false;
|
self.editid = resp.Template.id;
|
$('#contlist').append(self.buildContListItem(3, resp.Template.name, resp.Template.id));
|
$('#templateeditor').addClass('hidden');
|
});
|
*/
|
}
|
|
/* ---- codemirror editor handling -------- */
|
|
function fm_code_edit(content) {
|
//var windowHeight = $(window).height();
|
//$("editspace").empty();
|
//self.cm.toTextArea();
|
|
cm = CodeMirror.fromTextArea(document.getElementById("editspace"), {
|
lineNumbers: true,
|
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);
|
}
|
}
|
});
|
cm.setValue(content);
|
}
|
|
|
|
/* -------- helper functions ----------- */
|
|
function fm_get(u, scallback) {
|
$.ajax({
|
url: u,
|
type: "GET",
|
dataType: "json",
|
success: scallback,
|
error: function (xhr, status, errorThrown) {
|
alert("Error: " + errorThrown + " Status: " + status + " URL: " + u);
|
},
|
complete: function (xhr, status) {
|
//console.log( "The request is complete!" );
|
}
|
|
});
|
}
|
|
function fm_post(u, d, scallback) {
|
$.ajax({
|
url: u,
|
data: d,
|
type: "POST",
|
dataType: "json",
|
success: scallback,
|
error: function (xhr, status, errorThrown) {
|
$('#fehler').html("Error: " + errorThrown + " Status: " + status);
|
},
|
complete: function (xhr, status) {
|
//alert( "The request is complete!" );
|
}
|
});
|
}
|
|
function fm_serialise(obj) {
|
return '{"' + obj.constructor.name + '":' + JSON.stringify(obj) + '}';
|
}
|