Mercurial > lada > lada-client
annotate app/view/grid/Status.js @ 996:bf7bb9583a40
Statusworkflow: More work on the reset Button
author | Dustin Demuth <dustin@intevation.de> |
---|---|
date | Fri, 08 Jan 2016 14:34:27 +0100 |
parents | 092e245b13a4 |
children | 4bbb3da88c14 |
rev | line source |
---|---|
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
3 * |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 */ |
89b337cbfb5d
Added status grid and controller.
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 /** |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 * Grid to list Status |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
11 */ |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 Ext.define('Lada.view.grid.Status', { |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 extend: 'Ext.grid.Panel', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 alias: 'widget.statusgrid', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 maxHeight: 350, |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
17 emptyText: 'Keine Statusangaben gefunden.', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
18 minHeight: 110, |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 viewConfig: { |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 deferEmptyText: false |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 }, |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 recordId: null, |
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:
799
diff
changeset
|
24 readOnly: true, |
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:
799
diff
changeset
|
25 allowDeselect: true, |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 initComponent: function() { |
963
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
28 var statusWerteStore = Ext.create('Lada.store.StatusWerte'); |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
29 statusWerteStore.load({ |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
30 params: { |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
31 messungsId: this.recordId |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
32 } |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
33 }); |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
34 var statusStufeStore = Ext.create('Lada.store.StatusStufe'); |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
35 statusStufeStore.load(); |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
36 |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
37 this.rowEditing = Ext.create('Ext.grid.plugin.RowEditing', { |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 clicksToMoveEditor: 1, |
683
612f4f933083
Made Grid-Rows uneditable if the dataset contains readonly=true. This only affects the Grids using the RowEdit Plugin
Dustin Demuth <dustin@intevation.de>
parents:
663
diff
changeset
|
39 autoCancel: false, |
990
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
40 disabled: true, //has no effect... but why? |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
41 pluginId: 'rowedit', |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
42 listeners: { |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
43 beforeedit: function(editor, context, eOpts) { |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
44 if (context.record.get('id') || |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
45 ! context.grid.up('window').record.get('statusEdit')) { |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
46 //Check if edit is allowed, this is true, when the selected |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
47 // Record has an id (=is not new) |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
48 // or is not allowed to add records. |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
49 |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
50 return false; |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
51 } |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
52 |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
53 |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
54 } |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
55 } |
945
023e622f9551
Added the ability to work with "StatusWerten" which are delivered by the lada-server.
Dustin Demuth <dustin@intevation.de>
parents:
944
diff
changeset
|
56 }); |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
57 this.plugins = [this.rowEditing]; |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
58 |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
59 this.dockedItems = [{ |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
60 xtype: 'toolbar', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
61 dock: 'bottom', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
62 items: ['->', { |
994
092e245b13a4
draft implementation of the status-reset function: Todo: move this into a 'confirmation dialog'
Dustin Demuth <dustin@intevation.de>
parents:
990
diff
changeset
|
63 text: 'Zurücksetzen', |
092e245b13a4
draft implementation of the status-reset function: Todo: move this into a 'confirmation dialog'
Dustin Demuth <dustin@intevation.de>
parents:
990
diff
changeset
|
64 icon: 'resources/img/edit-redo.png', |
092e245b13a4
draft implementation of the status-reset function: Todo: move this into a 'confirmation dialog'
Dustin Demuth <dustin@intevation.de>
parents:
990
diff
changeset
|
65 action: 'reset', |
092e245b13a4
draft implementation of the status-reset function: Todo: move this into a 'confirmation dialog'
Dustin Demuth <dustin@intevation.de>
parents:
990
diff
changeset
|
66 probeId: this.probeId, |
092e245b13a4
draft implementation of the status-reset function: Todo: move this into a 'confirmation dialog'
Dustin Demuth <dustin@intevation.de>
parents:
990
diff
changeset
|
67 parentId: this.parentId |
092e245b13a4
draft implementation of the status-reset function: Todo: move this into a 'confirmation dialog'
Dustin Demuth <dustin@intevation.de>
parents:
990
diff
changeset
|
68 }, { |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
69 text: 'Hinzufügen', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
70 icon: 'resources/img/list-add.png', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
71 action: 'add', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
72 probeId: this.probeId, |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 parentId: this.parentId |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
74 }] |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
75 }]; |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
76 this.columns = [{ |
944 | 77 header: 'erstellt', |
945
023e622f9551
Added the ability to work with "StatusWerten" which are delivered by the lada-server.
Dustin Demuth <dustin@intevation.de>
parents:
944
diff
changeset
|
78 dataIndex: 'datum', |
944 | 79 xtype: 'datecolumn', |
80 format: 'd.m.Y H:i', | |
81 width: 110, | |
965
a2c2039bb5d9
Disabled StatusGrid Edit when StatusEdit ist false, Load StatuswerteStore differently, removed a bunch of trailing commas
Dustin Demuth <dustin@intevation.de>
parents:
964
diff
changeset
|
82 sortable: false |
944 | 83 }, { |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
84 header: 'Erzeuger', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
85 dataIndex: 'erzeuger', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
86 renderer: function(value) { |
961
6f1cc3316e2d
Intermediate Result. When creating a Messung a Statuswert will be set.
Dustin Demuth <dustin@intevation.de>
parents:
958
diff
changeset
|
87 var r = ''; |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
88 if (!value || value === '') { |
961
6f1cc3316e2d
Intermediate Result. When creating a Messung a Statuswert will be set.
Dustin Demuth <dustin@intevation.de>
parents:
958
diff
changeset
|
89 r = 'Error'; |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
90 } |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
91 var mstore = Ext.data.StoreManager.get('messstellen'); |
961
6f1cc3316e2d
Intermediate Result. When creating a Messung a Statuswert will be set.
Dustin Demuth <dustin@intevation.de>
parents:
958
diff
changeset
|
92 var item = mstore.getById(value); |
6f1cc3316e2d
Intermediate Result. When creating a Messung a Statuswert will be set.
Dustin Demuth <dustin@intevation.de>
parents:
958
diff
changeset
|
93 if (item) { |
6f1cc3316e2d
Intermediate Result. When creating a Messung a Statuswert will be set.
Dustin Demuth <dustin@intevation.de>
parents:
958
diff
changeset
|
94 r = item.get('messStelle'); |
6f1cc3316e2d
Intermediate Result. When creating a Messung a Statuswert will be set.
Dustin Demuth <dustin@intevation.de>
parents:
958
diff
changeset
|
95 } |
6f1cc3316e2d
Intermediate Result. When creating a Messung a Statuswert will be set.
Dustin Demuth <dustin@intevation.de>
parents:
958
diff
changeset
|
96 return r; |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
97 }, |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
98 editor: { |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
99 xtype: 'combobox', |
967
50d7b6e17525
Filter the selectable Messtellen in the statusgrid
Dustin Demuth <dustin@intevation.de>
parents:
965
diff
changeset
|
100 store: Ext.data.StoreManager.get('messstellenFiltered'), |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
101 displayField: 'messStelle', |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
102 valueField: 'id', |
663
1c5a4b419149
Field Validity in Status Grid
Dustin Demuth <dustin@intevation.de>
parents:
630
diff
changeset
|
103 allowBlank: false, |
1c5a4b419149
Field Validity in Status Grid
Dustin Demuth <dustin@intevation.de>
parents:
630
diff
changeset
|
104 editable: false |
945
023e622f9551
Added the ability to work with "StatusWerten" which are delivered by the lada-server.
Dustin Demuth <dustin@intevation.de>
parents:
944
diff
changeset
|
105 }, |
965
a2c2039bb5d9
Disabled StatusGrid Edit when StatusEdit ist false, Load StatuswerteStore differently, removed a bunch of trailing commas
Dustin Demuth <dustin@intevation.de>
parents:
964
diff
changeset
|
106 sortable: false |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
107 }, { |
956
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
108 header: 'Stufe', |
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
109 dataIndex: 'statusStufe', |
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
110 renderer: function(value) { |
963
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
111 var sta = Ext.data.StoreManager.get('statusstufe'); |
958
5d57c6c53e20
Made the grids more robust against erroneous data
Dustin Demuth <dustin@intevation.de>
parents:
957
diff
changeset
|
112 var r; |
957
881984972e0e
Added Statusstufe to MessungForm
Dustin Demuth <dustin@intevation.de>
parents:
956
diff
changeset
|
113 if (value===null || value === '') { |
958
5d57c6c53e20
Made the grids more robust against erroneous data
Dustin Demuth <dustin@intevation.de>
parents:
957
diff
changeset
|
114 r = 'Error'; |
956
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
115 } |
963
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
116 var item = sta.getById(value); |
957
881984972e0e
Added Statusstufe to MessungForm
Dustin Demuth <dustin@intevation.de>
parents:
956
diff
changeset
|
117 if (item) { |
881984972e0e
Added Statusstufe to MessungForm
Dustin Demuth <dustin@intevation.de>
parents:
956
diff
changeset
|
118 r = item.get('stufe'); |
881984972e0e
Added Statusstufe to MessungForm
Dustin Demuth <dustin@intevation.de>
parents:
956
diff
changeset
|
119 } |
956
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
120 return r; |
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
121 }, |
965
a2c2039bb5d9
Disabled StatusGrid Edit when StatusEdit ist false, Load StatuswerteStore differently, removed a bunch of trailing commas
Dustin Demuth <dustin@intevation.de>
parents:
964
diff
changeset
|
122 sortable: false |
956
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
123 }, { |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
124 header: 'Status', |
945
023e622f9551
Added the ability to work with "StatusWerten" which are delivered by the lada-server.
Dustin Demuth <dustin@intevation.de>
parents:
944
diff
changeset
|
125 dataIndex: 'statusWert', |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
126 renderer: function(value) { |
963
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
127 var sta = Ext.data.StoreManager.get('statuswerte'); |
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
128 //This store is NOT used in the editor... |
958
5d57c6c53e20
Made the grids more robust against erroneous data
Dustin Demuth <dustin@intevation.de>
parents:
957
diff
changeset
|
129 var r; |
950
c7bf0b459074
Fixed some issues when the status is null
Dustin Demuth <dustin@intevation.de>
parents:
945
diff
changeset
|
130 if (value===null || value === '') { |
958
5d57c6c53e20
Made the grids more robust against erroneous data
Dustin Demuth <dustin@intevation.de>
parents:
957
diff
changeset
|
131 r = 'Error'; |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
132 } |
963
6a6f2c6fe8ee
More work done on StatusWerte and Statusstufe. A Messung will also open when the owner attribute is true. Stauswerte and StatusStufen are loaded at application startup. Statusgrid and Messunggrid now use these stores, which were registered at the store manager.
Dustin Demuth <dustin@intevation.de>
parents:
961
diff
changeset
|
133 var item = sta.getById(value); |
957
881984972e0e
Added Statusstufe to MessungForm
Dustin Demuth <dustin@intevation.de>
parents:
956
diff
changeset
|
134 if (item) { |
881984972e0e
Added Statusstufe to MessungForm
Dustin Demuth <dustin@intevation.de>
parents:
956
diff
changeset
|
135 r = item.get('wert'); |
881984972e0e
Added Statusstufe to MessungForm
Dustin Demuth <dustin@intevation.de>
parents:
956
diff
changeset
|
136 } |
956
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
137 return r; |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
138 }, |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
139 editor: { |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
140 xtype: 'combobox', |
956
45c67a784b31
Added StatusStufe to the StatusGrid. Created Store and Model for StatusStufe
Dustin Demuth <dustin@intevation.de>
parents:
950
diff
changeset
|
141 store: statusWerteStore, |
968
8fabf9a3fee7
Make a local query for the statusWerteStore
Dustin Demuth <dustin@intevation.de>
parents:
967
diff
changeset
|
142 queryMode: 'local', |
945
023e622f9551
Added the ability to work with "StatusWerten" which are delivered by the lada-server.
Dustin Demuth <dustin@intevation.de>
parents:
944
diff
changeset
|
143 displayField: 'wert', |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
144 valueField: 'id', |
663
1c5a4b419149
Field Validity in Status Grid
Dustin Demuth <dustin@intevation.de>
parents:
630
diff
changeset
|
145 allowBlank: false, |
1c5a4b419149
Field Validity in Status Grid
Dustin Demuth <dustin@intevation.de>
parents:
630
diff
changeset
|
146 editable: false |
945
023e622f9551
Added the ability to work with "StatusWerten" which are delivered by the lada-server.
Dustin Demuth <dustin@intevation.de>
parents:
944
diff
changeset
|
147 }, |
965
a2c2039bb5d9
Disabled StatusGrid Edit when StatusEdit ist false, Load StatuswerteStore differently, removed a bunch of trailing commas
Dustin Demuth <dustin@intevation.de>
parents:
964
diff
changeset
|
148 sortable: false |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
149 }, { |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
150 header: 'Text', |
945
023e622f9551
Added the ability to work with "StatusWerten" which are delivered by the lada-server.
Dustin Demuth <dustin@intevation.de>
parents:
944
diff
changeset
|
151 dataIndex: 'text', |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
152 flex: 1, |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
153 editor: { |
663
1c5a4b419149
Field Validity in Status Grid
Dustin Demuth <dustin@intevation.de>
parents:
630
diff
changeset
|
154 allowBlank: true, |
1c5a4b419149
Field Validity in Status Grid
Dustin Demuth <dustin@intevation.de>
parents:
630
diff
changeset
|
155 maxLength: 1000, |
1c5a4b419149
Field Validity in Status Grid
Dustin Demuth <dustin@intevation.de>
parents:
630
diff
changeset
|
156 enforceMaxLength: true |
945
023e622f9551
Added the ability to work with "StatusWerten" which are delivered by the lada-server.
Dustin Demuth <dustin@intevation.de>
parents:
944
diff
changeset
|
157 }, |
965
a2c2039bb5d9
Disabled StatusGrid Edit when StatusEdit ist false, Load StatuswerteStore differently, removed a bunch of trailing commas
Dustin Demuth <dustin@intevation.de>
parents:
964
diff
changeset
|
158 sortable: false |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
159 }]; |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
160 this.initData(); |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
161 this.callParent(arguments); |
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:
799
diff
changeset
|
162 this.setReadOnly(true); //Grid is always initialised as RO |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
163 }, |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
164 |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
165 initData: function() { |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
166 if (this.store) { |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
167 this.store.removeAll(); |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
168 } |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
169 else { |
990
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
170 this.store = Ext.create('Lada.store.Status',{ |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
171 sorters: [{ |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
172 property: 'datum', |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
173 direction: 'ASC' |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
174 }] |
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
175 }); |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
176 } |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
177 this.store.load({ |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
178 params: { |
990
c2a726887dd7
The last status can not be edited anymore. When a new status is added, the new record is preset with ALL previous variables, this includes the StatusStufe! The Date is corrected to the current date. Also the store is sorted by Datum now.
Dustin Demuth <dustin@intevation.de>
parents:
969
diff
changeset
|
179 messungsId: this.recordId, |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
180 } |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
181 }); |
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:
683
diff
changeset
|
182 }, |
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:
683
diff
changeset
|
183 |
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:
683
diff
changeset
|
184 setReadOnly: function(b) { |
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:
683
diff
changeset
|
185 if (b == true){ |
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:
683
diff
changeset
|
186 //Readonly |
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:
683
diff
changeset
|
187 this.down('button[action=add]').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:
683
diff
changeset
|
188 }else{ |
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:
683
diff
changeset
|
189 //Writable |
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:
683
diff
changeset
|
190 this.down('button[action=add]').enable(); |
996
bf7bb9583a40
Statusworkflow: More work on the reset Button
Dustin Demuth <dustin@intevation.de>
parents:
994
diff
changeset
|
191 } |
bf7bb9583a40
Statusworkflow: More work on the reset Button
Dustin Demuth <dustin@intevation.de>
parents:
994
diff
changeset
|
192 }, |
bf7bb9583a40
Statusworkflow: More work on the reset Button
Dustin Demuth <dustin@intevation.de>
parents:
994
diff
changeset
|
193 |
bf7bb9583a40
Statusworkflow: More work on the reset Button
Dustin Demuth <dustin@intevation.de>
parents:
994
diff
changeset
|
194 setResetable: function(b) { |
bf7bb9583a40
Statusworkflow: More work on the reset Button
Dustin Demuth <dustin@intevation.de>
parents:
994
diff
changeset
|
195 if (b == true){ |
994
092e245b13a4
draft implementation of the status-reset function: Todo: move this into a 'confirmation dialog'
Dustin Demuth <dustin@intevation.de>
parents:
990
diff
changeset
|
196 this.down('button[action=reset]').enable(); |
996
bf7bb9583a40
Statusworkflow: More work on the reset Button
Dustin Demuth <dustin@intevation.de>
parents:
994
diff
changeset
|
197 }else{ |
bf7bb9583a40
Statusworkflow: More work on the reset Button
Dustin Demuth <dustin@intevation.de>
parents:
994
diff
changeset
|
198 this.down('button[action=reset]').disable(); |
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:
683
diff
changeset
|
199 } |
594
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
200 } |
89b337cbfb5d
Added status grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
201 }); |