Mercurial > lada > lada-client
annotate app/controller/form/Probe.js @ 1293:16a80ca16732
map feature visibility, selection and grid layout
messpunkt layer is now visible per default when in editing mode
on selection in map, the form is updated
ortszuordnung buttons should not render over grid anymore
author | Maximilian Krambach <mkrambach@intevation.de> |
---|---|
date | Wed, 01 Feb 2017 19:38:06 +0100 |
parents | 9d298c82575f |
children | 81b585645581 |
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(' '); |
1283
9d298c82575f
Check correct length in deskriptor string.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1281
diff
changeset
|
233 if (current.length < 12) { |
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 }); |