annotate app/controller/grid/MessungList.js @ 1412:dc90e2997071

Merged branch release-2.5 into default.
author Tom Gottfried <tom@intevation.de>
date Mon, 27 Mar 2017 16:50:00 +0200
parents 69ebd572fe5c
children
rev   line source
1076
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
2 * Software engineering by Intevation GmbH
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
3 *
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
4 * This file is Free Software under the GNU GPL (v>=3)
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
6 * the documentation coming with IMIS-Labordaten-Application for details.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
7 */
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
8
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
9 /**
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
10 * Controller for the MessungList result grid.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
11 */
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
12 Ext.define('Lada.controller.grid.MessungList', {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
13 extend: 'Ext.app.Controller',
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
14 requires: [
1157
056ffbc2790a Add more missing requirements.
Tom Gottfried <tom@intevation.de>
parents: 1120
diff changeset
15 'Lada.view.window.SetStatus',
1076
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
16 'Lada.view.window.ProbeEdit'
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
17 ],
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
18
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
19 /**
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
20 * Initialize the Controller with listeners
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
21 */
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
22 init: function() {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
23 this.control({
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
24 'messunglistgrid': {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
25 itemdblclick: this.editItem,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
26 select: this.activateButtons,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27 deselect: this.deactivateButtons
1082
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
28 },
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
29 'messunglistgrid toolbar button[action=setstatus]': {
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
30 click: this.setStatus
1400
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
31 },
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
32 'messunglistgrid pagingtoolbar': {
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
33 change: this.pageChange
1076
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
34 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
35 });
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
36 this.callParent(arguments);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
37 },
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
38
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
39 /**
1082
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
40 * Sets the Status on Bulk
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
41 **/
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
42 setStatus: function(button) {
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
43 //disable Button and setLoading...
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
44
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
45 var grid = button.up('grid');
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
46 var selection = grid.getView().getSelectionModel().getSelection();
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
47 var i18n = Lada.getApplication().bundle;
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
48
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
49 var win = Ext.create('Lada.view.window.SetStatus', {
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
50 title: i18n.getMsg('statusSetzen.win.title'),
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
51 grid: grid,
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
52 modal: true,
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
53 selection: selection
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
54 });
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
55
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
56 win.show();
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
57
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
58 },
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
59
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
60
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
61 /**
1076
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
62 * This function is called after a Row in the
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
63 * {@link Lada.view.grid.ProbeList}
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
64 * was double-clicked.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
65 * The function opens a {@link Lada.view.window.ProbeEdit}
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
66 * or a {@link Lada.view.window.Messprogramm}.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
67 * To determine which window has to be opened, the function
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
68 * analyse the records modelname.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
69 */
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
70 editItem: function(grid, record) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
71 var probeRecord = Ext.create('Lada.model.ProbeList');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
72 probeRecord.setId(record.get('probeId'));
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
73 probeRecord.set('owner', record.get('owner'));
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
74 probeRecord.set('readonly', record.get('readonly'));
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
75
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
76 var probeWin = Ext.create('Lada.view.window.ProbeEdit', {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
77 record: probeRecord,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
78 style: 'z-index: -1;' //Fixes an Issue where windows could not be created in IE8
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
79 });
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
80
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
81 probeWin.setPosition(30);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
82 probeWin.show();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
83 probeWin.initData();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
84
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
85 Ext.ClassManager.get('Lada.model.Probe').load(record.get('probeId'), {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
86 failure: function(record, action) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
87 me.setLoading(false);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
88 // TODO
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
89 console.log('An unhandled Failure occured. See following Response and Record');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
90 console.log(action);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
91 console.log(record);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
92 },
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
93 success: function(precord, response) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
94 var messungWin = Ext.create('Lada.view.window.MessungEdit', {
1120
0a032c98c3a6 Use correct parent window reference for messung windows.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1082
diff changeset
95 parentWindow: probeWin,
1076
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
96 probe: precord,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
97 record: record,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
98 grid: grid
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
99 });
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
100 messungWin.show();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
101 messungWin.setPosition(window.innerWidth - 30 - messungWin.width);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
102 messungWin.initData();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
103 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
104 });
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
105 },
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
106
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
107 /**
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
108 * Send the selection to a Printservice
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
109 */
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
110 printSelection: function(button) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
111
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
112 //disable Button and setLoading...
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
113 button.disable();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
114 button.setLoading(true);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
115
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
116 var grid = button.up('grid');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
117 var selection = grid.getView().getSelectionModel().getSelection();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
118 var i18n = Lada.getApplication().bundle;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
119 var me = this;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
120 var columns = [];
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
121 var columnNames = [];
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
122 var visibleColumns = [];
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
123 var displayName = '';
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
124 var data = [];
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
125
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
126 // Write the columns to an array
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
127 try {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
128 for (key in selection[0].data) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
129 // Do not write owner or readonly or id
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
130 if (["owner", "readonly", "id", "probeId"].indexOf(key) == -1){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
131 columns.push(key);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
132 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
133 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
134 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
135 catch (e) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
136 console.log(e);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
137 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
138
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
139 //Retrieve visible columns' id's and names.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
140 // and set displayName
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
141 try {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
142 var grid = button.up('grid');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
143 var cman = grid.columnManager;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
144 var cols = cman.getColumns();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
145
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
146 displayName = grid.down('tbtext').text;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
147
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
148 for (key in cols) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
149 if (cols[key].dataIndex) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
150 visibleColumns[cols[key].dataIndex] = cols[key].text;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
151 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
152 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
153 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
154 catch (e) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
155 console.log(e);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
156 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
157
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
158
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
159 // Retrieve Data from selection
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
160 try {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
161 for (item in selection) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
162 var row = selection[item].data;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
163 var out = [];
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
164 //Lookup every column and write to data array.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
165 for (key in columns){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
166 var attr = columns[key];
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
167 //Only write data to output when the column is not hidden.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
168 if (row[attr] != null &&
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
169 visibleColumns[attr] != null) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
170 out.push(row[attr].toString());
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
171 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
172 else if (visibleColumns[attr] != null) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
173 out.push('');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
174 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
175 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
176 data.push(out);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
177 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
178 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
179 catch (e){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
180 console.log(e);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
181 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
182
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
183 //Retrieve the names of the columns.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
184 try {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
185 var grid = button.up('grid');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
186 var cman = grid.columnManager;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
187 var cols = cman.getColumns();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
188 //Iterate columns and find column names for the key...
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
189 // This WILL run into bad behaviour when column-keys exist twice.
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
190 for (key in columns){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
191 for (k in cols){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
192 if (cols[k].dataIndex == columns[key]){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
193 columnNames.push(cols[k].text);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
194 break;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
195 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
196 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
197 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
198 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
199 catch (e) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
200 console.log(e);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
201 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
202
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
203 var printData = {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
204 'layout': 'A4 landscape',
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
205 'outputFormat': 'pdf',
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
206 'attributes': {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
207 'title': 'Auszug aus LADA',
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
208 'displayName': displayName,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
209 'table': {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
210 'columns': columnNames,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
211 'data': data
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
212 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
213 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
214 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
215
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
216 Ext.Ajax.request({
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
217 url: 'lada-printer/buildreport.pdf',
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
218 //configure a proxy in apache conf!
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
219 jsonData: printData,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
220 binary: true,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
221 success: function(response) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
222 var content = response.responseBytes;
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
223 var filetype = response.getResponseHeader('Content-Type');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
224 var blob = new Blob([content],{type: filetype});
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
225 saveAs(blob, 'lada-print.pdf');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
226 button.enable();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
227 button.setLoading(false);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
228 },
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
229 failure: function(response) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
230 console.log('failure');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
231 // Error handling
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
232 // TODO
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
233 //console.log(response.responseText)
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
234 button.enable();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
235 button.setLoading(false);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
236 if (response.responseText) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
237 try {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
238 var json = Ext.JSON.decode(response.responseText);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
239 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
240 catch(e){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
241 console.log(e);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
242 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
243 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
244 if (json) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
245 if(json.errors.totalCount > 0 || json.warnings.totalCount > 0){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
246 formPanel.setMessages(json.errors, json.warnings);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
247 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
248 if(json.message){
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
249 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.generic.title')
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
250 +' #'+json.message,
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
251 Lada.getApplication().bundle.getMsg(json.message));
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
252 } else {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
253 Ext.Msg.alert(i18n.getMsg('err.msg.generic.title'),
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
254 i18n.getMsg('err.msg.print.noContact'));
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
255 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
256 } else {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
257 Ext.Msg.alert(i18n.getMsg('err.msg.generic.title'),
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
258 i18n.getMsg('err.msg.print.noContact'));
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
259 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
260 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
261 });
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
262 },
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
263
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
264 /**
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
265 * Toggles the buttons in the toolbar
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
266 **/
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
267 activateButtons: function(rowModel, record) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
268 var grid = rowModel.view.up('grid');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
269 this.buttonToggle(true, grid);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
270 },
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
271
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
272 /**
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
273 * Toggles the buttons in the toolbar
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
274 **/
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
275 deactivateButtons: function(rowModel, record) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
276 var grid = rowModel.view.up('grid');
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
277 // Only disable buttons when nothing is selected
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
278 if (rowModel.selected.items == 0) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
279 this.buttonToggle(false, grid);
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
280 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
281 },
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
282
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
283 /**
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
284 * Enables/Disables a set of buttons
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
285 **/
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
286 buttonToggle: function(enabled, grid) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
287 if (!enabled) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
288 grid.down('button[action=print]').disable();
1082
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
289 grid.down('button[action=setstatus]').disable();
1076
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
290 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
291 else {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
292 grid.down('button[action=print]').enable();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
293 // TODO: enable button only on messungen with owner == true and
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
294 // readonly == false
1082
dbd435256f77 Open status edit window and send status objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1076
diff changeset
295 grid.down('button[action=setstatus]').enable();
1076
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
296 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
297 },
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
298
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
299 reload: function(btn) {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
300 if (btn === 'yes') {
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
301 location.reload();
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
302 }
1400
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
303 },
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
304
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
305 pageChange: function(toolbar) {
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
306 var grid = toolbar.up('grid');
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
307 var store = grid.getStore();
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
308 var rowExpander = grid.plugins[0]
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
309 var nodes = rowExpander.view.getNodes();
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
310 for (var i = 0; i < nodes.length; i++) {
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
311 var node = Ext.fly(nodes[i]);
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
312 if (node.hasCls(rowExpander.rowCollapsedCls) === false) {
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
313 rowExpander.toggleRow(i, store.getAt(i));
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
314 }
69ebd572fe5c Collapse rows on page change in probe and messung filter grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1157
diff changeset
315 }
1076
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
316 }
e32c10cf5499 Added model/store, view and controller for messung list.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
317 });

http://lada.wald.intevation.org