Mercurial > lada > lada-client
annotate app/controller/grid/Messung.js @ 760:2e7e1a8bf79f
Added a Window and Buttons to generate Proben from a Messprogramm
author | Dustin Demuth <dustin@intevation.de> |
---|---|
date | Fri, 08 May 2015 11:38:00 +0200 |
parents | 6e28ebbe1a73 |
children | 2362f8ab1e9f |
rev | line source |
---|---|
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
3 * |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 */ |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
8 |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
9 /* |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
10 * Controller for a Messungengrid |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
11 */ |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 Ext.define('Lada.controller.grid.Messung', { |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 extend: 'Ext.app.Controller', |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 requires: [ |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 'Lada.view.window.MessungEdit' |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
17 ], |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
18 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
19 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
20 * Inhitialize the controller |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
21 * It has 3 listeners |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
22 */ |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 init: function() { |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 this.control({ |
592
825973ca386f
Updated missing name changes for messung grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
591
diff
changeset
|
25 'messunggrid': { |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 itemdblclick: this.editItem |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 }, |
592
825973ca386f
Updated missing name changes for messung grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
591
diff
changeset
|
28 'messunggrid button[action=add]': { |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
29 click: this.add |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
30 }, |
592
825973ca386f
Updated missing name changes for messung grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
591
diff
changeset
|
31 'messunggrid button[action=delete]': { |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 click: this.remove |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 } |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 }); |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 }, |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
36 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
37 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
38 * This function opens a new {@link Lada.view.window.MessungEdit} |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
39 * Window. |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
40 */ |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 editItem: function(grid, record) { |
690
e88381fb3bdb
Use treeModiefied timestamp to determine if working with 'old' objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
644
diff
changeset
|
42 var probe = grid.up('window').record; |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 var win = Ext.create('Lada.view.window.MessungEdit', { |
690
e88381fb3bdb
Use treeModiefied timestamp to determine if working with 'old' objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
644
diff
changeset
|
44 parentWindow: grid.up('window'), |
e88381fb3bdb
Use treeModiefied timestamp to determine if working with 'old' objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
644
diff
changeset
|
45 probe: probe, |
644
71e8b84d7829
Reload grids on messung or ort changed/added.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
622
diff
changeset
|
46 record: record, |
71e8b84d7829
Reload grids on messung or ort changed/added.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
622
diff
changeset
|
47 grid: grid |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 }); |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 win.show(); |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
50 win.initData(); |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
51 }, |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
52 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
53 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
54 * This function opens a window add a Messung |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
55 */ |
622
ee92e352be20
Open messung create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
592
diff
changeset
|
56 add: function(button) { |
ee92e352be20
Open messung create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
592
diff
changeset
|
57 var probe = button.up('window').record; |
ee92e352be20
Open messung create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
592
diff
changeset
|
58 var win = Ext.create('Lada.view.window.MessungCreate', { |
644
71e8b84d7829
Reload grids on messung or ort changed/added.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
622
diff
changeset
|
59 record: probe, |
71e8b84d7829
Reload grids on messung or ort changed/added.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
622
diff
changeset
|
60 grid: button.up('messunggrid') |
622
ee92e352be20
Open messung create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
592
diff
changeset
|
61 }); |
ee92e352be20
Open messung create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
592
diff
changeset
|
62 win.show(); |
ee92e352be20
Open messung create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
592
diff
changeset
|
63 win.initData(); |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
64 }, |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
65 |
742
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
66 /** |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
67 * This function removes a Messung |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
68 * It displays a Confirmation-Popup. |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
69 * When the Removal was confirmed and the operation was successful, |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
70 * the Messung-row is removed from the grid. |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
71 * On failure an Errormessage is shown |
6e28ebbe1a73
added documentation for Form and Grid controllers
Dustin Demuth <dustin@intevation.de>
parents:
705
diff
changeset
|
72 */ |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 remove: function(button) { |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
74 var grid = button.up('grid'); |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
75 var selection = grid.getView().getSelectionModel().getSelection()[0]; |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
76 Ext.MessageBox.confirm( |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
77 'Messung löschen', |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
78 'Sind Sie sicher?', |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
79 function(btn) { |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
80 if (btn === 'yes') { |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
81 selection.destroy({ |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
82 success: function() { |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
83 button.up('window').initData(); |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
84 }, |
705
cc9107d9be17
ResponseObject was not defined
Dustin Demuth <dustin@intevation.de>
parents:
704
diff
changeset
|
85 failure: function(request, response) { |
704
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
86 var json = response.request.scope.reader.jsonData; |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
87 if (json) { |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
88 if (json.message){ |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
89 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.delete.title') |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
90 +' #'+json.message, |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
91 Lada.getApplication().bundle.getMsg(json.message)); |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
92 } else { |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
93 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.delete.title'), |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
94 Lada.getApplication().bundle.getMsg('err.msg.generic.body')); |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
95 } |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
96 } else { |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
97 Ext.Msg.alert(Lada.getApplication().bundle.getMsg('err.msg.delete.title'), |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
98 Lada.getApplication().bundle.getMsg('err.msg.response.body')); |
2d454bfef426
Further Failure Messages
Dustin Demuth <dustin@intevation.de>
parents:
690
diff
changeset
|
99 } |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
100 } |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
101 }); |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
102 } |
622
ee92e352be20
Open messung create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
592
diff
changeset
|
103 } |
ee92e352be20
Open messung create window on button click.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
592
diff
changeset
|
104 ); |
588
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
105 } |
e24bc8cf8e1d
Renamed messungen grid and controller.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
106 }); |