Mercurial > lada > lada-client
annotate app/view/orte/CreateForm.js @ 488:f7446ebfe5d0
Added and updated models.
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Fri, 31 Oct 2014 21:10:35 +0100 |
parents | debfcc7713e3 |
children | 446e99cfd425 |
rev | line source |
---|---|
472
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
447
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
447
diff
changeset
|
2 * Software engineering by Intevation GmbH |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
447
diff
changeset
|
3 * |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
447
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
447
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
447
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
447
diff
changeset
|
7 */ |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
447
diff
changeset
|
8 |
347
1536fb5c81b7
Added documentation
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
278
diff
changeset
|
9 /* |
1536fb5c81b7
Added documentation
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
278
diff
changeset
|
10 * Formular to create and edit a Ort |
1536fb5c81b7
Added documentation
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
278
diff
changeset
|
11 */ |
109
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
12 Ext.define('Lada.view.orte.CreateForm', { |
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
13 extend: 'Lada.view.widgets.LadaForm', |
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
14 model: 'Lada.model.Ort', |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
15 requires: [ |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
16 'Lada.view.widgets.Ortdetail', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
17 'Lada.view.widgets.Staat', |
447
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
18 'Lada.view.widgets.Verwaltungseinheit', |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
19 'Lada.view.orte.CreateOrt' |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
20 ], |
447
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
21 edit: false, |
109
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
22 initComponent: function() { |
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
23 this.items = [ |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
24 { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
25 xtype: 'ortdetail', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
26 name: 'ortId', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
27 fieldLabel: 'Ort', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
28 listeners: { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
29 scope: this, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
30 'change': function (field, newv, oldv, opts) { |
447
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
31 if (field.up('window')) { |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
32 field.up('window').down('fieldset').show(); |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
33 } |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
34 var orte = Ext.getStore('Ortedetails'); |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
35 var ort = orte.getById(newv); |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
36 var fields = ['beschreibung', 'bezeichnung', 'hoeheLand', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
37 'latitude', 'longitude', 'staatId', 'gemId']; |
429
608a1784a8ac
Load currently "selected" verwaltungseinheit when changing the selection.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
347
diff
changeset
|
38 |
608a1784a8ac
Load currently "selected" verwaltungseinheit when changing the selection.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
347
diff
changeset
|
39 // Load currently "selected" verwaltungseinheit. This |
608a1784a8ac
Load currently "selected" verwaltungseinheit when changing the selection.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
347
diff
changeset
|
40 // is needed as without having this record the field |
608a1784a8ac
Load currently "selected" verwaltungseinheit when changing the selection.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
347
diff
changeset
|
41 // would only display the raw value (id) of the |
608a1784a8ac
Load currently "selected" verwaltungseinheit when changing the selection.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
347
diff
changeset
|
42 // verwaltungseinheit. |
608a1784a8ac
Load currently "selected" verwaltungseinheit when changing the selection.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
347
diff
changeset
|
43 var verw = Ext.getStore('Verwaltungseinheiten'); |
432
f4185f2d1a7c
Only load verwaltungseinheit if there is a selected ort.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
430
diff
changeset
|
44 if (ort) { |
f4185f2d1a7c
Only load verwaltungseinheit if there is a selected ort.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
430
diff
changeset
|
45 verw.load({ |
f4185f2d1a7c
Only load verwaltungseinheit if there is a selected ort.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
430
diff
changeset
|
46 id: ort.get('gemId') |
f4185f2d1a7c
Only load verwaltungseinheit if there is a selected ort.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
430
diff
changeset
|
47 }); |
f4185f2d1a7c
Only load verwaltungseinheit if there is a selected ort.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
430
diff
changeset
|
48 } |
429
608a1784a8ac
Load currently "selected" verwaltungseinheit when changing the selection.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
347
diff
changeset
|
49 |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
50 var form = this.getForm(); |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
51 if ( ort != undefined ) { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
52 for (var i = fields.length - 1; i >= 0; i--){ |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
53 ffield = form.findField("ort_"+fields[i]); |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
54 ffield.setValue(ort.get(fields[i])); |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
55 } |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
56 } |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
57 } |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
58 } |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
59 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
60 { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
61 xtype: 'textfield', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
62 name: 'ortsTyp', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
63 maxLength: 1, |
154
16ba7e2465fd
Implemented creating and editing new l_ort. Created editing orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
149
diff
changeset
|
64 fieldLabel: 'Typ' |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
65 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
66 { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
67 xtype: 'textareafield', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
68 name: 'ortszusatztext', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
69 maxLength: 100, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
70 fieldLabel: 'Ortszusatz' |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
71 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
72 { |
447
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
73 xtype: 'button', |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
74 name: 'newort', |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
75 text: 'Neuen Ort Anlegen', |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
76 hidden: this.edit, |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
77 action: 'newort' |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
78 }, |
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
79 { |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
80 xtype: 'fieldset', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
81 title: 'Ortsangaben', |
447
12231f31c112
Apply new workflow in orte dialog.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
432
diff
changeset
|
82 hidden: !this.edit, |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
83 defaults: { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
84 labelWidth: 150 |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
85 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
86 items: [ |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
87 { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
88 xtype: 'textfield', |
278
d6d74718a102
Clientseitige Überprüfung der Datenfelder hinzugefügt: Nutzung von "numberfields" bei Zahlenwerten, maxLength, min/maxValue
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
154
diff
changeset
|
89 maxLength: 100, |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
90 name: 'ort_beschreibung', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
91 fieldLabel: 'Beschreibung' |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
92 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
93 { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
94 xtype: 'textfield', |
278
d6d74718a102
Clientseitige Überprüfung der Datenfelder hinzugefügt: Nutzung von "numberfields" bei Zahlenwerten, maxLength, min/maxValue
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
154
diff
changeset
|
95 maxLength: 10, |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
96 name: 'ort_bezeichnung', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
97 fieldLabel: 'Bezeichnung' |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
98 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
99 { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
100 xtype: 'staat', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
101 name: 'ort_staatId', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
102 fieldLabel: 'Staat' |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
103 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
104 { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
105 xtype: 'verwaltungseinheiten', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
106 name: 'ort_gemId', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
107 fieldLabel: 'Gemeinde' |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
108 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
109 { |
278
d6d74718a102
Clientseitige Überprüfung der Datenfelder hinzugefügt: Nutzung von "numberfields" bei Zahlenwerten, maxLength, min/maxValue
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
154
diff
changeset
|
110 xtype: 'numberfield', |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
111 name: 'ort_latitude', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
112 fieldLabel: 'Lat' |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
113 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
114 { |
278
d6d74718a102
Clientseitige Überprüfung der Datenfelder hinzugefügt: Nutzung von "numberfields" bei Zahlenwerten, maxLength, min/maxValue
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
154
diff
changeset
|
115 xtype: 'numberfield', |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
116 name: 'ort_longitude', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
117 fieldLabel: 'Lon' |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
118 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
119 { |
278
d6d74718a102
Clientseitige Überprüfung der Datenfelder hinzugefügt: Nutzung von "numberfields" bei Zahlenwerten, maxLength, min/maxValue
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
154
diff
changeset
|
120 xtype: 'numberfield', |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
121 name: 'ort_hoeheLand', |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
122 fieldLabel: 'Höhe' |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
123 } |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
124 ] |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
125 } |
109
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
126 ]; |
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
127 this.callParent(); |
149
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
128 }, |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
129 updateOrtInfo: function(field, oldv, newv, opts) { |
26ac4c99f8c4
Added Orte.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
109
diff
changeset
|
130 console.log(field, oldv, newv, opts); |
109
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
131 } |
2308094f5a8c
Added forms to add Orte
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
132 }); |