From 9159275f8efe97da69e138ef3378931181447370 Mon Sep 17 00:00:00 2001 From: ulrich <not disclosed> Date: Sat, 18 Feb 2017 16:04:10 +0000 Subject: [PATCH] Textdatei speichern implementiert --- web/WEB-INF/web.xml | 12 ++++++ web/ui/index.html | 22 +++++++++++ src/java/de/uhilger/filecms/api/FileMgr.java | 3 + web/ui/ui.js | 46 +++++++++++++++-------- 4 files changed, 66 insertions(+), 17 deletions(-) diff --git a/src/java/de/uhilger/filecms/api/FileMgr.java b/src/java/de/uhilger/filecms/api/FileMgr.java index 31e1ac1..d39ab79 100644 --- a/src/java/de/uhilger/filecms/api/FileMgr.java +++ b/src/java/de/uhilger/filecms/api/FileMgr.java @@ -102,12 +102,13 @@ File saveDir = new File(userDir, relPath); File targetFile = new File(saveDir, fileName); if(!targetFile.exists()) { - targetFile.mkdirs(); + targetFile.getParentFile().mkdirs(); targetFile.createNewFile(); FileWriter w = new FileWriter(targetFile); w.write(contents); w.flush(); w.close(); + savedFile = new FileRef(targetFile.getAbsolutePath(), targetFile.isDirectory(), targetFile.isHidden(), targetFile.lastModified(), targetFile.length()); } } } catch (IOException ex) { diff --git a/web/WEB-INF/web.xml b/web/WEB-INF/web.xml index dc82706..2749043 100644 --- a/web/WEB-INF/web.xml +++ b/web/WEB-INF/web.xml @@ -14,10 +14,22 @@ <param-value>de.uhilger.filecms.api</param-value> </init-param> </servlet> + <servlet> + <servlet-name>Transit</servlet-name> + <servlet-class>de.uhilger.transit.web.TransitServlet</servlet-class> + <init-param> + <param-name>klassen</param-name> + <param-value>de.uhilger.filecms.api</param-value> + </init-param> + </servlet> <servlet-mapping> <servlet-name>TransitRS</servlet-name> <url-pattern>/rpc/*</url-pattern> </servlet-mapping> + <servlet-mapping> + <servlet-name>Transit</servlet-name> + <url-pattern>/svc</url-pattern> + </servlet-mapping> <session-config> <session-timeout> 30 diff --git a/web/ui/index.html b/web/ui/index.html index 9831d98..5603b59 100644 --- a/web/ui/index.html +++ b/web/ui/index.html @@ -135,6 +135,28 @@ </div> <!-- Dateikacheln Ende --> </div> + + <!-- Modal --> + <div class="modal fade" id="saveModal"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title">Modal title</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">×</span> + </button> + </div> + <div class="modal-body"> + <p>Dateiname?</p> + <input class="form-control eingabe" type="text" size="20" maxlength="250" placeholder="Dateiname" name="dateiname" id="dateiname"> + </div> + <div class="modal-footer"> + <button id="modal_ok" type="button" class="btn btn-primary" data-dismiss="modal">Speichern</button> + <button id="modal_cancel" type="button" class="btn btn-secondary" data-dismiss="modal">Abbrechen</button> + </div> + </div> + </div> + </div> <!-- Modal Ende --> </div> <!-- oestliche Seitenleiste --> <!-- diff --git a/web/ui/ui.js b/web/ui/ui.js index 10cf3fc..96ebdd0 100644 --- a/web/ui/ui.js +++ b/web/ui/ui.js @@ -6,6 +6,9 @@ $('#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(); } @@ -32,8 +35,23 @@ } function fm_menu_datei_speichern() { - // FileRef saveTextFile(String relPath, String fileName, String contents) + $('#modal_ok').click(function() { + // hier speichern + alert("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) /* @@ -51,8 +69,7 @@ /* ---- codemirror editor handling -------- */ function fm_code_edit(content) { - var windowHeight = $(window).height(); - + //var windowHeight = $(window).height(); //$("editspace").empty(); //self.cm.toTextArea(); @@ -61,19 +78,16 @@ 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); - -}; +} @@ -93,7 +107,7 @@ } }); -}; +} function fm_post(u, d, scallback) { $.ajax({ @@ -109,9 +123,9 @@ //alert( "The request is complete!" ); } }); -}; +} function fm_serialise(obj) { return '{"' + obj.constructor.name + '":' + JSON.stringify(obj) + '}'; -}; +} -- Gitblit v1.9.3