Mercurial > lada > lada-client
diff app/controller/Kommentare.js @ 111:6273b73b4b27
Replaced Logic for Kommentare. Use copied code form Orte.
author | Torsten Irländer <torsten.irlaender@intevation.de> |
---|---|
date | Wed, 19 Jun 2013 14:11:35 +0200 |
parents | 84f32c62670f |
children | 7b1140bd8b3d |
line wrap: on
line diff
--- a/app/controller/Kommentare.js Wed Jun 19 14:10:54 2013 +0200 +++ b/app/controller/Kommentare.js Wed Jun 19 14:11:35 2013 +0200 @@ -2,7 +2,6 @@ extend: 'Ext.app.Controller', views: [ 'kommentare.List', - 'kommentare.Edit', 'kommentare.Create' ], stores: [ @@ -17,7 +16,6 @@ // CSS like selector to select element in the viewport. See // ComponentQuery documentation for more details. 'kommentarelist': { - // Map Doubleclick on rows of the probenlist. itemdblclick: this.editKommentar }, 'kommentarelist toolbar button[action=add]': { @@ -26,20 +24,24 @@ 'kommentarelist toolbar button[action=delete]': { click: this.deleteKommentar }, - 'kommentaredit button[action=save]': { - click: this.saveKommentar + 'kommentarecreate form': { + savesuccess: this.createSuccess, + savefailure: this.createFailure + }, + 'kommentareedit form': { + savesuccess: this.editSuccess, + savefailure: this.editFailure } }); }, addKommentar: function(button) { console.log('Adding new Kommentar'); - var view = Ext.create('Lada.view.kommentare.Create'); - var form = view.down('form'); - // Set probeId - var probenform = button.up('form'); - var probe = probenform.getRecord(); - var probeId = probe.get('probeId'); - form.model.set('probeId', probeId); + var view = Ext.widget('kommentarecreate'); + }, + editKommentar: function(grid, record) { + console.log('Editing Kommentar'); + var view = Ext.widget('kommentarecreate', {model: record}); + console.log("Loaded Kommentar with ID " + record.getId()); //outputs ID }, deleteKommentar: function(button) { // Get selected item in grid @@ -56,22 +58,34 @@ } }); }, - editKommentar: function(grid, record) { - // Create new window to edit the seletced record. - var view = Ext.widget('kommentaredit'); - var form = view.down('form'); - form.loadRecord(record); + createSuccess: function(form, record, operation) { + // Reload store + var store = this.getKommentareStore(); + store.reload(); + var win = form.up('window'); + win.close(); }, - saveKommentar: function(button) { - var win = button.up('window'); - var form = win.down('form'); - var record = form.getRecord(); - var values = form.getValues(); + createFailure: function(form, record, operation) { + Ext.MessageBox.show({ + title: 'Fehler beim Speichern', + msg: form.message, + icon: Ext.MessageBox.ERROR, + buttons: Ext.Msg.OK + }); + }, + editSuccess: function(form, record, operation) { + // Reload store var store = this.getKommentareStore(); - record.set(values); - store.add(record); - store.sync(); - console.log('Saving Kommentar'); + store.reload(); + var win = form.up('window'); win.close(); + }, + editFailure: function(form, record, operation) { + Ext.MessageBox.show({ + title: 'Fehler beim Speichern', + msg: form.message, + icon: Ext.MessageBox.ERROR, + buttons: Ext.Msg.OK + }); } });