From fab80c872af697d61f200fd410a7ecc64ca0a537 Mon Sep 17 00:00:00 2001 From: ulrich <undisclosed> Date: Mon, 06 Mar 2017 22:59:47 +0000 Subject: [PATCH] dekodieren fuer Codemirror --- web/ui/ui.js | 36 ++++++++++++++++++++++++++++++++++-- 1 files changed, 34 insertions(+), 2 deletions(-) diff --git a/web/ui/ui.js b/web/ui/ui.js index 014e801..a05b1bb 100644 --- a/web/ui/ui.js +++ b/web/ui/ui.js @@ -129,7 +129,7 @@ selector: "textarea.text-editor", statusbar: false, menubar: false, - plugins: 'advlist charmap code image link lists media print preview save table textcolor', + plugins: 'advlist charmap code image link lists media print preview save table textcolor importcss', toolbar: 'undo redo | styleselect | image | link unlink | bullist numlist | outdent indent | code', /* menu: { @@ -139,6 +139,7 @@ }, */ resize: 'both', + importcss_append: true, width: "100%", height: '100%', document_base_url : base + "/", @@ -742,6 +743,10 @@ /* ---- codemirror editor handling -------- */ +function htmlDecode(value){ + return $('<div/>').html(value).text(); +} + function fm_code_edit(content, m) { cm = CodeMirror.fromTextArea(document.getElementById("editspace"), { lineNumbers: true, @@ -756,7 +761,9 @@ } } }); - cm.setValue(content); + //cm.setValue(htmlDecode(content)); + //cm.setValue(content); + cm.setValue(unescapeHtml(content)); } @@ -799,6 +806,31 @@ return '{"' + obj.constructor.name + '":' + JSON.stringify(obj) + '}'; } +function escapeHtml(text) { + text = text.replace(/\u228/g,'ä'); + text = text.replace(/\u246/g,'ö'); + text = text.replace(/\u252/g,'ü'); + text = text.replace(/\u196/g,'Ä'); + text = text.replace(/\u214/g,'Ö'); + text = text.replace(/\u220/g,'Ü'); + text = text.replace(/\u223/g,'ß'); + text = text.replace(/\u26/g,'&'); + return text; +} + +function unescapeHtml(text) { + text = text.replace(/ä/g, String.fromCharCode(228)); + text = text.replace(/ö/g, String.fromCharCode(246)); + text = text.replace(/ü/g, String.fromCharCode(252)); + text = text.replace(/Ä/g, String.fromCharCode(196)); + text = text.replace(/Ö/g, String.fromCharCode(214)); + text = text.replace(/Ü/g, String.fromCharCode(220)); + text = text.replace(/ß/g, String.fromCharCode(223)); + text = text.replace(/&/g, String.fromCharCode(26)); + return text; +} + + /* ----- Objekte ----- */ function FileList(fl) { -- Gitblit v1.9.3