Mercurial > lada > lada-client
annotate app/controller/form/Messprogramm.js @ 1268:254a5278ac2d 2.4.1
Prepare tag.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Fri, 16 Dec 2016 13:52:37 +0100 |
parents | 5824c4b329f4 |
children | 8f37f8832c4a |
rev | line source |
---|---|
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
3 * |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
7 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
8 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
9 /** |
1086
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
10 * A Controller for a Messprogramm form |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
11 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
12 Ext.define('Lada.controller.form.Messprogramm', { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
13 extend: 'Ext.app.Controller', |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
14 |
797
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
15 requires: [ |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
16 'Lada.view.window.MessprogrammOrt' |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
17 ], |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
18 |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
19 /** |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
20 * Initialize the Controller |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
21 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
22 init: function() { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
23 this.control({ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
24 'messprogrammform button[action=save]': { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
25 click: this.save |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
26 }, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
27 'messprogrammform button[action=discard]': { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
28 click: this.discard |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
29 }, |
797
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
30 'messprogrammform button[action=ort]': { |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
31 click: this.editOrtWindow |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
32 }, |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
33 'messprogrammform': { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
34 dirtychange: this.dirtyForm |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
35 }, |
1070
33927274f013
Fixed mst/labor_mst field and selection to automatically set the netzbetreiber.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
972
diff
changeset
|
36 'messprogrammform messstellelabor combobox': { |
842
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
37 select: this.setNetzbetreiber |
798
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
38 }, |
797
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
39 'messprogrammform location combobox': { |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
40 select: this.syncOrtWindow |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
41 }, |
1197
112fd60f1fb4
It is an error to specify invalid intervals.
Tom Gottfried <tom@intevation.de>
parents:
1194
diff
changeset
|
42 'messprogrammform numfield numberfield': { |
112fd60f1fb4
It is an error to specify invalid intervals.
Tom Gottfried <tom@intevation.de>
parents:
1194
diff
changeset
|
43 change: this.checkPeriod |
774 | 44 }, |
777 | 45 'messprogrammform [name="teilintervallVon"]': { |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
46 change: this.synchronizeSlider, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
47 }, |
777 | 48 'messprogrammform [name="teilintervallBis"]': { |
49 change: this.synchronizeSlider, | |
50 }, | |
818
097d4edc2f00
Genprobenwindow can only be created once, also fixed messprogrammortewindow 'close with x and can not reopen' bug
Dustin Demuth <dustin@intevation.de>
parents:
808
diff
changeset
|
51 'messprogrammform probenintervall combobox': { |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
52 select: this.updateIntervalls |
784
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
53 }, |
1210
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
54 'messprogrammform dayofyear [hidden]': { |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
55 change: this.alignSubIntervall |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
56 }, |
784
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
57 'messprogrammform panel[xtype="deskriptor] combobox': { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
58 select: this.deskriptorSelect |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
59 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
60 }); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
61 }, |
798
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
62 |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
63 /** |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
64 * The Messtellen Store contains ALL Messtellen. |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
65 * Filter the store in this combobox to reduce the choices |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
66 * to the subset which the user is allowed to use. |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
67 */ |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
68 filter: function(field) { |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
69 var fil = Ext.create('Ext.util.Filter', { |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
70 filterFn: function(item) { |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
71 if (Ext.Array.contains(Lada.mst, item.get('id'))) { |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
72 return true; |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
73 } |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
74 return false; |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
75 } |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
76 }); |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
77 field.getStore().filter(fil); |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
78 }, |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
797
diff
changeset
|
79 |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
80 /** |
842
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
81 * When a Messtelle is selected, modify the Netzbetreiber |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
82 * according to the Messstelle |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
83 */ |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
84 setNetzbetreiber: function(combo, records){ |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
85 var netzbetreiber = combo.up().up('form') |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
86 .down('netzbetreiber').down('combobox'); |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
87 var nbId = records[0].get('netzbetreiberId'); |
846
af9d506b0700
always modify the netzbetreiber when the Messstelle was changed
Dustin Demuth <dustin@intevation.de>
parents:
843
diff
changeset
|
88 if (nbId != null) { |
842
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
89 //select the NB in the NB-Combobox |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
90 netzbetreiber.select(nbId); |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
91 } |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
92 }, |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
93 |
beef4e8eeafc
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
818
diff
changeset
|
94 /** |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
95 * When the Probenintervall was changed, update the Sliders |
1210
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
96 * and the numberfield. |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
97 */ |
1210
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
98 updateIntervalls: function(field) { |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
99 var form = field.up('messprogrammform'); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
100 var record = form.getRecord(); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
101 form.populateIntervall(record, field.getValue()); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
102 }, |
1198
3b6f40541ac6
Remove wrong period check.
Tom Gottfried <tom@intevation.de>
parents:
1197
diff
changeset
|
103 |
797
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
104 /** |
1210
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
105 * When the validity period was changed, align the subintervall |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
106 * in case of yearly intervall. |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
107 */ |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
108 alignSubIntervall: function(field) { |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
109 var form = field.up('messprogrammform'); |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
110 var intervall = form.down('probenintervall').down('combobox') |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
111 .getValue(); |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
112 if (intervall == 'J') { |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
113 if (field.getName() == 'gueltigVon') { |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
114 form.down('[name=teilintervallVon]') |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
115 .setValue(field.getValue()); |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
116 } else { |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
117 form.down('[name=teilintervallBis]') |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
118 .setValue(field.getValue()); |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
119 } |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
120 } |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
121 }, |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
122 |
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
123 /** |
797
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
124 * The function will open a new Window to edit the Ort of a Messprogramm |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
125 */ |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
126 editOrtWindow: function(button) { |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
127 var formPanel = button.up('form'); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
128 //Only Open if the WIndow does not exist, else focus |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
129 if (!formPanel.ortWindow) { |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
130 var data = formPanel.getForm().getFieldValues(true); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
131 formPanel.ortWindow = Ext.create('Lada.view.window.MessprogrammOrt', { |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
132 record: formPanel.getRecord(), |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
133 parentWindow: formPanel.up('window') |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
134 }); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
135 formPanel.ortWindow.show(); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
136 formPanel.ortWindow.initData(); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
137 } |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
138 else { |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
139 formPanel.ortWindow.focus(); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
140 formPanel.ortWindow.setActive(true); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
141 } |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
142 }, |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
143 |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
144 /** |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
145 * When a OrtWindow exist, and the value of the location combobox is changed, update the window. |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
146 */ |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
147 syncOrtWindow: function(combo, record){ |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
148 var formPanel = combo.up('messprogrammform'); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
149 if (formPanel.ortWindow) { |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
150 var ortwindowlocation = formPanel |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
151 .ortWindow.down('location') |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
152 var ortwindowcombo = ortwindowlocation |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
153 .down('combobox'); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
154 |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
155 ortwindowcombo.select(combo.getValue()); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
156 ortwindowlocation.fireEvent('select', |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
157 ortwindowcombo, ortwindowcombo.record); |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
158 } |
b8fd43021c29
Added a Window to alter Orte of a Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
784
diff
changeset
|
159 }, |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
160 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
161 /** |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
162 * When the Slider was used, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
163 * update the Value of the Teilintervallfields |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
164 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
165 synchronizeFields: function(slider, newValue, thumb) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
166 var formPanel = slider.up('form'); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
167 if (thumb.index == 0) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
168 formPanel.getForm() |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
169 .findField('teilintervallVon') |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
170 .setValue(newValue); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
171 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
172 else if (thumb.index == 1) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
173 formPanel.getForm() |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
174 .findField('teilintervallBis') |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
175 .setValue(newValue); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
176 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
177 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
178 }, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
179 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
180 /** |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
181 * When the IntervallFields were used, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
182 * update the Slider |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
183 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
184 synchronizeSlider: function(field, newValue, oldValue) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
185 var formPanel = field.up('form'); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
186 if (field.name == 'teilintervallVon') { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
187 formPanel.down('probenintervallslider') |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
188 .setValue(0, newValue, false); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
189 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
190 else if (field.name == 'teilintervallBis') { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
191 formPanel.down('probenintervallslider') |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
192 .setValue(1, newValue, false); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
193 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
194 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
195 }, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
196 /** |
972
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
857
diff
changeset
|
197 * The save function saves the content of the Messprogramm form. |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
198 * On success it will reload the Store, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
199 * on failure, it will display an Errormessage |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
200 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
201 save: function(button) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
202 var formPanel = button.up('form'); |
1231
e8dd06450f2c
Two lines later we rely on having a specific field, dirty or not.
Tom Gottfried <tom@intevation.de>
parents:
1217
diff
changeset
|
203 var data = formPanel.getForm().getFieldValues(); |
1217
4270da0f7d3b
Merged branch schema-update into default.
Tom Gottfried <tom@intevation.de>
parents:
1210
diff
changeset
|
204 var orte = Ext.data.StoreManager.get('orte'); |
1250
5824c4b329f4
Fixed saving messprogramm.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1231
diff
changeset
|
205 var gemId; |
5824c4b329f4
Fixed saving messprogramm.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1231
diff
changeset
|
206 if (data['ortId'] !== null && data['ortId'] !== '') { |
5824c4b329f4
Fixed saving messprogramm.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1231
diff
changeset
|
207 gemId = orte.getById(data['ortId']).get('gemId'); |
5824c4b329f4
Fixed saving messprogramm.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1231
diff
changeset
|
208 } |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
209 for (var key in data) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
210 formPanel.getForm().getRecord().set(key, data[key]); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
211 } |
1217
4270da0f7d3b
Merged branch schema-update into default.
Tom Gottfried <tom@intevation.de>
parents:
1210
diff
changeset
|
212 formPanel.getForm().getRecord().set('gemId', gemId); |
972
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
857
diff
changeset
|
213 if (!formPanel.getForm().getRecord().get('letzteAenderung')) { |
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
857
diff
changeset
|
214 formPanel.getForm().getRecord().data.letzteAenderung = new Date(); |
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
857
diff
changeset
|
215 } |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
216 formPanel.getForm().getRecord().save({ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
217 success: function(record, response) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
218 var json = Ext.decode(response.response.responseText); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
219 if (json) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
220 button.setDisabled(true); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
221 button.up('toolbar').down('button[action=discard]') |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
222 .setDisabled(true); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
223 formPanel.clearMessages(); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
224 formPanel.setRecord(record); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
225 formPanel.setMessages(json.errors, json.warnings); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
226 if (response.action === 'create' && json.success) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
227 button.up('window').close(); |
759
b7484c7da2d4
Unified the Messprogramm windows. Unfortunately the Roweditor of Messmethodengrid is broken in this commit. This is due to the fact that the Mmt store is noit autoloaded anymore
Dustin Demuth <dustin@intevation.de>
parents:
757
diff
changeset
|
228 var win = Ext.create('Lada.view.window.Messprogramm', { |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
229 record: record |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
230 }); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
231 win.show(); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
232 win.initData(); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
233 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
234 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
235 }, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
236 failure: function(record, response) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
237 button.setDisabled(true); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
238 button.up('toolbar').down('button[action=discard]') |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
239 .setDisabled(true); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
240 var rec = formPanel.getForm().getRecord(); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
241 rec.dirty = false; |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
242 formPanel.getForm().loadRecord(record); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
243 var json = response.request.scope.reader.jsonData; |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
244 if (json) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
245 if(json.errors.totalCount > 0 || json.warnings.totalCount > 0){ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
246 formPanel.setMessages(json.errors, json.warnings); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
247 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
248 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
249 if(json.message){ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
250 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.save.title') |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
251 +' #'+json.message, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
252 Lada.getApplication().bundle.getMsg(json.message)); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
253 } else { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
254 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.save.title'), |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
255 Lada.getApplication().bundle.getMsg('err.msg.generic.body')); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
256 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
257 formPanel.clearMessages(); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
258 //formPanel.setRecord(record); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
259 formPanel.setMessages(json.errors, json.warnings); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
260 } else { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
261 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.save.title'), |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
262 Lada.getApplication().bundle.getMsg('err.msg.response.body')); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
263 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
264 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
265 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
266 }); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
267 }, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
268 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
269 /** |
1210
a24de34d6423
Align subintervall with validity for yearly samples.
Tom Gottfried <tom@intevation.de>
parents:
1198
diff
changeset
|
270 * The discard function resets the form |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
271 * to its original state. |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
272 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
273 discard: function(button) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
274 var formPanel = button.up('form'); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
275 formPanel.getForm().loadRecord(formPanel.getForm().getRecord()); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
276 formPanel.getForm().owner.populateIntervall( |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
277 formPanel.getForm().getRecord()); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
278 }, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
279 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
280 /** |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
281 * The dirtyForm function enables or disables the save and discard |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
282 * button which are present in the toolbar of the form. |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
283 * The Buttons are only active if the content of the form was altered |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
284 * (the form is dirty). |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
285 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
286 dirtyForm: function(form, dirty) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
287 if (dirty) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
288 form.owner.down('button[action=save]').setDisabled(false); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
289 form.owner.down('button[action=discard]').setDisabled(false); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
290 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
291 else { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
292 form.owner.down('button[action=save]').setDisabled(true); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
293 form.owner.down('button[action=discard]').setDisabled(true); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
294 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
295 }, |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
296 |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
297 /** |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
298 * checkPeriod() is called when a fields defining an intervall |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
299 * were modified |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
300 * The function validates if the start is smaller than end. |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
301 */ |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
302 checkPeriod: function(field) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
303 // This field might be a field within a Period. |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
304 // Search for Partner field (period: end/start) and validate |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
305 // End Before Start validation |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
306 if (field.period) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
307 var partners = new Array(); |
1194
c63acd44f8ca
Fix regression of 40a07eb873bf to display errors and warnings again.
Tom Gottfried <tom@intevation.de>
parents:
1108
diff
changeset
|
308 partners[0] = field.up('fieldset') |
c63acd44f8ca
Fix regression of 40a07eb873bf to display errors and warnings again.
Tom Gottfried <tom@intevation.de>
parents:
1108
diff
changeset
|
309 .down('numberfield[period=start]').getValue(); |
c63acd44f8ca
Fix regression of 40a07eb873bf to display errors and warnings again.
Tom Gottfried <tom@intevation.de>
parents:
1108
diff
changeset
|
310 partners[1] = field.up('fieldset') |
c63acd44f8ca
Fix regression of 40a07eb873bf to display errors and warnings again.
Tom Gottfried <tom@intevation.de>
parents:
1108
diff
changeset
|
311 .down('numberfield[period=end]').getValue(); |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
312 if (partners[0] && partners[1] && partners[0] > partners [1]) { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
313 var msg = Lada.getApplication().bundle.getMsg('662'); |
1197
112fd60f1fb4
It is an error to specify invalid intervals.
Tom Gottfried <tom@intevation.de>
parents:
1194
diff
changeset
|
314 field.up('fieldset').showWarningOrError(false, '', true, msg); |
757
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
315 } else { |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
316 field.up('fieldset').clearMessages(); |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
317 } |
b8502964f5c3
Added missing files. Added MmtMockup
Dustin Demuth <dustin@intevation.de>
parents:
diff
changeset
|
318 } |
777 | 319 }, |
320 | |
784
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
321 |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
322 deskriptorSelect: function(field, records) { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
323 var desk = field.up('deskriptor'); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
324 var media = field.up('messprogrammform').down('textfield[name="mediaDesk"]'); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
325 var current = media.getValue().split(' '); |
1088
60af12dd4a13
Decreased descriptor string parts in Messprogramm.
Michael Stanko <mstanko@bfs.de>
parents:
1086
diff
changeset
|
326 if (current.length < 12) { |
1108 | 327 var value; |
784
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
328 for (var i = 0; i <= 12; i++) { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
329 if (i === 0) { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
330 current.push('D:'); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
331 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
332 else if (i === desk.layer + 1) { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
333 var value; |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
334 if (records[0].get('sn') < 10) { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
335 value = '0' + records[0].get('sn'); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
336 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
337 else { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
338 value = records[0].get('sn'); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
339 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
340 current.push(value); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
341 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
342 else { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
343 current.push('00'); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
344 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
345 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
346 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
347 else { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
348 var value; |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
349 if (records[0].get('sn') < 10) { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
350 value = '0' + records[0].get('sn'); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
351 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
352 else { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
353 value = records[0].get('sn'); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
354 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
355 current[desk.layer + 1] = value; |
1086
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
356 if (desk.layer < 2) { |
1088
60af12dd4a13
Decreased descriptor string parts in Messprogramm.
Michael Stanko <mstanko@bfs.de>
parents:
1086
diff
changeset
|
357 for (var i = desk.layer + 2; i < 12; i++) { |
1086
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
358 current[i] = '00'; |
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
359 } |
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
360 this.clearChildDesk(desk); |
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
361 } |
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
362 else if (desk.layer === 2 && current[1] === '01') { |
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
363 current[4] = '00'; |
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
364 desk.up('fieldset').down('deskriptor[layer=3]').clearValue(); |
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
365 } |
784
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
366 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
367 media.setValue(current.join(' ').trim()); |
1108 | 368 |
369 if (current[0].length == 0) { | |
370 current.splice(0,1); | |
371 } | |
372 var mediatext = field.up('messprogrammform').down('textfield[name="media"]'); | |
373 | |
374 if ( (desk.layer === 0 ) && (records[0].get('sn') === 0) ){ | |
375 mediatext.setValue(''); | |
376 } else { | |
377 if ( current[1] === '01') { | |
378 if ( (current[5] !== '00') && (desk.layer === 4 ) ){ | |
379 //mediatext.setValue(records[0].data.beschreibung); | |
380 } else if ( (current[4] !== '00') && (desk.layer === 3) ) { | |
381 mediatext.setValue(records[0].data.beschreibung); | |
382 } else if ( (current[3] !== '00') && (desk.layer === 2) ) { | |
383 mediatext.setValue(records[0].data.beschreibung); | |
384 } else if ( (current[2] !== '00') && (desk.layer === 1) ) { | |
385 mediatext.setValue(records[0].data.beschreibung); | |
386 } else if ( (current[1] !== '00') && (desk.layer === 0 )) { | |
387 mediatext.setValue(records[0].data.beschreibung); | |
388 } | |
389 } | |
390 | |
391 if ( current[1] !== '01') { | |
392 if ((current[2] !== '00') && (desk.layer === 1 )) { | |
393 mediatext.setValue(records[0].data.beschreibung); | |
394 } else if ((current[1] !== '00') && (desk.layer === 0 )) { | |
395 mediatext.setValue(records[0].data.beschreibung); | |
396 } | |
397 } | |
398 } | |
784
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
399 }, |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
400 |
1086
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
401 clearChildDesk: function(field) { |
784
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
402 var allS = field.up('fieldset').items.items; |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
403 for (var i = field.layer + 1; i < 12; i++) { |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
404 allS[i].clearValue(); |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
405 } |
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
406 } |
1086
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
407 |
61cc583c3649
Messprogramm form redesign
Michael Stanko <mstanko@bfs.de>
parents:
1070
diff
changeset
|
408 |
784
f0b26df02157
Handle deskriptoren in messprogramm like in probe.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
777
diff
changeset
|
409 }); |