annotate app/controller/grid/Datensatzerzeuger.js @ 1018:418e25969a16

Serve roles on different ports for easier testing.
author Tom Gottfried <tom@intevation.de>
date Thu, 04 Feb 2016 14:16:43 +0100
parents 15d8c64049d1
children 77e22ad5cc84
rev   line source
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
2 * Software engineering by Intevation GmbH
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
3 *
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
4 * This file is Free Software under the GNU GPL (v>=3)
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
6 * the documentation coming with IMIS-Labordaten-Application for details.
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
7 */
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
8
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
9 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
10 * This is a controller for a grid of Datensatzerzeuger Stammdaten
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
11 */
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
12 Ext.define('Lada.controller.grid.Datensatzerzeuger', {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
13 extend: 'Ext.app.Controller',
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
14
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
15 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
16 * Inhitialize the controller
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
17 * It has 3 listeners
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
18 */
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
19 init: function() {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
20 this.control({
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
21 'datensatzerzeugergrid': {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
22 edit: this.gridSave,
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
23 canceledit: this.cancelEdit,
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
24 select: this.activateButtons,
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
25 deselect: this.deactivateButtons
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
26 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
27 'datensatzerzeugergrid button[action=add]': {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
28 click: this.add
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
29 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
30 'datensatzerzeugergrid button[action=delete]': {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
31 click: this.remove
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
32 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
33 });
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
34 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
35
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
36 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
37 * This function is called when the grids roweditor saves
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
38 * the record.
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
39 * On success it refreshes the windows which contains the grid
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
40 * On failure it displays a message
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
41 */
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
42 gridSave: function(editor, context) {
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
43 var i18n = Lada.getApplication().bundle;
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
44 context.record.save({
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
45 success: function(record, response) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
46 //Do Nothing
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
47 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
48 failure: function(record, response) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
49 var json = response.request.scope.reader.jsonData;
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
50 if (json) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
51 if (json.message){
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
52 Ext.Msg.alert(i18n.getMsg('err.msg.save.title')
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
53 +' #'+json.message,
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
54 i18n.getMsg(json.message));
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
55 } else {
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
56 Ext.Msg.alert(i18n.getMsg('err.msg.save.title'),
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
57 i18n.getMsg('err.msg.generic.body'));
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
58 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
59 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
60 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
61 });
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
62 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
63
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
64 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
65 * When the edit was canceled,
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
66 * the empty row might have been created by the roweditor is removed
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
67 */
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
68 cancelEdit: function(editor, context) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
69 if (!context.record.get('id') ||
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
70 context.record.get('id') === '') {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
71 editor.getCmp().store.remove(context.record);
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
72 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
73 context.grid.getSelectionModel().deselect(context.record);
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
74 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
75
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
76 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
77 * This function adds a new row to add a Datensatzerzeuger
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
78 */
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
79 add: function(button) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
80 var record = Ext.create('Lada.model.DatensatzErzeuger');
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
81 button.up('datensatzerzeugergrid').store.insert(0, record);
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
82 button.up('datensatzerzeugergrid').rowEditing.startEdit(0, 1);
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
83 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
84
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
85 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
86 * A record can be removed from the grid with the remove
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
87 * function. It asks the user for confirmation
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
88 * If the removal was confirmed, it reloads the parent window on success,
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
89 * on failure, an error message is shown.
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
90 */
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
91 remove: function(button) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
92 var grid = button.up('grid');
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
93 var selection = grid.getView().getSelectionModel().getSelection()[0];
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
94 var i18n = Lada.getApplication().bundle;
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
95 //TODO: i18n
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
96 Ext.MessageBox.confirm(i18n.getMsg('delete'),
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
97 i18n.getMsg('confirmation.question'),
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
98 function(btn) {
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
99 if (btn === 'yes') {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
100 selection.destroy({
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
101 success: function() {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
102 //DO NOTHING
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
103 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
104 failure: function(request, response) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
105 var json = response.request.scope.reader.jsonData;
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
106 if (json) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
107 if (json.message){
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
108 Ext.Msg.alert(i18n.getMsg('err.msg.delete.title')
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
109 +' #'+json.message,
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
110 i18n.getMsg(json.message));
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
111 } else {
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
112 Ext.Msg.alert(i18n.getMsg('err.msg.delete.title'),
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
113 i18n.getMsg('err.msg.generic.body'));
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
114 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
115 } else {
1003
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
116 Ext.Msg.alert(i18n.getMsg('err.msg.delete.title'),
15d8c64049d1 Datensatzerzeuger now uses the server. Added i18n to confirmation messages
Dustin Demuth <dustin@intevation.de>
parents: 984
diff changeset
117 i18n.getMsg('err.msg.response.body'));
984
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
118 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
119 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
120 });
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
121 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
122 });
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
123 grid.down('button[action=delete]').disable();
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
124 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
125 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
126 * Toggles the buttons in the toolbar
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
127 **/
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
128 activateButtons: function(rowModel, record) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
129 var grid = rowModel.view.up('grid');
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
130 this.buttonToggle(true, grid);
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
131 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
132
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
133 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
134 * Toggles the buttons in the toolbar
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
135 **/
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
136 deactivateButtons: function(rowModel, record) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
137 var grid = rowModel.view.up('grid');
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
138 // Only disable buttons when nothing is selected
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
139 if (rowModel.selected.items == 0) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
140 this.buttonToggle(false, grid);
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
141 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
142 },
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
143
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
144 /**
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
145 * Enables/Disables a set of buttons
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
146 **/
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
147 buttonToggle: function(enabled, grid) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
148 if (!enabled) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
149 grid.down('button[action=delete]').disable();
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
150 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
151 else {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
152 if (!grid.getPlugin('rowedit').editing) {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
153 //only enable buttons, when grid is not beeing edited
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
154 grid.down('button[action=delete]').enable();
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
155 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
156 //else turn them off again!
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
157 else {
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
158 this.buttonToggle(false, grid);
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
159 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
160 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
161 }
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
162 });
b21421ba6917 added buttons for datensatzerzeuger, pobenehmer, added controllers
Dustin Demuth <dustin@intevation.de>
parents:
diff changeset
163

http://lada.wald.intevation.org