Mercurial > lada > lada-client
annotate app/controller/Proben.js @ 123:d78bb4ca6089
Enabled accessing nested data in the grid through a renderer.
author | Torsten Irländer <torsten.irlaender@intevation.de> |
---|---|
date | Fri, 21 Jun 2013 17:41:16 +0200 |
parents | a7bfaeb1655d |
children | e80a9114524c |
rev | line source |
---|---|
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
1 Ext.define('Lada.controller.Proben', { |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
2 extend: 'Ext.app.Controller', |
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
|
3 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
|
4 '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
|
5 '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
|
6 ], |
13
a8efc4b96888
Added model for Proben and a Store.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
5
diff
changeset
|
7 stores: [ |
122
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
8 'Proben', |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
9 'Zusatzwerte' |
121
c05fda928b82
Cleanup part two. Reenabled Proben edit but one use minimum version of the probenedit. Move some stores to the combobox definitons
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
112
diff
changeset
|
10 // 'Orte', |
c05fda928b82
Cleanup part two. Reenabled Proben edit but one use minimum version of the probenedit. Move some stores to the combobox definitons
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
112
diff
changeset
|
11 // 'Messungen', |
c05fda928b82
Cleanup part two. Reenabled Proben edit but one use minimum version of the probenedit. Move some stores to the combobox definitons
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
112
diff
changeset
|
12 // 'Messeinheit', |
c05fda928b82
Cleanup part two. Reenabled Proben edit but one use minimum version of the probenedit. Move some stores to the combobox definitons
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
112
diff
changeset
|
13 // 'Probenzusatzwert' |
13
a8efc4b96888
Added model for Proben and a Store.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
5
diff
changeset
|
14 ], |
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
15 init: function() { |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
16 console.log('Initialising the Proben controller'); |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
17 this.control({ |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
18 // CSS like selector to select element in the viewport. See |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
19 // ComponentQuery documentation for more details. |
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
|
20 'probenlist': { |
5
039584709fa7
Map double click event on rows of the userlist to the editProben function.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
4
diff
changeset
|
21 itemdblclick: this.editProbe |
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
|
22 }, |
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
|
23 'probenlist toolbar button[action=add]': { |
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
|
24 click: this.addProbe |
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
|
25 }, |
70
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
26 'probencreate form': { |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
27 savesuccess: this.createSuccess, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
28 savefailure: this.createFailure |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
29 }, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
30 'probenedit form': { |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
31 savesuccess: this.editSuccess, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
32 savefailure: this.editFailure |
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
33 } |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
34 }); |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
35 }, |
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
|
36 addProbe: 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
|
37 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
|
38 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
|
39 }, |
5
039584709fa7
Map double click event on rows of the userlist to the editProben function.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
4
diff
changeset
|
40 editProbe: 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
|
41 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
|
42 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
|
43 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
|
44 |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
45 // Load Zusatzwerte |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
46 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
|
47 zstore.load({ |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
48 params: { |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
49 probe: id |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
50 } |
a7bfaeb1655d
Cleanup part three. Reenabled Zusatzwerte and implemented sending nested data.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
121
diff
changeset
|
51 }); |
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
|
52 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
|
53 }, |
69
cb1138f5cea7
Removed old code
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
65
diff
changeset
|
54 createSuccess: function(form, record, operation) { |
86
eb40b74f871a
Reload the store after the probe was created or edited.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
76
diff
changeset
|
55 // Reload store |
eb40b74f871a
Reload the store after the probe was created or edited.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
76
diff
changeset
|
56 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
|
57 store.reload(); |
69
cb1138f5cea7
Removed old code
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
65
diff
changeset
|
58 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
|
59 win.close(); |
70
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
60 }, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
61 createFailure: function(form, record, operation) { |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
62 Ext.MessageBox.show({ |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
63 title: 'Fehler beim Speichern', |
76
eb8a7d3cca89
Use translated message from server in error dialog
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
71
diff
changeset
|
64 msg: form.message, |
70
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
65 icon: Ext.MessageBox.ERROR, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
66 buttons: Ext.Msg.OK |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
67 }); |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
68 }, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
69 editSuccess: function(form, record, operation) { |
86
eb40b74f871a
Reload the store after the probe was created or edited.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
76
diff
changeset
|
70 // Reload store |
eb40b74f871a
Reload the store after the probe was created or edited.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
76
diff
changeset
|
71 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
|
72 store.reload(); |
70
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
73 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
|
74 win.close(); |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
75 }, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
76 editFailure: function(form, record, operation) { |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
77 Ext.MessageBox.show({ |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
78 title: 'Fehler beim Speichern', |
76
eb8a7d3cca89
Use translated message from server in error dialog
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
71
diff
changeset
|
79 msg: form.message, |
70
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
80 icon: Ext.MessageBox.ERROR, |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
81 buttons: Ext.Msg.OK |
1a943947a7d2
Added new listeners for events comming from the Probenforms.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
69
diff
changeset
|
82 }); |
1
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
83 } |
af8d7217521d
Added basic Proben controller.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
84 }); |