Mercurial > lada > lada-client
annotate app/controller/Proben.js @ 343:eccf58d3b106
Added documentation
author | Torsten Irländer <torsten.irlaender@intevation.de> |
---|---|
date | Tue, 13 Aug 2013 11:19:14 +0200 |
parents | bd77b6055791 |
children | 94884cd8f8c0 |
rev | line source |
---|---|
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
1 /** |
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
2 * Controller for Proben |
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
3 */ |
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
4 Ext.define('Lada.controller.Proben', { |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
5 extend: 'Lada.controller.Base', |
4
b8e56e880f02
Added a first example view (userlisting) from the EXJS Tutorial. Need to be
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
1
diff
changeset
|
6 views: [ |
65
9e2e09e819fd
Added a new Dialog to create proben without any kommentare or other additional
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
64
diff
changeset
|
7 'proben.Edit', |
9e2e09e819fd
Added a new Dialog to create proben without any kommentare or other additional
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
64
diff
changeset
|
8 'proben.Create' |
4
b8e56e880f02
Added a first example view (userlisting) from the EXJS Tutorial. Need to be
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
1
diff
changeset
|
9 ], |
13
a8efc4b96888
Added model for Proben and a Store.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
5
diff
changeset
|
10 stores: [ |
122
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
11 'Proben', |
135
e80a9114524c
Load Probenzusatzwerte on editing a Probe. Values are needed in the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
122
diff
changeset
|
12 'Zusatzwerte', |
144
7b1140bd8b3d
Re-Added Kommentare
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
141
diff
changeset
|
13 'Probenzusatzwerte', |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
14 'Kommentare', |
157
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
15 'Orte', |
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
16 'Messungen' |
13
a8efc4b96888
Added model for Proben and a Store.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
5
diff
changeset
|
17 ], |
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
18 init: function() { |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
19 console.log('Initialising the Proben controller'); |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
20 this.callParent(); |
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
21 }, |
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
22 addListeners: function() { |
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
23 this.control({ |
18
9e1a40312bbe
Implemented a basic edit dialog. Data will be set to data/proben2.json url
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
13
diff
changeset
|
24 'probenlist': { |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
25 itemdblclick: this.editItem |
18
9e1a40312bbe
Implemented a basic edit dialog. Data will be set to data/proben2.json url
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
13
diff
changeset
|
26 }, |
64
a4a24e737deb
Added listener to open a new window to enter data fpr the new probe.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
54
diff
changeset
|
27 'probenlist toolbar button[action=add]': { |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
28 click: this.addItem |
64
a4a24e737deb
Added listener to open a new window to enter data fpr the new probe.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
54
diff
changeset
|
29 }, |
270
0d6552bb28ea
Add cancel Button to the editproben window and only show save button if the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
256
diff
changeset
|
30 'probencreate button[action=save]': { |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
31 click: this.saveItem |
270
0d6552bb28ea
Add cancel Button to the editproben window and only show save button if the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
256
diff
changeset
|
32 }, |
0d6552bb28ea
Add cancel Button to the editproben window and only show save button if the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
256
diff
changeset
|
33 'probenedit button[action=save]': { |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
34 click: this.saveItem |
270
0d6552bb28ea
Add cancel Button to the editproben window and only show save button if the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
256
diff
changeset
|
35 }, |
70
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
36 'probencreate form': { |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
37 savesuccess: this.createSuccess, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
38 savefailure: this.createFailure |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
39 }, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
40 'probenedit form': { |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
41 savesuccess: this.editSuccess, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
42 savefailure: this.editFailure |
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
43 } |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
44 }); |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
45 }, |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
46 addItem: function(button) { |
71
db26aeebe521
Added new Form for editing proben. Use this form in the edit window.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
70
diff
changeset
|
47 console.log('Adding new Probe'); |
65
9e2e09e819fd
Added a new Dialog to create proben without any kommentare or other additional
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
64
diff
changeset
|
48 var view = Ext.widget('probencreate'); |
64
a4a24e737deb
Added listener to open a new window to enter data fpr the new probe.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
54
diff
changeset
|
49 }, |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
50 editItem: function(grid, record) { |
71
db26aeebe521
Added new Form for editing proben. Use this form in the edit window.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
70
diff
changeset
|
51 console.log('Editing Probe'); |
db26aeebe521
Added new Form for editing proben. Use this form in the edit window.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
70
diff
changeset
|
52 var id = record.get('probeId'); |
db26aeebe521
Added new Form for editing proben. Use this form in the edit window.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
70
diff
changeset
|
53 var view = Ext.widget('probenedit', {modelId: id}); |
122
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
54 |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
55 // Load Zusatzwerte |
135
e80a9114524c
Load Probenzusatzwerte on editing a Probe. Values are needed in the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
122
diff
changeset
|
56 var pstore = this.getProbenzusatzwerteStore(); |
e80a9114524c
Load Probenzusatzwerte on editing a Probe. Values are needed in the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
122
diff
changeset
|
57 pstore.load(); |
122
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
58 var zstore = this.getZusatzwerteStore(); |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
59 zstore.load({ |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
60 params: { |
139
df6e36dd57ee
Changed params probe -> probeId, mst -> mstId, uwb -> umwId
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
135
diff
changeset
|
61 probeId: id |
122
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
62 } |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
63 }); |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
64 // Load Kommentare |
144
7b1140bd8b3d
Re-Added Kommentare
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
141
diff
changeset
|
65 var kstore = this.getKommentareStore(); |
7b1140bd8b3d
Re-Added Kommentare
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
141
diff
changeset
|
66 kstore.load({ |
7b1140bd8b3d
Re-Added Kommentare
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
141
diff
changeset
|
67 params: { |
7b1140bd8b3d
Re-Added Kommentare
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
141
diff
changeset
|
68 probeId: id |
7b1140bd8b3d
Re-Added Kommentare
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
141
diff
changeset
|
69 } |
7b1140bd8b3d
Re-Added Kommentare
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
141
diff
changeset
|
70 }); |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
71 // Load Orte |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
72 var ostore = this.getOrteStore(); |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
73 ostore.load({ |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
74 params: { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
75 probeId: id |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
76 } |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
144
diff
changeset
|
77 }); |
157
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
78 // Load Orte |
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
79 var mstore = this.getMessungenStore(); |
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
80 mstore.load({ |
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
81 params: { |
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
82 probeId: id |
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
83 } |
237a4efe715a
Enabled loading Messungen.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
84 }); |
71
db26aeebe521
Added new Form for editing proben. Use this form in the edit window.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
70
diff
changeset
|
85 console.log("Loaded Probe with ID " + record.getId()); //outputs ID |
18
9e1a40312bbe
Implemented a basic edit dialog. Data will be set to data/proben2.json url
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
13
diff
changeset
|
86 }, |
255
82118c01bc52
#57: Open Edit-Dialog after creating a new Probe.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
157
diff
changeset
|
87 createSuccess: function(form, record, response) { |
256
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
88 // Close Createdialog |
69
cb1138f5cea7
Removed old code
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
65
diff
changeset
|
89 var win = form.up('window'); |
18
9e1a40312bbe
Implemented a basic edit dialog. Data will be set to data/proben2.json url
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
13
diff
changeset
|
90 win.close(); |
256
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
91 // Reload store |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
92 var store = this.getProbenStore(); |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
93 store.reload({ |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
94 scope: this, |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
95 callback: function(records, operation, success) { |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
96 console.log('Reloaded store'); |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
97 // Open Editdialog |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
98 var json = Ext.decode(response.responseText); |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
99 if (json) { |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
100 var probeId = json.data.probeId; |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
101 var probe = store.findRecord("probeId", probeId); |
293
bd77b6055791
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
270
diff
changeset
|
102 this.editItem(null, probe); |
256
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
103 } |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
104 } |
d8993f5b96e8
Added a possible fix for issue57. After the create dialog is closed the edit
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
255
diff
changeset
|
105 }); |
70
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
106 }, |
255
82118c01bc52
#57: Open Edit-Dialog after creating a new Probe.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
157
diff
changeset
|
107 editSuccess: function(form, record, response) { |
86
eb40b74f871a
Reload the store after the probe was created or edited.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
76
diff
changeset
|
108 // Reload store |
eb40b74f871a
Reload the store after the probe was created or edited.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
76
diff
changeset
|
109 var store = this.getProbenStore(); |
eb40b74f871a
Reload the store after the probe was created or edited.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
76
diff
changeset
|
110 store.reload(); |
70
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
111 var win = form.up('window'); |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
112 win.close(); |
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
113 } |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
114 }); |