Mercurial > lada > lada-client
annotate app/controller/form/Probe.js @ 1282:20a2466820ce
merged.
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Wed, 18 Jan 2017 14:56:16 +0100 |
parents | 8012e5212bd5 |
children | 9d298c82575f |
rev | line source |
---|---|
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
3 * |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 */ |
cf328526b5bb
Moved controller into subfolders.
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:
728
diff
changeset
|
9 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
10 * A Controller for a Probe form |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
11 */ |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 Ext.define('Lada.controller.form.Probe', { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 extend: 'Ext.app.Controller', |
cf328526b5bb
Moved controller into subfolders.
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:
728
diff
changeset
|
15 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
16 * Initialize the Controller |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
17 * It has 4 listeners |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
18 */ |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 init: function() { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 this.control({ |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 'probeform button[action=save]': { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 click: this.save |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 }, |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 'probeform button[action=discard]': { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 click: this.discard |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 }, |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 'probeform': { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
28 dirtychange: this.dirtyForm |
717
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
29 }, |
1066
d198946e5540
Introduced laborMstId as new probe field.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
972
diff
changeset
|
30 'probeform messstellelabor combobox': { |
841
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
31 select: this.setNetzbetreiber |
798
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
32 }, |
717
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
33 'probeform [xtype="datetime"] field': { |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
34 blur: this.checkDate |
771
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
35 }, |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
36 'probeform panel[xtype="deskriptor] combobox': { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
37 select: this.deskriptorSelect |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 } |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 }); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 }, |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
42 /** |
798
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
43 * The Messtellen Store contains ALL Messtellen. |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
44 * Filter the store in this combobox to reduce the choices |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
45 * to the subset which the user is allowed to use. |
967
50d7b6e17525
Filter the selectable Messtellen in the statusgrid
Dustin Demuth <dustin@intevation.de>
parents:
933
diff
changeset
|
46 * |
50d7b6e17525
Filter the selectable Messtellen in the statusgrid
Dustin Demuth <dustin@intevation.de>
parents:
933
diff
changeset
|
47 * The app.js also creates a messstellenFiltered store, |
50d7b6e17525
Filter the selectable Messtellen in the statusgrid
Dustin Demuth <dustin@intevation.de>
parents:
933
diff
changeset
|
48 * which contains this selection. Maybe this can be used here in future |
50d7b6e17525
Filter the selectable Messtellen in the statusgrid
Dustin Demuth <dustin@intevation.de>
parents:
933
diff
changeset
|
49 * TODO |
798
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
50 */ |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
51 filter: function(field) { |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
52 var fil = Ext.create('Ext.util.Filter', { |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
53 filterFn: function(item) { |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
54 if (Ext.Array.contains(Lada.mst, item.get('id'))) { |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
55 return true; |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
56 } |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
57 return false; |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
58 } |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
59 }); |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
60 field.getStore().filter(fil); |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
61 }, |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
62 |
ff4330d4aba1
Filter Messtellen in Probeform and Messprogramm
Dustin Demuth <dustin@intevation.de>
parents:
771
diff
changeset
|
63 /** |
841
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
64 * When a Messtelle is selected, modify the Netzbetreiber |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
65 * according to the Messstelle |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
66 */ |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
67 setNetzbetreiber: function(combo, records){ |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
68 var netzbetreiber = combo.up().up('form') |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
69 .down('netzbetreiber').down('combobox'); |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
70 var nbId = records[0].get('netzbetreiberId'); |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
71 |
846
af9d506b0700
always modify the netzbetreiber when the Messstelle was changed
Dustin Demuth <dustin@intevation.de>
parents:
843
diff
changeset
|
72 if (nbId != null) { |
841
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
73 //select the NB in the NB-Combobox |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
74 netzbetreiber.select(nbId); |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
75 } |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
76 }, |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
77 |
cf35c6305370
Added logic to autofill the Netzbetreiber when the Messstelle was selected.
Dustin Demuth <dustin@intevation.de>
parents:
829
diff
changeset
|
78 /** |
972
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
967
diff
changeset
|
79 * The save function saves the content of the Messung form. |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
80 * On success it will reload the Store, |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
81 * on failure, it will display an Errormessage |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
82 */ |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
83 save: function(button) { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
84 var formPanel = button.up('form'); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
85 var data = formPanel.getForm().getFieldValues(true); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
86 for (var key in data) { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
87 formPanel.getForm().getRecord().set(key, data[key]); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
88 } |
972
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
967
diff
changeset
|
89 if (!formPanel.getForm().getRecord().get('letzteAenderung')) { |
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
967
diff
changeset
|
90 formPanel.getForm().getRecord().data.letzteAenderung = new Date(); |
24b5684d74d7
Set letzteAenderung in a Bunch of controllers.
Dustin Demuth <dustin@intevation.de>
parents:
967
diff
changeset
|
91 } |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
92 formPanel.getForm().getRecord().save({ |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
93 success: function(record, response) { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
94 var json = Ext.decode(response.response.responseText); |
620
e0b966b32163
Open probe create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
587
diff
changeset
|
95 if (json) { |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
96 button.setDisabled(true); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
97 button.up('toolbar').down('button[action=discard]') |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
98 .setDisabled(true); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
99 formPanel.clearMessages(); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
100 formPanel.setRecord(record); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
101 formPanel.setMessages(json.errors, json.warnings); |
639
fdaabab6f4cc
Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents:
620
diff
changeset
|
102 if (response.action === 'create' && json.success) { |
fdaabab6f4cc
Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents:
620
diff
changeset
|
103 button.up('window').close(); |
fdaabab6f4cc
Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents:
620
diff
changeset
|
104 var win = Ext.create('Lada.view.window.ProbeEdit', { |
fdaabab6f4cc
Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents:
620
diff
changeset
|
105 record: record |
fdaabab6f4cc
Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents:
620
diff
changeset
|
106 }); |
fdaabab6f4cc
Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents:
620
diff
changeset
|
107 win.show(); |
fdaabab6f4cc
Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents:
620
diff
changeset
|
108 win.initData(); |
fdaabab6f4cc
Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents:
620
diff
changeset
|
109 } |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
110 } |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
111 }, |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
112 failure: function(record, response) { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
113 button.setDisabled(true); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
114 button.up('toolbar').down('button[action=discard]') |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
115 .setDisabled(true); |
678
a24db43b13b5
Set record dirty flag to false if commit failed.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
639
diff
changeset
|
116 var rec = formPanel.getForm().getRecord(); |
a24db43b13b5
Set record dirty flag to false if commit failed.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
639
diff
changeset
|
117 rec.dirty = false; |
728
aadb6e1f0a70
Load the record returned by the request.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
720
diff
changeset
|
118 formPanel.getForm().loadRecord(record); |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
119 var json = response.request.scope.reader.jsonData; |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
120 if (json) { |
693 | 121 if(json.errors.totalCount > 0 || json.warnings.totalCount > 0){ |
122 formPanel.setMessages(json.errors, json.warnings); | |
123 } | |
124 | |
125 if(json.message){ | |
701
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
693
diff
changeset
|
126 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.save.title') |
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
693
diff
changeset
|
127 +' #'+json.message, |
693 | 128 Lada.getApplication().bundle.getMsg(json.message)); |
701
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
693
diff
changeset
|
129 } else { |
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
693
diff
changeset
|
130 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.save.title'), |
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
693
diff
changeset
|
131 Lada.getApplication().bundle.getMsg('err.msg.generic.body')); |
693 | 132 } |
720
c2a6f7caa71b
Fix for ErrorMessages in FieldSets for IE8 IE9
Dustin Demuth <dustin@intevation.de>
parents:
717
diff
changeset
|
133 formPanel.clearMessages(); |
728
aadb6e1f0a70
Load the record returned by the request.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
720
diff
changeset
|
134 //formPanel.setRecord(record); |
720
c2a6f7caa71b
Fix for ErrorMessages in FieldSets for IE8 IE9
Dustin Demuth <dustin@intevation.de>
parents:
717
diff
changeset
|
135 formPanel.setMessages(json.errors, json.warnings); |
701
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
693
diff
changeset
|
136 } else { |
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
693
diff
changeset
|
137 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.save.title'), |
f0bc5387abcc
Added failure - Messages
Dustin Demuth <dustin@intevation.de>
parents:
693
diff
changeset
|
138 Lada.getApplication().bundle.getMsg('err.msg.response.body')); |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
139 } |
720
c2a6f7caa71b
Fix for ErrorMessages in FieldSets for IE8 IE9
Dustin Demuth <dustin@intevation.de>
parents:
717
diff
changeset
|
140 |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
141 } |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
142 }); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
143 }, |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
144 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
145 /** |
816
e25fcc9269df
Removed a Bug where Datetimepickler errormessages where not reset on Form Discard
Dustin Demuth <dustin@intevation.de>
parents:
798
diff
changeset
|
146 * The discard function resets the Probe form |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
147 * to its original state. |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
148 */ |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
149 discard: function(button) { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
150 var formPanel = button.up('form'); |
816
e25fcc9269df
Removed a Bug where Datetimepickler errormessages where not reset on Form Discard
Dustin Demuth <dustin@intevation.de>
parents:
798
diff
changeset
|
151 |
e25fcc9269df
Removed a Bug where Datetimepickler errormessages where not reset on Form Discard
Dustin Demuth <dustin@intevation.de>
parents:
798
diff
changeset
|
152 formPanel.down('fset[name=entnahmePeriod]').clearMessages(); |
e25fcc9269df
Removed a Bug where Datetimepickler errormessages where not reset on Form Discard
Dustin Demuth <dustin@intevation.de>
parents:
798
diff
changeset
|
153 formPanel.down('fset[name=sollzeitPeriod]').clearMessages(); |
e25fcc9269df
Removed a Bug where Datetimepickler errormessages where not reset on Form Discard
Dustin Demuth <dustin@intevation.de>
parents:
798
diff
changeset
|
154 formPanel.down('datetime[name=probeentnahmeBeginn]').clearWarningOrError(); |
e25fcc9269df
Removed a Bug where Datetimepickler errormessages where not reset on Form Discard
Dustin Demuth <dustin@intevation.de>
parents:
798
diff
changeset
|
155 formPanel.down('datetime[name=probeentnahmeEnde]').clearWarningOrError(); |
e25fcc9269df
Removed a Bug where Datetimepickler errormessages where not reset on Form Discard
Dustin Demuth <dustin@intevation.de>
parents:
798
diff
changeset
|
156 |
741
a76638970d50
Clear filter on umwelt combox store.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
728
diff
changeset
|
157 formPanel.down('umwelt').store.clearFilter(); |
1066
d198946e5540
Introduced laborMstId as new probe field.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
972
diff
changeset
|
158 formPanel.setRecord(formPanel.getForm().getRecord()); |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
159 }, |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
160 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
161 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
162 * The dirtyForm function enables or disables the save and discard |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
163 * button which are present in the toolbar of the form. |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
164 * The Buttons are only active if the content of the form was altered |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
165 * (the form is dirty). |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
166 * In Additon it calls the disableChildren() function of the window |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
167 * embedding the form. Likewise it calls the embedding windows |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
168 * enableChilren() function |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
169 */ |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
170 dirtyForm: function(form, dirty) { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
171 if (dirty) { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
172 form.owner.down('button[action=save]').setDisabled(false); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
173 form.owner.down('button[action=discard]').setDisabled(false); |
686
14ac75f80ba1
Forgot to commit the controller for commit 684
Dustin Demuth <dustin@intevation.de>
parents:
678
diff
changeset
|
174 form.owner.up('window').disableChildren(); |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
175 } |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
176 else { |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
177 form.owner.down('button[action=save]').setDisabled(true); |
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
178 form.owner.down('button[action=discard]').setDisabled(true); |
686
14ac75f80ba1
Forgot to commit the controller for commit 684
Dustin Demuth <dustin@intevation.de>
parents:
678
diff
changeset
|
179 form.owner.up('window').enableChildren(); // todo this might not be true in all cases |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
180 } |
717
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
181 }, |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
182 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
183 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
184 * checkDate() is called when a xtype=datetime field was modified |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
185 * It checks for two things: |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
186 * - Is the date in the future |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
187 * - Does the date belong to a time period and the end is before start |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
188 * In both cases it adds a warning to the field which was checked. |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
728
diff
changeset
|
189 */ |
717
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
190 checkDate: function(field) { |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
191 var now = Date.now(); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
192 var w = 0 //amount of warnings |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
193 var e = 0 //errors |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
194 var emsg = ''; |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
195 var wmsg = ''; |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
196 |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
197 if (field.getValue() > now){ |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
198 wmsg += Lada.getApplication().bundle.getMsg('661'); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
199 w++; |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
200 } |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
201 // This field might be a field within a DateTime-Period. |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
202 // Search for Partner field (period: end/start) and validate |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
203 // End Before Start validation |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
204 if (field.period) { |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
205 var partners = new Array(); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
206 partners[0] = field.up('fieldset').down('datetime[period=start]').down().getValue() |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
207 partners[1] = field.up('fieldset').down('datetime[period=end]').down().getValue() |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
208 if (partners[0] && partners[1] && partners[0] > partners [1]) { |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
209 var msg = Lada.getApplication().bundle.getMsg('662'); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
210 field.up('fieldset').showWarningOrError(true, msg, false, ''); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
211 } else { |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
212 field.up('fieldset').clearMessages(); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
213 } |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
214 } |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
215 |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
216 if (w) { |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
217 field.up().showWarnings(wmsg); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
218 } |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
219 if (e) { |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
220 field.up().showErrors(emsg); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
221 } |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
222 |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
223 // Clear Warnings or Errors if none Are Present |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
224 if (w == 0 && e == 0) { |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
225 field.up().clearWarningOrError(); |
f124d24c8ade
Datevalidation. When editing a timeperiod in a Probeform it is validated wheter begindate is before enddate. This only happens when the blur-event is fired. ToDo: Listen to Events from the Übernehmen Button of the DateTimePicker, ToDo: Somehow the ErrorMessages are not Cleared correctly when the form is restored.
Dustin Demuth <dustin@intevation.de>
parents:
701
diff
changeset
|
226 } |
771
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
227 }, |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
228 |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
229 deskriptorSelect: function(field, records) { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
230 var desk = field.up('deskriptor'); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
231 var media = field.up('probeform').down('textfield[name="mediaDesk"]'); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
232 var current = media.getValue().split(' '); |
1281
8012e5212bd5
Fixed initial length of deskriptor string.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1276
diff
changeset
|
233 if (current.length < 13) { |
1276
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
234 var value; |
1281
8012e5212bd5
Fixed initial length of deskriptor string.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1276
diff
changeset
|
235 for (var i = 0; i < 13; i++) { |
771
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
236 if (i === 0) { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
237 current.push('D:'); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
238 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
239 else if (i === desk.layer + 1) { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
240 var value; |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
241 if (records[0].get('sn') < 10) { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
242 value = '0' + records[0].get('sn'); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
243 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
244 else { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
245 value = records[0].get('sn'); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
246 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
247 current.push(value); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
248 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
249 else { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
250 current.push('00'); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
251 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
252 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
253 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
254 else { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
255 var value; |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
256 if (records[0].get('sn') < 10) { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
257 value = '0' + records[0].get('sn'); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
258 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
259 else { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
260 value = records[0].get('sn'); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
261 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
262 current[desk.layer + 1] = value; |
932 | 263 if (desk.layer < 2) { |
1085
3c42c06e3a36
Decreased descriptor string parts.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1066
diff
changeset
|
264 for (var i = desk.layer + 2; i < 12; i++) { |
932 | 265 current[i] = '00'; |
266 } | |
267 this.clearChildDesk(desk); | |
925
81e7c847cb58
Clear child descriptor fields on descriptor change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
846
diff
changeset
|
268 } |
932 | 269 else if (desk.layer === 2 && current[1] === '01') { |
270 current[4] = '00'; | |
933
8dd758b9b8ea
Clear descriptor s3 if s2 is set to empty value.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
932
diff
changeset
|
271 desk.up('fieldset').down('deskriptor[layer=3]').clearValue(); |
932 | 272 } |
771
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
273 } |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
274 media.setValue(current.join(' ').trim()); |
1276
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
275 |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
276 if (current[0].length == 0) { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
277 current.splice(0,1); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
278 } |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
279 var mediatext = field.up('probeform').down('textfield[name="media"]'); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
280 |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
281 if ( (desk.layer === 0 ) && (records[0].get('sn') === 0) ){ |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
282 mediatext.setValue(''); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
283 } else { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
284 if ( current[1] === '01') { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
285 if ( (current[4] !== '00') && (desk.layer === 3) ) { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
286 mediatext.setValue(records[0].data.beschreibung); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
287 } else if ( (current[3] !== '00') && (desk.layer === 2) ) { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
288 mediatext.setValue(records[0].data.beschreibung); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
289 } else if ( (current[2] !== '00') && (desk.layer === 1) ) { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
290 mediatext.setValue(records[0].data.beschreibung); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
291 } else if ( (current[1] !== '00') && (desk.layer === 0 )) { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
292 mediatext.setValue(records[0].data.beschreibung); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
293 } |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
294 } |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
295 |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
296 if ( current[1] !== '01') { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
297 if ((current[2] !== '00') && (desk.layer === 1 )) { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
298 mediatext.setValue(records[0].data.beschreibung); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
299 } else if ((current[1] !== '00') && (desk.layer === 0 )) { |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
300 mediatext.setValue(records[0].data.beschreibung); |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
301 } |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
302 } |
8f37f8832c4a
fix mediadescription in probe form
Michael Stanko <mstanko@bfs.de>
parents:
1085
diff
changeset
|
303 } |
771
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
304 }, |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
305 |
925
81e7c847cb58
Clear child descriptor fields on descriptor change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
846
diff
changeset
|
306 clearChildDesk: function(field) { |
771
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
307 var allS = field.up('fieldset').items.items; |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
308 for (var i = field.layer + 1; i < 12; i++) { |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
309 allS[i].clearValue(); |
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
310 } |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
311 } |
771
dd6925ef6028
Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
743
diff
changeset
|
312 |
587
cf328526b5bb
Moved controller into subfolders.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
313 }); |