Mercurial > lada > lada-client
annotate app/controller/Messungen.js @ 134:1620d02d2973
Reset idProperty to probeId again as it seems the the submitted data will have
an autogenerated id property "id" in the other case which causes problems on
the server side.
author | Torsten Irländer <torsten.irlaender@intevation.de> |
---|---|
date | Tue, 25 Jun 2013 17:33:56 +0200 |
parents | 6c69bbb61c65 |
children | 237a4efe715a |
rev | line source |
---|---|
108
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
1 Ext.define('Lada.controller.Messungen', { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
2 extend: 'Ext.app.Controller', |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
3 views: [ |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
4 'messungen.List', |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
5 'messungen.Create' |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
6 ], |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
7 stores: [ |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
8 ], |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
9 models: [ |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
10 'Zusatzwert' |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
11 ], |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
12 init: function() { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
13 console.log('Initialising the Messungen controller'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
14 this.control({ |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
15 // CSS like selector to select element in the viewpzusatzwert. See |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
16 // ComponentQuery documentation for more details. |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
17 'messungenlist': { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
18 itemdblclick: this.editZusatzwert |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
19 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
20 'messungenlist toolbar button[action=add]': { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
21 click: this.addZusatzwert |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
22 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
23 'messungenlist toolbar button[action=delete]': { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
24 click: this.deleteZusatzwert |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
25 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
26 'messungencreate form': { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
27 savesuccess: this.createSuccess, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
28 savefailure: this.createFailure |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
29 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
30 'messungenedit form': { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
31 savesuccess: this.editSuccess, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
32 savefailure: this.editFailure |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
33 } |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
34 }); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
35 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
36 addZusatzwert: function(button) { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
37 console.log('Adding new Zusatzwert'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
38 var view = Ext.widget('messungencreate'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
39 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
40 editZusatzwert: function(grid, record) { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
41 console.log('Editing Zusatzwert'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
42 var view = Ext.widget('messungencreate', {model: record}); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
43 console.log("Loaded Zusatzwert with ID " + record.getId()); //outputs ID |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
44 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
45 deleteZusatzwert: function(button) { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
46 // Get selected item in grid |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
47 var grid = button.up('grid'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
48 var selection = grid.getView().getSelectionModel().getSelection()[0]; |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
49 Ext.MessageBox.confirm('Löschen', 'Sind Sie sicher?', function(btn){ |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
50 if(btn === 'yes'){ |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
51 var store = grid.getStore(); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
52 store.remove(selection); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
53 store.sync(); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
54 console.log('Deleting Kommentar'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
55 } else { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
56 console.log('Cancel Deleting Kommentar'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
57 } |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
58 }); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
59 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
60 createSuccess: function(form, record, operation) { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
61 // Reload store |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
62 var store = this.getMessungenStore(); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
63 store.reload(); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
64 var win = form.up('window'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
65 win.close(); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
66 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
67 createFailure: function(form, record, operation) { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
68 Ext.MessageBox.show({ |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
69 title: 'Fehler beim Speichern', |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
70 msg: form.message, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
71 icon: Ext.MessageBox.ERROR, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
72 buttons: Ext.Msg.OK |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
73 }); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
74 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
75 editSuccess: function(form, record, operation) { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
76 // Reload store |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
77 var store = this.getMessungenStore(); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
78 store.reload(); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
79 var win = form.up('window'); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
80 win.close(); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
81 }, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
82 editFailure: function(form, record, operation) { |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
83 Ext.MessageBox.show({ |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
84 title: 'Fehler beim Speichern', |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
85 msg: form.message, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
86 icon: Ext.MessageBox.ERROR, |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
87 buttons: Ext.Msg.OK |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
88 }); |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
89 } |
6c69bbb61c65
Added Forms to add Messungen
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
90 }); |