annotate app/view/window/ProbeEdit.js @ 1172:9b157a8eecf1

Changed MKommentar Text into type textarea
author Evi Huber <ehuber@bfs.de>
date Tue, 05 Jul 2016 09:16:20 +0200
parents 8280cd5694e5
children 5e3d4136ecfb
rev   line source
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
2 * Software engineering by Intevation GmbH
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
3 *
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
4 * This file is Free Software under the GNU GPL (v>=3)
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
6 * the documentation coming with IMIS-Labordaten-Application for details.
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
7 */
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
8
891
8054232535ba More JSduck
Dustin Demuth <dustin@intevation.de>
parents: 890
diff changeset
9 /**
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
10 * Window to edit a Probe
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
11 */
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
12 Ext.define('Lada.view.window.ProbeEdit', {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
13 extend: 'Ext.window.Window',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
14 alias: 'widget.probenedit',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
15
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
16 requires: [
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
17 'Lada.view.form.Probe',
1004
9ac03f461ab4 Introduced Orte into Stammdatengrids, Added Ortszuordnung. THIS COMMIT IS WORK IN PROGRESS, Proben will NOT work after this commit. Orte can not be edited.
Dustin Demuth <dustin@intevation.de>
parents: 943
diff changeset
18 'Lada.view.grid.Ortszuordnung',
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
19 'Lada.view.grid.Probenzusatzwert',
561
ea2c35cd9c19 Ein grid für Messungen hinzugefügt und im Window ProbeEdit eingesetzt. Ohne Funktion sind die Felder: Status, OK-Flag, Anzahl Nuklide/Kommentare
Dustin Demuth <dustin@intevation.de>
parents: 557
diff changeset
20 'Lada.view.grid.PKommentar',
592
825973ca386f Updated missing name changes for messung grid.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 588
diff changeset
21 'Lada.view.grid.Messung'
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
22 ],
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
23
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
24 collapsible: true,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
25 maximizable: true,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
26 autoShow: true,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27 layout: 'fit',
688
6a6d1b02a1a3 constrain windows to viewport
Dustin Demuth <dustin@intevation.de>
parents: 684
diff changeset
28 constrain: true,
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
29
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
30 record: null,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
31
890
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
32 /**
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
33 * This function initialises the Window
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
34 */
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
35 initComponent: function() {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
36 if (this.record === null) {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
37 Ext.Msg.alert('Keine valide Probe ausgewählt!');
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
38 this.callParent(arguments);
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
39 return;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
40 }
639
fdaabab6f4cc Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents: 601
diff changeset
41 var extendedTitle = this.record.get('probeId') ? this.record.get('probeId') : '';
fdaabab6f4cc Open Probe-/Messung-Edit window automatically if a new item was saved
Raimund Renkert <raimund.renkert@intevation.de>
parents: 601
diff changeset
42 this.title = '§3-Probe ' + extendedTitle;
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
43 this.buttons = [{
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
44 text: 'Schließen',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
45 scope: this,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
46 handler: this.close
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
47 }];
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
48 this.width = 700;
709
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
49
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
50 // add listeners to change the window appearence when it becomes inactive
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
51 this.on({
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
52 activate: function(){
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
53 this.getEl().removeCls('window-inactive');
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
54 },
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
55 deactivate: function(){
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
56 this.getEl().addCls('window-inactive');
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
57 }
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
58 });
6f6d2df00130 Added some CSS to make distinction between active and inactice windows more simple for the user
Dustin Demuth <dustin@intevation.de>
parents: 707
diff changeset
59
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
60 this.height = Ext.getBody().getViewSize().height - 30;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
61 // InitialConfig is the config object passed to the constructor on
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
62 // creation of this window. We need to pass it throuh to the form as
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
63 // we need the "modelId" param to load the correct item.
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
64 this.items = [{
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
65 border: 0,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
66 autoScroll: true,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
67 items: [{
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
68 xtype: 'probeform',
684
69cb367c0a63 When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents: 681
diff changeset
69 recordId: this.record.get('id')
839
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
70 }, {
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
71 xtype: 'fset',
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
72 name: 'orte',
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
73 title: 'Ortsangaben',
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
74 padding: '5, 5',
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
75 margin: 5,
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
76 items: [{
1012
2adc329d90fe Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents: 1004
diff changeset
77 xtype: 'ortszuordnunggrid',
839
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
78 recordId: this.record.get('id')
135cd5814b15 Diplays Orte atop of Messungen
Dustin Demuth <dustin@intevation.de>
parents: 823
diff changeset
79 }]
601
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
80 }, {
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
81 xtype: 'fset',
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
82 name: 'messungen',
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
83 title: 'Messungen',
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
84 padding: '5, 5',
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
85 margin: 5,
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
86 collapsible: false,
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
87 collapsed: false,
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
88 items: [{
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
89 xtype: 'messunggrid',
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
90 recordId: this.record.get('id')
f9c2e82ebc20 Moved messungen field in probe edit window up.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 592
diff changeset
91 }]
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
92 }, {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
93 xtype: 'fset',
684
69cb367c0a63 When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents: 681
diff changeset
94 name: 'probenzusatzwerte',
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
95 title: 'Zusatzwerte',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
96 padding: '5, 5',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
97 margin: 5,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
98 collapsible: true,
943
0a233865a9c3 PKommentar an MKommentar grid modified
Michael Stanko <mstanko@bfs.de>
parents: 891
diff changeset
99 collapsed: false,
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
100 items: [{
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
101 xtype: 'probenzusatzwertgrid',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
102 recordId: this.record.get('id')
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
103 }]
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
104 }, {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
105 xtype: 'fset',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
106 name: 'pkommentare',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
107 title: 'Kommentare',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
108 padding: '5, 5',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
109 margin: 5,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
110 collapsible: true,
943
0a233865a9c3 PKommentar an MKommentar grid modified
Michael Stanko <mstanko@bfs.de>
parents: 891
diff changeset
111 collapsed: false,
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
112 items: [{
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
113 xtype: 'pkommentargrid',
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
114 recordId: this.record.get('id')
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
115 }]
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
116 }]
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
117 }];
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
118 this.callParent(arguments);
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
119 },
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
120
890
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
121 /**
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
122 * Initialise the Data of this Window
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
123 */
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
124 initData: function() {
713
2e478b3a587a Set some loading masks.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 712
diff changeset
125 this.setLoading(true);
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
126 this.clearMessages();
706
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
127 me = this;
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
128 Ext.ClassManager.get('Lada.model.Probe').load(this.record.get('id'), {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
129 failure: function(record, action) {
713
2e478b3a587a Set some loading masks.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 712
diff changeset
130 me.setLoading(false);
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
131 // TODO
712
baef70abfe71 Cosmetics.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 710
diff changeset
132 console.log('An unhandled Failure occured. See following Response and Record');
baef70abfe71 Cosmetics.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 710
diff changeset
133 console.log(action);
696
b0f1dcdf981d Made the unhandled Errors more talkativew
Dustin Demuth <dustin@intevation.de>
parents: 693
diff changeset
134 console.log(record);
b0f1dcdf981d Made the unhandled Errors more talkativew
Dustin Demuth <dustin@intevation.de>
parents: 693
diff changeset
135 },
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
136 success: function(record, response) {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
137 this.down('probeform').setRecord(record);
690
e88381fb3bdb Use treeModiefied timestamp to determine if working with 'old' objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 688
diff changeset
138 this.record = record;
1033
e4b6b6c5fb89 Use 'owner' attribute to set messung grid and button RO status.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1004
diff changeset
139 var owner = this.record.get('owner');
e4b6b6c5fb89 Use 'owner' attribute to set messung grid and button RO status.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1004
diff changeset
140 var readonly = this.record.get('readonly');
706
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
141
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
142 if (owner) {
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
143 //Always allow to Add Messungen.
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
144 me.enableAddMessungen();
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
145 }
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
146
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
147 var json = Ext.decode(response.response.responseText);
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
148 if (json) {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
149 this.setMessages(json.errors, json.warnings);
771
dd6925ef6028 Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 713
diff changeset
150 if (!json.warnings.mediaDesk) {
dd6925ef6028 Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 713
diff changeset
151 this.down('probeform').setMediaDesk(record);
dd6925ef6028 Load, set and parse deskriptoren in probe form.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 713
diff changeset
152 }
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
153 }
710
f204f30b824a Handle readonly mode and refresh operations.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 709
diff changeset
154 // If the Probe is ReadOnly, disable Inputfields and grids
1033
e4b6b6c5fb89 Use 'owner' attribute to set messung grid and button RO status.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1004
diff changeset
155 if (readonly === true || !owner) {
710
f204f30b824a Handle readonly mode and refresh operations.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 709
diff changeset
156 this.down('probeform').setReadOnly(true);
f204f30b824a Handle readonly mode and refresh operations.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 709
diff changeset
157 this.disableChildren();
f204f30b824a Handle readonly mode and refresh operations.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 709
diff changeset
158 }
f204f30b824a Handle readonly mode and refresh operations.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 709
diff changeset
159 else {
f204f30b824a Handle readonly mode and refresh operations.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 709
diff changeset
160 this.down('probeform').setReadOnly(false);
f204f30b824a Handle readonly mode and refresh operations.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 709
diff changeset
161 this.enableChildren();
f204f30b824a Handle readonly mode and refresh operations.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 709
diff changeset
162 }
713
2e478b3a587a Set some loading masks.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 712
diff changeset
163 me.setLoading(false);
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
164 },
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
165 scope: this
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
166 });
684
69cb367c0a63 When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents: 681
diff changeset
167 },
69cb367c0a63 When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents: 681
diff changeset
168
890
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
169 /**
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
170 * Enable the Messungengrid
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
171 */
712
baef70abfe71 Cosmetics.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 710
diff changeset
172 enableAddMessungen: function() {
706
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
173 this.down('fset[name=messungen]').down('messunggrid').setReadOnly(false);
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
174 },
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
175
890
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
176 /**
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
177 * Disable the Childelements of this window
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
178 */
712
baef70abfe71 Cosmetics.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 710
diff changeset
179 disableChildren: function() {
707
c632c7c34029 added disable/enableChildren Method
Dustin Demuth <dustin@intevation.de>
parents: 706
diff changeset
180 if (!this.record.get('owner')) {
c632c7c34029 added disable/enableChildren Method
Dustin Demuth <dustin@intevation.de>
parents: 706
diff changeset
181 // Disable only when the User is not the owner of the Probe
c632c7c34029 added disable/enableChildren Method
Dustin Demuth <dustin@intevation.de>
parents: 706
diff changeset
182 // Works in symbiosis with success callback some lines above.
c632c7c34029 added disable/enableChildren Method
Dustin Demuth <dustin@intevation.de>
parents: 706
diff changeset
183 this.down('fset[name=messungen]').down('messunggrid').setReadOnly(true);
823
5ed0e6273888 Only enable delete button in grids when an entry was selected
Dustin Demuth <dustin@intevation.de>
parents: 771
diff changeset
184 this.down('fset[name=messungen]').down('messunggrid').readOnly = true;
707
c632c7c34029 added disable/enableChildren Method
Dustin Demuth <dustin@intevation.de>
parents: 706
diff changeset
185 }
1012
2adc329d90fe Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents: 1004
diff changeset
186 this.down('fset[name=orte]').down('ortszuordnunggrid').setReadOnly(true);
706
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
187 this.down('fset[name=probenzusatzwerte]').down('probenzusatzwertgrid').setReadOnly(true);
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
188 this.down('fset[name=pkommentare]').down('pkommentargrid').setReadOnly(true);
684
69cb367c0a63 When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents: 681
diff changeset
189 },
69cb367c0a63 When a Probeform is dirty, all child-grids are made readonly (Row Editing is not disbled correctly). When a Probe is read-only all Child-grid buttons are disabled. When a Probe is ReadOnly probeform is also readonly.
Dustin Demuth <dustin@intevation.de>
parents: 681
diff changeset
190
890
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
191 /**
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
192 * Enable the Childelements of this window
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
193 */
712
baef70abfe71 Cosmetics.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 710
diff changeset
194 enableChildren: function() {
706
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
195 this.down('fset[name=messungen]').down('messunggrid').setReadOnly(false);
1012
2adc329d90fe Replaced Locations with Ortszuordnung
Dustin Demuth <dustin@intevation.de>
parents: 1004
diff changeset
196 this.down('fset[name=orte]').down('ortszuordnunggrid').setReadOnly(false);
706
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
197 this.down('fset[name=probenzusatzwerte]').down('probenzusatzwertgrid').setReadOnly(false);
3e4be37e3e46 Re-Enable Add/Delete Button of a MessungGrid in Cases when the User owns the Probe
Dustin Demuth <dustin@intevation.de>
parents: 696
diff changeset
198 this.down('fset[name=pkommentare]').down('pkommentargrid').setReadOnly(false);
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
199 },
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
200
890
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
201 /**
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
202 * Instructs the fields / forms listed in this method to set a message.
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
203 * @param errors These Errors shall be shown
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
204 * @param warnings These Warning shall be shown
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
205 */
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
206 setMessages: function(errors, warnings) {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
207 this.down('probeform').setMessages(errors, warnings);
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
208 var errorOrtText = '';
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
209 var errorOrt = false;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
210 var warningOrtText = '';
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
211 var warningOrt = false;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
212 var key;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
213 var content;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
214 var i;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
215 var keyText;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
216 var i18n = Lada.getApplication().bundle;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
217 for (key in errors) {
582
a241362cda68 Use indexOf instead of contains to check if a substring exists.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 561
diff changeset
218 if (key && key.indexOf('Ort') > -1) {
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
219 errorOrt = true;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
220 content = errors[key];
557
48ee1adee0a2 Added i18n string for 'orte' errors and warnings.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 548
diff changeset
221 keyText = i18n.getMsg(key);
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
222 for (i = 0; i < content.length; i++) {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
223 errorOrtText += keyText + ': ' +
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
224 i18n.getMsg(content[i].toString()) + '\n';
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
225 }
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
226 }
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
227 }
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
228 for (key in warnings) {
582
a241362cda68 Use indexOf instead of contains to check if a substring exists.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 561
diff changeset
229 if (key && key.indexOf('Ort') > -1) {
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
230 warningOrt = true;
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
231 content = warnings[key];
557
48ee1adee0a2 Added i18n string for 'orte' errors and warnings.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 548
diff changeset
232 keyText = i18n.getMsg(key);
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
233 for (i = 0; i < content.length; i++) {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
234 warningOrtText += keyText + ': ' +
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
235 i18n.getMsg(content[i].toString()) + '\n';
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
236 }
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
237 }
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
238 }
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
239 this.down('fset[name=orte]').showWarningOrError(
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
240 warningOrt,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
241 warningOrtText === '' ? null : warningOrtText,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
242 errorOrt,
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
243 errorOrtText === '' ? null : errorOrtText);
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
244 },
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
245
890
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
246 /**
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
247 * Instructs the fields / forms listed in this method to clear their messages.
def27cdd0dfa Added Documentation to Windows
Dustin Demuth <dustin@intevation.de>
parents: 839
diff changeset
248 */
548
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
249 clearMessages: function() {
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
250 this.down('probeform').clearMessages();
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
251 this.down('fset[name=orte]').clearMessages();
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
252 }
d47ee7439f44 Added new js files.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
253 });

http://lada.wald.intevation.org