From 305573a68785ff329bc0f3c9b28ba738bcb58e46 Mon Sep 17 00:00:00 2001
From: ulrich <undisclosed>
Date: Mon, 27 Feb 2017 06:47:42 +0000
Subject: [PATCH] Einbau TinyMCE in Arbeit

---
 web/ui/ui.js |  125 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 117 insertions(+), 8 deletions(-)

diff --git a/web/ui/ui.js b/web/ui/ui.js
index e20c80b..db82e7a 100644
--- a/web/ui/ui.js
+++ b/web/ui/ui.js
@@ -20,12 +20,16 @@
 var pfad = '';
 var modus = 'kacheln';
 var openFileName = '';
+var ed;
+var t;
 
 function fm_init() {
+  $("#mce-editor").hide();
   $('.codeeditor-space').hide();
   $('.code-editor-container').hide();
   //$('.ost').attr('flex-basis', 0);
   $('#newTextFile').on('click', fm_menu_neue_textdatei);
+  $('#newDoc').on('click', fm_menu_neues_dokument);
   $('#newFolder').on('click', fm_get_new_folder);
   $('#editTextFile').on('click', fm_get_file_content);
   $('#saveFile').on('click', fm_menu_datei_speichern);
@@ -40,6 +44,82 @@
   fm_get_login();
   fm_get_list('');
   fm_init_uploader();
+  
+  /*
+   * Konfiguration TinyMCE
+   */
+  tinymce.init({
+    content_css : "mce.css",
+    selector: "textarea",
+    statusbar: false,
+    menubar: false,
+    plugins: 'autoresize advlist charmap code image link lists media print preview save table textcolor',
+    toolbar: 'undo redo | styleselect | outdent indent',
+    /*
+    menu: {
+      file: {title: 'File', items: 'savevers | exit'},
+      edit: {title: 'Edit', items: 'undo redo | cut copy paste pastetext | selectall'},
+      view: {title: 'View', items: 'visualaid | code | link image media | template hr'},
+    },
+    */
+    resize: true,
+    width: "100%",
+    height: '100%',
+    autoresize_bottom_margin : 1,
+    setup: function (editor) {
+      ed = editor;
+      //self.ed = editor;
+      /*
+      editor.addMenuItem('fileinfo', {
+        text: 'Toggle file info',
+        onclick: function () {
+          editor.insertContent('Toggle file info');
+          toggleFileInfo();
+        }
+      });
+      editor.addMenuItem('savevers', {
+        text: 'Speichern',
+        onclick: function () {
+          self.notizSpeichern();
+        }
+      });
+      editor.addMenuItem('exit', {
+        text: 'Exit',
+        onclick: function () {
+          self.editorBeenden();
+        }
+      });
+      */
+    }
+  });
+}
+
+function resizeEditor(myHeight) {
+  window.console.log('resizeEditor');
+  var myEditor = ed;
+  if (myEditor) {
+    try {
+      /*
+      if (!myHeight) {
+        var targetHeight = window.innerHeight; // Change this to the height of your wrapper element
+        var mce_bars_height = 0;
+        $('.mce-toolbar, .mce-statusbar, .mce-menubar').each(function () {
+          mce_bars_height += $(this).height();
+        });
+        window.console.log('mce bars height total: ' + mce_bars_height);
+        myHeight = targetHeight - mce_bars_height - 8;  // the extra 8 is for margin added between the toolbars
+      }
+      */
+      var myHeight = $('.zentrum').height() - $('.nord').height();
+      window.console.log('resizeEditor: ', myHeight);
+      myEditor.theme.resizeTo('100%', myHeight);  // sets the dimensions of the editable area
+    } catch (err) {
+    }
+  }
+}
+
+window.onresize = function() {
+    resizeEditor();
 }
 
 /* ----- Uploader Anfang ----------*/
@@ -142,14 +222,29 @@
   fm_text_edit('Neue Datei');
 }
 
+function fm_menu_neues_dokument() {
+  fm_filectls_hide();
+  $("#mce-editor").show();
+  resizeEditor();
+  /*
+  var ht = $(window).innerHeight() - 20;
+  window.clearTimeout(t);
+  t = window.setTimeout(function () {
+    $('.mce-editor').height(ht - 100);
+  }, 200);
+  */
+}
+
 function fm_menu_datei_schliessen() {
   $('.codeeditor-space').hide();
   $('.code-editor-container').hide();
-  cm.toTextArea();
-  $('#bcnav').show();
-  $('#dateien').show();
+  $("#mce-editor").hide();
+  if(cm !== undefined) {
+    cm.toTextArea();
+  }
   openFileName = '';
   fm_get_list(pfad);
+  fm_filectls_show();
 }
 
 function fm_dateiwahl(ev) {
@@ -221,13 +316,21 @@
 }
 
 function fm_text_edit(content) {
-  $('#bcnav').hide();
-  $('#dateien').hide();
+  fm_filectls_hide();
   $('.codeeditor-space').show();
   $('.code-editor-container').show();
   fm_code_edit(content);  
 }
 
+function fm_filectls_hide() {
+  $('#zentrum_bc').hide();
+  $('#dateien').hide();
+}
+
+function fm_filectls_show() {
+  $('#zentrum_bc').show();
+  $('#dateien').show();  
+}
 /* ----- API Calls ------------- */
 
 function fm_get_login() {
@@ -371,7 +474,7 @@
             dirList.push(new BcrFile(rp + '/' + dirs[dirs.length-1], dirs[dirs.length-1]));
             $.get('tpl-bcr2.txt', function(template) {
               $('#bcnav').append(Mustache.render(template, dirList[dirList.length-1]));  
-              $('#bcnav').append($('#tpl-bcr3').html());
+              fm_bcr_3();
               fm_bcr_end();
             });
             //template = $('#tpl-bcr2').html();
@@ -380,7 +483,7 @@
           } else {
             $.get('tpl-bcr2.txt', function(template) {
               $('#bcnav').append(Mustache.render(template, dirList[0]));
-              $('#bcnav').append($('#tpl-bcr3').html());
+              fm_bcr_3();
               fm_bcr_end();
             });
             //template = $('#tpl-bcr2').html();
@@ -418,7 +521,7 @@
       pfad = '';
       $.get('tpl-bcr2.txt', function(template) {
         $('#bcnav').append(Mustache.render(template, dirList[0]));
-        $('#bcnav').append($('#tpl-bcr3').html());
+        fm_bcr_3();
         fm_bcr_end();
       });
       //template = $('#tpl-bcr2').html();
@@ -457,6 +560,12 @@
 }
 */
 
+function fm_bcr_3() {
+  $.get('tpl-bcr3.txt', function(template) {
+    $('#bcnav').append(template);
+  });  
+}
+
 function fm_bcr_end() {
   $('.breadcrumb-item').click(fm_bc_click);
   $('#ansicht').click(fm_ansicht_umschalten);

--
Gitblit v1.9.3