Mercurial > lada > lada-client
annotate app/view/grid/Ortszuordnung.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 | bfdc00c24baf |
children | 394c722e5402 |
rev | line source |
---|---|
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
3 * |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 */ |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
8 |
893
07dfcdf5b41f
jsduck for grids and panels
Dustin Demuth <dustin@intevation.de>
parents:
824
diff
changeset
|
9 /** |
1004
9ac03f461ab4
Introduced Orte into Stammdatengrids, Added Ortszuordnung. THIS COMMIT IS WORK IN PROGRESS, Proben will NOT work after this commit. Orte can not be edited.
Dustin Demuth <dustin@intevation.de>
parents:
893
diff
changeset
|
10 * Grid to list Ortszuordnungen |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
11 */ |
1004
9ac03f461ab4
Introduced Orte into Stammdatengrids, Added Ortszuordnung. THIS COMMIT IS WORK IN PROGRESS, Proben will NOT work after this commit. Orte can not be edited.
Dustin Demuth <dustin@intevation.de>
parents:
893
diff
changeset
|
12 Ext.define('Lada.view.grid.Ortszuordnung', { |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 extend: 'Ext.grid.Panel', |
1012
2adc329d90fe
Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents:
1004
diff
changeset
|
14 alias: 'widget.ortszuordnunggrid', |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 maxHeight: 350, |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
17 emptyText: 'Keine Orte gefunden.', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
18 // minHeight and deferEmptyText are needed to be able to show the |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 // emptyText message. |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 minHeight: 110, |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 viewConfig: { |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 deferEmptyText: false |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 }, |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 margin: '0, 5, 5, 5', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 recordId: null, |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
28 isMessprogramm: false, |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
29 |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
30 warnings: null, |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
31 errors: null, |
823
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
32 readOnly: true, |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
33 allowDeselect: true, |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 initComponent: function() { |
1264
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
36 var me = this; |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
37 this.dockedItems = [{ |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 xtype: 'toolbar', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 dock: 'bottom', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 items: ['->', { |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 text: 'Hinzufügen', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 icon: 'resources/img/list-add.png', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 action: 'add', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
44 probeId: this.probeId |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 }, { |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
46 text: 'Löschen', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 icon: 'resources/img/list-remove.png', |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 action: 'delete' |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 }] |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
50 }]; |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
51 this.columns = [{ |
1257
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
52 xtype: 'actioncolumn', |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
53 text: '', |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
54 dataIndex: 'readonly', |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
55 sortable: false, |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
56 width: 30, |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
57 getClass: function (val, meta, rec) { |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
58 if (rec.get('readonly') === false) { |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
59 return 'edit'; |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
60 } |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
61 return 'noedit'; |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
62 }, |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
63 handler: function(grid, rowIndex, colIndex) { |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
64 var rec = grid.getStore().getAt(rowIndex); |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
65 grid.fireEvent('itemdblclick', grid, rec); |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
66 } |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
67 }, { |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
68 header: 'Typ', |
1012
2adc329d90fe
Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents:
1004
diff
changeset
|
69 dataIndex: 'ortszuordnungTyp', |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1012
diff
changeset
|
70 flex: 1, |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
71 editor: { |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
72 allowBlank: false |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 } |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
74 }, { |
1257
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
75 header: 'Ort-ID', |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
76 dataIndex: 'ortId', |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
77 flex: 2, |
1274
a792eecf1614
Updated Layout and Map for 'ortsbezug'-window. WIP!
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1264
diff
changeset
|
78 renderer: function(value, meta, zuordnung) { |
1257
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
79 var store = Ext.data.StoreManager.get('orte'); |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
80 var record = store.getById(value); |
1264
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
81 if (!record) { |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
82 record = Ext.create('Lada.model.Ort'); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
83 record.set('id', value); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
84 store.add(record); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
85 Lada.model.Ort.load(value, { |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
86 success: function(rec) { |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
87 record.beginEdit(); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
88 for (key in rec.getData()) { |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
89 record.set(key, rec.getData()[key]); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
90 } |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
91 record.endEdit(); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
92 me.getView().refresh(); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
93 } |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
94 }); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
95 } |
1257
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
96 return record.get('ortId'); |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
97 } |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
98 }, { |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
99 header: 'Staat', |
1012
2adc329d90fe
Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents:
1004
diff
changeset
|
100 dataIndex: 'ortId', |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1012
diff
changeset
|
101 flex: 1, |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
102 renderer: function(value) { |
1004
9ac03f461ab4
Introduced Orte into Stammdatengrids, Added Ortszuordnung. THIS COMMIT IS WORK IN PROGRESS, Proben will NOT work after this commit. Orte can not be edited.
Dustin Demuth <dustin@intevation.de>
parents:
893
diff
changeset
|
103 var store = Ext.data.StoreManager.get('orte'); |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
104 var staaten = Ext.data.StoreManager.get('staaten'); |
1264
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
105 var ortRecord = store.getById(value); |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
106 if (!ortRecord || ortRecord.get('staatId') === '') { |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
107 return ''; |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
108 } |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
109 var record = staaten.getById(ortRecord.get('staatId')); |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
110 return record.get('staatIso'); |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
111 } |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
112 }, { |
1012
2adc329d90fe
Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents:
1004
diff
changeset
|
113 header: 'Gemeindeschlüssel', |
2adc329d90fe
Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents:
1004
diff
changeset
|
114 dataIndex: 'ortId', |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1012
diff
changeset
|
115 flex: 3, |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
116 renderer: function(value) { |
1004
9ac03f461ab4
Introduced Orte into Stammdatengrids, Added Ortszuordnung. THIS COMMIT IS WORK IN PROGRESS, Proben will NOT work after this commit. Orte can not be edited.
Dustin Demuth <dustin@intevation.de>
parents:
893
diff
changeset
|
117 var store = Ext.data.StoreManager.get('orte'); |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
118 var record = store.getById(value); |
1264
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
119 if (!record || record.get('gemId') === '') { |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
120 return ''; |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
121 } |
1004
9ac03f461ab4
Introduced Orte into Stammdatengrids, Added Ortszuordnung. THIS COMMIT IS WORK IN PROGRESS, Proben will NOT work after this commit. Orte can not be edited.
Dustin Demuth <dustin@intevation.de>
parents:
893
diff
changeset
|
122 return record.get('gemId'); |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
123 } |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
124 }, { |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
125 header: 'Gemeindename', |
1012
2adc329d90fe
Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents:
1004
diff
changeset
|
126 dataIndex: 'ortId', |
1021
1df6b6210b42
WIP First Version of a New Window/Panel combination to edit Ortszuordnungen and Orte
Dustin Demuth <dustin@intevation.de>
parents:
1012
diff
changeset
|
127 flex: 4, |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
128 renderer: function(value) { |
1004
9ac03f461ab4
Introduced Orte into Stammdatengrids, Added Ortszuordnung. THIS COMMIT IS WORK IN PROGRESS, Proben will NOT work after this commit. Orte can not be edited.
Dustin Demuth <dustin@intevation.de>
parents:
893
diff
changeset
|
129 var store = Ext.data.StoreManager.get('orte'); |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
130 var gemeinden = |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
131 Ext.data.StoreManager.get('verwaltungseinheiten'); |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
132 var record = store.getById(value); |
1264
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
133 if (!record || record.get('gemId') === '') { |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
134 return ''; |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
135 } |
1004
9ac03f461ab4
Introduced Orte into Stammdatengrids, Added Ortszuordnung. THIS COMMIT IS WORK IN PROGRESS, Proben will NOT work after this commit. Orte can not be edited.
Dustin Demuth <dustin@intevation.de>
parents:
893
diff
changeset
|
136 var gemid = record.get('gemId'); |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
137 var record2 = gemeinden.getById(gemid); |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
138 return record2.get('bezeichnung'); |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
139 } |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
140 }, { |
1257
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
141 header: 'Anlage', |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
142 dataIndex: 'ortId', |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
143 flex: 3, |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
144 renderer: function(value) { |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
145 var store = Ext.data.StoreManager.get('orte'); |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
146 var record = store.getById(value); |
1264
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
147 if (!record || record.get('anlageId') === '') { |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
148 return ''; |
3d83bcb02ee3
Load unknown ort and refresh ortzuordnungs grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1257
diff
changeset
|
149 } |
1257
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
150 return record.get('anlageId'); |
9a428be3907b
add action button in Messung grid and Ortszuordnung grid
Michael Stanko <mstanko@bfs.de>
parents:
1051
diff
changeset
|
151 } |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
152 }]; |
823
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
153 this.listeners = { |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
154 select: { |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
155 fn: this.activateRemoveButton, |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
156 scope: this |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
157 }, |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
158 deselect: { |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
159 fn: this.deactivateRemoveButton, |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
160 scope: this |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
161 } |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
162 }; |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
163 this.initData(); |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
164 this.callParent(arguments); |
823
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
165 this.setReadOnly(true); //Grid is always initialised as RO |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
166 }, |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
167 |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
168 initData: function() { |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
169 if (this.isMessprogramm) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
170 //TODO |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
171 } else { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
172 this.store = Ext.create('Lada.store.Ortszuordnung'); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
173 this.store.load({ |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
174 params: { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
175 probeId: this.recordId |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
176 } |
1289
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
177 }); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
178 Ext.ClassManager.get('Lada.model.Probe').load(this.recordId, { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
179 failure: function(record, action) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
180 // TODO |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
181 }, |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
182 success: function(record, response) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
183 var json = Ext.decode(response.response.responseText); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
184 if (json) { |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
185 this.warnings = json.warnings; |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
186 this.errors = json.errors; |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
187 } |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
188 }, |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
189 scope: this |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
190 }); |
bfdc00c24baf
Ortszuordnung for messprogramm and probe using same form
Maximilian Krambach <mkrambach@intevation.de>
parents:
1274
diff
changeset
|
191 } |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
192 }, |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
193 |
684
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
194 setReadOnly: function(b) { |
1034
4d4de99bbe53
Get rid of double setting readOnly status of probe window child elements.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1004
diff
changeset
|
195 this.readOnly = b; |
4d4de99bbe53
Get rid of double setting readOnly status of probe window child elements.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1004
diff
changeset
|
196 if (b) { |
684
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
197 //Readonly |
1035
479782c96efa
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1034
diff
changeset
|
198 if (this.getPlugin('rowedit')) { |
684
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
199 this.getPlugin('rowedit').disable(); |
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
200 } |
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
201 this.down('button[action=delete]').disable(); |
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
202 this.down('button[action=add]').disable(); |
1035
479782c96efa
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1034
diff
changeset
|
203 } |
479782c96efa
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1034
diff
changeset
|
204 else { |
684
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
205 //Writable |
1035
479782c96efa
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1034
diff
changeset
|
206 if (this.getPlugin('rowedit')) { |
684
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
207 this.getPlugin('rowedit').enable(); |
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
208 } |
824
fab0b7be5aca
add disbled remove button to all grids which relate to proben or messungen. Messprogramme-grids are untouched. BUG: When the last entry is deleted, the button remains active
Dustin Demuth <dustin@intevation.de>
parents:
823
diff
changeset
|
209 //this.down('button[action=delete]').enable(); |
684
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
210 this.down('button[action=add]').enable(); |
69cb367c0a63
When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents:
600
diff
changeset
|
211 } |
823
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
212 }, |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
213 /** |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
214 * Activate the Remove Button |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
215 */ |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
216 activateRemoveButton: function(selection, record) { |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
217 var grid = this; |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
218 //only enable the remove buttone, when the grid is editable. |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
219 if (! grid.readOnly) { |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
220 grid.down('button[action=delete]').enable(); |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
221 } |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
222 }, |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
223 /** |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
224 * Activate the Remove Button |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
225 */ |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
226 deactivateRemoveButton: function(selection, record) { |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
227 var grid = this; |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
228 //only enable the remove buttone, when the grid is editable. |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
229 if (! grid.readOnly) { |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
230 grid.down('button[action=delete]').disable(); |
5ed0e6273888
Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents:
684
diff
changeset
|
231 } |
548
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
232 } |
d47ee7439f44
Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
233 }); |