From e6c850b5714551cffdc0eaeacbf08703d969fad1 Mon Sep 17 00:00:00 2001 From: ulrich <not disclosed> Date: Sat, 06 Jan 2018 18:08:59 +0000 Subject: [PATCH] Sender in Bearbeitungsformular übernehmen --- app.js | 74 ++++++++++++++++++++++++++++++++---- 1 files changed, 65 insertions(+), 9 deletions(-) diff --git a/app.js b/app.js index abef0d2..842cccd 100644 --- a/app.js +++ b/app.js @@ -3,18 +3,28 @@ var TPL_SENDER = 'sender'; var TPL_DLG_MSG = 'dlg-msg'; var TPL_DLG_INFO = 'dlg-info'; -var TPL_DLG_SENDER = 'dlg-sender'; +var TPL_DLG_SENDER_NEU = 'dlg-sender-neu'; +var TPL_DLG_SENDER_EDIT = 'dlg-sender-edit'; +var TPL_SENDER_EDIT_FORM = 'sender-edit-form'; var templateCache = {}; // mustache templates var prefsRendered = false; +var senderKlickModus = "0"; // 1=abspielen, 2=bearbeiten, 3=loeschen function app_init() { $('.dialog').hide(); $('.ost').hide(); - app_menu_init("data/menu/", "hauptmenue.json", "../jslib/app-menu/app-menu.tpl", ".west", "8em"); + app_menu_init( + "data/menu/", + "hauptmenue.json", + "../jslib/app-menu/app-menu.tpl", + ".west", + "8em"); app_get_template('data/tpl/dlg-msg.tpl', TPL_DLG_MSG); app_get_template('data/tpl/dlg-info.tpl', TPL_DLG_INFO); app_get_template('data/tpl/sender.tpl', TPL_SENDER); - app_get_template('data/tpl/dlg-sender-edit.tpl', TPL_DLG_SENDER); + app_get_template('data/tpl/dlg-sender-neu.tpl', TPL_DLG_SENDER_NEU); + app_get_template('data/tpl/dlg-sender-edit.tpl', TPL_DLG_SENDER_EDIT); + app_get_template('data/tpl/dlg-sender-edit-form.tpl', TPL_SENDER_EDIT_FORM); //app_get_template('tpl/prefs.tpl', 'prefs'); $('.sued').text('Bereit.'); setTimeout(function() { @@ -25,7 +35,8 @@ /* --- Menüfunktionen --- */ function app_nachricht_test() { - app_dialog_laden_und_zeigen(templateCache[TPL_DLG_MSG], 'data/msg-test.json'); + app_dialog_laden_und_zeigen( + templateCache[TPL_DLG_MSG], 'data/msg-test.json'); app_menu_toggle(); } @@ -35,9 +46,9 @@ } function app_neuer_sender() { - app_dialog_laden_und_zeigen(templateCache[TPL_DLG_SENDER], ''); + app_dialog_laden_und_zeigen(templateCache[TPL_DLG_SENDER_NEU], ''); $('#sender-speichern').on('click', function() { - $('#sender-speichern').attr('onclick','').unbind('click'); + $('#sender-speichern').off('click'); app_dialog_schliessen(); app_meldung_mit_timeout('Speichern gewaehlt', 1500); }); @@ -45,11 +56,14 @@ } function app_sender_bearbeiten() { - app_meldung_mit_timeout('Nicht implementiert: Sender bearbeiten.', 1500); + senderKlickModus = "2"; // bearbeiten + app_dialog_laden_und_zeigen(templateCache[TPL_DLG_SENDER_EDIT], ''); + app_menu_toggle(); } function app_sender_loeschen() { app_meldung_mit_timeout('Nicht implementiert: Sender loeschen.', 1500); + app_menu_toggle(); } /* --- Dialogfunktionen --- */ @@ -63,7 +77,8 @@ } function app_dialog_schliessen() { - $('.close-btn').attr('onclick','').unbind('click'); + senderKlickModus = "0"; + $('.close-btn').off('click'); $('.dialog').slideUp(300); } @@ -90,7 +105,39 @@ type: "GET", dataType : "json" }).done(function( senderliste ) { - $(".sender-behaelter").html(Mustache.render(templateCache[TPL_SENDER], senderliste)); + $(".sender-kachel").off("click"); + $(".sender-behaelter").html( + Mustache.render(templateCache[TPL_SENDER], senderliste)); + $('.sender-kachel').on('click', function() { + var kachel = $( this ); + var senderId = $(kachel).attr("sid"); + var senderName = $(kachel).find(".sender-name").text(); + var senderUrl = $(kachel).attr("data-verweis"); + var senderLogo = $(kachel).find("img").attr("src"); + var s = new Sender(senderId, senderName, senderUrl, senderLogo); + switch (senderKlickModus) { + case "1": + break; + case "2": + $(".dlg-behaelter").html( + Mustache.render(templateCache[TPL_SENDER_EDIT_FORM], s) + ); + $('#sender-speichern').on('click', function() { + $('#sender-speichern').off('click'); + app_dialog_schliessen(); + app_meldung_mit_timeout('Speichern gewaehlt', 1500); + }); + break; + case "3": + break; + default: + app_meldung_mit_timeout( + 'Sender ' + s.name + ', ID ' + s.id, + 1500 + ); + break; + } + }); }); } @@ -122,3 +169,12 @@ templateCache[tname] = template; }); } + +/* Objekte */ + +function Sender(i, n, u, l) { + this.id = i; + this.name = n; + this.url = u; + this.logo = l; +} -- Gitblit v1.9.3