Mercurial > lada > lada-client
annotate app/controller/form/Ortszuordnung.js @ 1289:bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
author | Maximilian Krambach <mkrambach@intevation.de> |
---|---|
date | Wed, 01 Feb 2017 14:52:51 +0100 |
parents | 08085b7d1d0b |
children | e9f812528324 |
rev | line source |
---|---|
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
3 * |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 */ |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
8 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
9 /* |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
10 * This is a controller for an Ortszuordnung Form |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
11 */ |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
12 Ext.define('Lada.controller.form.Ortszuordnung', { |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 extend: 'Ext.app.Controller', |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
15 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
16 * Initialize the Controller with 4 listeners |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
17 */ |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
18 init: function() { |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 this.control({ |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
20 'ortszuordnungform button[action=setOrt]': { |
1274
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
21 toggle: this.chooseLocation |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
22 }, |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
23 'ortszuordnungform button[action=save]': { |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 click: this.save |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 }, |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
26 'ortszuordnungform button[action=discard]': { |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 click: this.discard |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
28 }, |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
29 'ortszuordnungform': { |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
30 validitychange: this.validityChange, |
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
31 dirtychange: this.validityChange |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 } |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 }); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 }, |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
36 /** |
972
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
742
diff
changeset
|
37 * The save function saves the content of the Ort form. |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
38 * On success it will reload the Store, |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
39 * on failure, it will display an Errormessage |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
40 */ |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
41 save: function(button) { |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
42 |
1022
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
43 var formPanel = button.up('ortszuordnungform'); |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
44 |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
45 //try to disable ortPickerButton: |
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
46 try { |
1022
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
47 formPanel.down('button[action=setOrt]').toggle(false); |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
48 } |
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
49 catch (e) { |
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
50 } |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
51 var data = formPanel.getForm().getFieldValues(false); |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
52 var i18n = Lada.getApplication().bundle; |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
53 //TODO: the forms seem not to submit anything into record. |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
54 var recordData = formPanel.getForm().getRecord().data; |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
55 if (recordData['probeId'] !== undefined) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
56 // TODO: as model.ort.ortId and model.ortszuordnung.ortId coexist, |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
57 // but mean different things, data.ortId is an array here, of |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
58 // which we need the first entry |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
59 recordData.ortId = data.ortId[0]; |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
60 recordData.ortszuordnungTyp = data.ortszuordnungTyp; |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
61 } else { //messprogramm |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
62 recordData.ortsTyp = data.ortsTyp; |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
63 recordData.ort = data.ort; |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
64 } |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
65 recordData.ortszusatztext = data.ortszusatztext; |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
66 if (!data.letzteAenderung) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
67 recordData.letzteAenderung = new Date(); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
68 } else { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
69 recordData.letzteAenderung = data.letzteAenderung; |
972
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
742
diff
changeset
|
70 } |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
71 formPanel.getForm().getRecord().save({ |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
72 success: function(record, response) { |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 var json = Ext.decode(response.response.responseText); |
641
5b5bba1d8e6a
Load and update the correct orte form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
615
diff
changeset
|
74 if (json) { |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
75 button.setDisabled(true); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
76 button.up('toolbar').down('button[action=discard]') |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
77 .setDisabled(true); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
78 formPanel.clearMessages(); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
79 formPanel.setRecord(record); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
80 formPanel.setMessages(json.errors, json.warnings); |
1134
f1d21e6a7449
Fixed adding new ortszuortnung for probe objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1028
diff
changeset
|
81 formPanel.up('window').parentWindow.initData(); |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
82 } |
1022
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
83 //try to refresh the Grid of the Probe |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
84 try { |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
85 formPanel.up('window').parentWindow |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
86 .down('ortszuordnunggrid').store.reload(); |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
87 } |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
88 catch (e) { |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
89 |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
90 } |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
91 }, |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
92 failure: function(record, response) { |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
93 button.setDisabled(true); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
94 button.up('toolbar').down('button[action=discard]') |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
95 .setDisabled(true); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
96 formPanel.getForm().loadRecord(formPanel.getForm().getRecord()); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
97 var json = response.request.scope.reader.jsonData; |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
98 if (json) { |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
99 if(Object.keys(json.errors).length > 0 || |
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
100 Object.keys(json.warnings).length > 0) { |
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
101 |
695
d6ef146e1a9f
Added simple handling for Failure-Messages
Dustin Demuth <dustin@intevation.de>
parents:
644
diff
changeset
|
102 formPanel.setMessages(json.errors, json.warnings); |
d6ef146e1a9f
Added simple handling for Failure-Messages
Dustin Demuth <dustin@intevation.de>
parents:
644
diff
changeset
|
103 } |
d6ef146e1a9f
Added simple handling for Failure-Messages
Dustin Demuth <dustin@intevation.de>
parents:
644
diff
changeset
|
104 |
d6ef146e1a9f
Added simple handling for Failure-Messages
Dustin Demuth <dustin@intevation.de>
parents:
644
diff
changeset
|
105 if(json.message){ |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
106 Ext.Msg.alert(i18n.getMsg('err.msg.save.title') |
701
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
695
diff
changeset
|
107 +' #'+json.message, |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
108 i18n.getMsg(json.message)); |
701
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
695
diff
changeset
|
109 } else { |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
110 Ext.Msg.alert(i18n.getMsg('err.msg.save.title'), |
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
111 i18n.getMsg('err.msg.generic.body')); |
695
d6ef146e1a9f
Added simple handling for Failure-Messages
Dustin Demuth <dustin@intevation.de>
parents:
644
diff
changeset
|
112 } |
701
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
695
diff
changeset
|
113 } else { |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
114 Ext.Msg.alert(i18n.getMsg('err.msg.save.title'), |
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
115 i18n.getMsg('err.msg.response.body')); |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
116 } |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
117 } |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
118 }); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
119 }, |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
120 |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
121 /** |
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
122 * The discard function resets the Location form |
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
123 * to its original state. |
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
124 */ |
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
125 discard: function(button) { |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
126 var formPanel = button.up('form'); |
1022
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
127 var record = formPanel.getForm().getRecord(); |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
128 formPanel.getForm().loadRecord(record); |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
129 try { |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
130 if (record.get('ortId') !== undefined) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
131 formPanel.setOrt(record.get('ortId')); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
132 } else { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
133 formPanel.setOrt(record.get('ort')); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
134 } |
1022
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
135 formPanel.down('button[action=setOrt]').toggle(false); |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
136 } |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
137 catch (e) { |
6d33a84979e4
More work on the Ortszuordnung grid. Saving does not work yet
Dustin Demuth <dustin@intevation.de>
parents:
1021
diff
changeset
|
138 } |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
139 }, |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
140 |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
141 /** |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
142 * When the button is Active, a Record can be selected. |
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
143 * If the Record was selected from a grid this function |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
144 * sets the ortzuordnung. |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
145 */ |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
146 chooseLocation: function(button, pressed, opts) { |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
147 var i18n = Lada.getApplication().bundle; |
1274
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
148 var win = button.up('window'); |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
149 var gridPanel = win.down('panel[name=ortgrid]'); |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
150 var osg = win.down('ortstammdatengrid'); |
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
151 var oForm = button.up('form'); |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
152 osg.addListener('select',oForm.setOrt, oForm); |
1274
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
153 if (pressed) { |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
154 win.setHeight(Ext.getBody().getViewSize().height - 50); |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
155 button.setText(i18n.getMsg('ortszuordnung.form.setOrt.pressed')); |
1274
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
156 win.setY(25); |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
157 gridPanel.show(); |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
158 osg.addListener('select',oForm.setOrt, oForm); |
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
159 |
1274
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
160 } |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
161 else { |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
162 var y = (Ext.getBody().getViewSize().height - 465) / 2 |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
163 win.setHeight(465); |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
164 win.setY(y); |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
165 button.setText(i18n.getMsg('ortszuordnung.form.setOrt')); |
1274
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
166 gridPanel.hide(); |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
167 osg.removeListener('select',oForm.setOrt, oForm); |
1274
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
168 } |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
169 }, |
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1147
diff
changeset
|
170 |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1013
diff
changeset
|
171 /** |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
172 * The validitychange function enables or disables the save and discard |
1013
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
173 * button which are present in the toolbar of the form. |
75ce503ab296
Added a Ortszuordnungwindow and Form
Dustin Demuth <dustin@intevation.de>
parents:
972
diff
changeset
|
174 */ |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
175 validityChange: function(form, valid) { |
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
176 if (form.isDirty()) { |
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
177 form.owner.down('button[action=discard]').setDisabled(false); |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
178 if (valid) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
179 if (form.getValues().ortId !== '' |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
180 && /[UEZA]/.test(form.getValues().ortszuordnungTyp)) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
181 // valid ortzuordnung(Probe) |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
182 form.owner.down('button[action=save]').setDisabled(false); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
183 } else if (form.getValues().ort !== '' |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
184 && /[UEZA]/.test(form.getValues().ortsTyp)) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
185 // valid ortzuordnung(messprogramm) |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
186 form.owner.down('button[action=save]').setDisabled(false); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
187 } else { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
188 form.owner.down('button[action=save]').setDisabled(true); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
189 } |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
190 } else { |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
191 //invalid |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
192 form.owner.down('button[action=save]').setDisabled(true); |
1144
5ceb0381ae73
Set a regex and required for ortszuordnungstyp field.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1134
diff
changeset
|
193 } |
1288
08085b7d1d0b
Ortszuordnung: Search, new orte, display and validity check
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
194 } else { |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
195 //not dirty |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1288
diff
changeset
|
196 form.owner.down('button[action=save]').setDisabled(true); |
603
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
197 form.owner.down('button[action=discard]').setDisabled(true); |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
198 } |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
199 } |
9d0113bc2f70
Added ort form and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
200 }); |