Mercurial > lada > lada-client
annotate app/controller/Sql.js @ 503:369917727c86
Refactored proben edit window.
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Thu, 11 Dec 2014 18:54:21 +0100 |
parents | ad7f574b382a |
children | 16fbbad55589 |
rev | line source |
---|---|
472
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
431
diff
changeset
|
1 /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
431
diff
changeset
|
2 * Software engineering by Intevation GmbH |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
431
diff
changeset
|
3 * |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
431
diff
changeset
|
4 * This file is Free Software under the GNU GPL (v>=3) |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
431
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
6 * the documentation coming with IMIS-Labordaten-Application for details. |
472
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
431
diff
changeset
|
7 */ |
debfcc7713e3
Added license header to each file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
431
diff
changeset
|
8 |
294
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
9 /** |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
10 * Controller for the Search |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
11 * This controller handles all logic related to the search |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
12 */ |
6
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
13 Ext.define('Lada.controller.Sql', { |
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
14 extend: 'Ext.app.Controller', |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
15 |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
16 requires: [ |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
17 'Lada.view.widgets.Mst', |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
18 'Lada.view.widgets.Uwb', |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
19 'Lada.view.widgets.Datetime', |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
20 'Lada.view.About' |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
21 ], |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
22 |
8
e4fcb4ddd782
Moved stored SQL into its own file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
6
diff
changeset
|
23 stores: [ |
235
78134e20e62d
Added new model and store for Queries.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
147
diff
changeset
|
24 'Proben', // List of found Proben |
374
832e3c8f9191
Implemented dynamic ProbelList model. The model will get initialized by the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
370
diff
changeset
|
25 'ProbenList', // List of found Proben |
386
00bf2d4f3bd1
Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
378
diff
changeset
|
26 'Queries', |
422
f9bb1ecf6462
Removed trailing commas.
Raimund Renkert <rrenkert@intevation.de>
parents:
413
diff
changeset
|
27 'Info' |
8
e4fcb4ddd782
Moved stored SQL into its own file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
6
diff
changeset
|
28 ], |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
29 |
6
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
30 init: function() { |
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
31 this.control({ |
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
32 // CSS like selector to select element in the viewport. See |
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
33 // ComponentQuery documentation for more details. |
31
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
34 '#search': { |
6
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
35 // Map Doubleclick on rows of the probenlist. |
28
4d60b9ebce15
Renamed sql modul into search. Further display The query selection as Combobox
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
25
diff
changeset
|
36 select: this.selectSql |
31
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
37 }, |
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
38 '#SearchBtn': { |
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
39 // Map click event on Button. |
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
40 click: this.search |
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
41 }, |
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
42 '#ResetBtn': { |
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
43 // Map click event on Button. |
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
44 click: this.reset |
386
00bf2d4f3bd1
Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
378
diff
changeset
|
45 }, |
00bf2d4f3bd1
Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
378
diff
changeset
|
46 '#AboutBtn': { |
00bf2d4f3bd1
Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
378
diff
changeset
|
47 // Map click event on Button. |
00bf2d4f3bd1
Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
378
diff
changeset
|
48 click: this.about |
6
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
49 } |
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
50 }); |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
51 this.callParent(arguments); |
6
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
52 }, |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
53 |
294
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
54 /** |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
55 * Function called when the user selects a SQL query in the dropdownlist. |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
56 * The function will hide/display additional element related to the |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
57 * selected search query |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
58 */ |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
59 selectSql: function(element, record) { |
241
4ca858026191
If the user selects a search query add call setupColumns method to dynamically
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
235
diff
changeset
|
60 var result = Ext.getCmp('result'); |
246
c5d7fae5997a
Change logic how to show and hide the search filters. Now we iterate over the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
241
diff
changeset
|
61 var filters = Ext.getCmp('queryfilters'); |
252
1bce2d59b7e9
Update description and sql statement when chosing another query
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
251
diff
changeset
|
62 var sqlquery = Ext.getCmp('sqlquery'); |
1bce2d59b7e9
Update description and sql statement when chosing another query
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
251
diff
changeset
|
63 var sqldesc = Ext.getCmp('sqldesc'); |
31
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
64 var buttons = Ext.getCmp('SearchBtnPanel'); |
253
424f18da3c64
Fixed variable name
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
252
diff
changeset
|
65 var displayFields = record[0].data.results; |
246
c5d7fae5997a
Change logic how to show and hide the search filters. Now we iterate over the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
241
diff
changeset
|
66 var filterFields = record[0].data.filters; |
253
424f18da3c64
Fixed variable name
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
252
diff
changeset
|
67 |
31
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
68 this.reset(); |
246
c5d7fae5997a
Change logic how to show and hide the search filters. Now we iterate over the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
241
diff
changeset
|
69 |
252
1bce2d59b7e9
Update description and sql statement when chosing another query
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
251
diff
changeset
|
70 sqlquery.setValue(record[0].data.sql); |
1bce2d59b7e9
Update description and sql statement when chosing another query
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
251
diff
changeset
|
71 sqldesc.setValue(record[0].data.description); |
1bce2d59b7e9
Update description and sql statement when chosing another query
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
251
diff
changeset
|
72 |
246
c5d7fae5997a
Change logic how to show and hide the search filters. Now we iterate over the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
241
diff
changeset
|
73 // Setup Columns of the probenlist |
413
e1af66012ef0
Reverse displayFields Array before configuring the columns of the result list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
403
diff
changeset
|
74 displayFields.reverse(); |
241
4ca858026191
If the user selects a search query add call setupColumns method to dynamically
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
235
diff
changeset
|
75 result.setupColumns(displayFields); |
246
c5d7fae5997a
Change logic how to show and hide the search filters. Now we iterate over the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
241
diff
changeset
|
76 |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
77 // Setup Filters of the probenlist |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
78 // |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
79 // Allowed types are |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
80 // * text |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
81 // * number |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
82 // * datetime |
375
1327dd6ec246
Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
374
diff
changeset
|
83 // * bool |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
84 // * listmst |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
85 // * listumw |
375
1327dd6ec246
Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
374
diff
changeset
|
86 // * listver |
1327dd6ec246
Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
374
diff
changeset
|
87 // * listdbasis |
1327dd6ec246
Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
374
diff
changeset
|
88 // * listnetz |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
89 // |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
90 // Iterate over all configured filters and add filters dynamically |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
91 // |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
92 // 1. Empty filters |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
93 filters.removeAll(); |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
94 var hide = true; |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
95 // 2. Iterate over all configured filters |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
96 var j; |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
97 for (j = 0; j < filterFields.length; j++) { |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
98 var type = filterFields[j].type; |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
99 var name = filterFields[j].dataIndex; |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
100 var label = filterFields[j].label; |
418
957a4a9fd260
Enabled multiselect for query filter. (Used as example in final workshop)
Raimund Renkert <rrenkert@intevation.de>
parents:
413
diff
changeset
|
101 var multi = filterFields[j].multiSelect; |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
102 var field = null; |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
103 if (type === 'text') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
104 field = Ext.create('Ext.form.field.Text', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
105 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
106 fieldLabel: label |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
107 }); |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
108 } |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
109 else if (type === 'number') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
110 field = Ext.create('Ext.form.field.Number', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
111 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
112 fieldLabel: label |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
113 }); |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
114 } |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
115 else if (type === 'datetime') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
116 field = Ext.create('Lada.view.widgets.Datetime', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
117 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
118 fieldLabel: label |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
119 }); |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
120 } |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
121 else if (type === 'bool') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
122 field = Ext.create('Lada.view.widgets.Testdatensatz', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
123 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
124 fieldLabel: label, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
125 emptyText: '' |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
126 }); |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
127 } |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
128 else if (type === 'listmst') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
129 field = Ext.create('Lada.view.widgets.Mst', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
130 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
131 fieldLabel: label, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
132 multiSelect: multi |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
133 }); |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
134 } |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
135 else if (type === 'listumw') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
136 field = Ext.create('Lada.view.widgets.Uwb', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
137 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
138 fieldLabel: label, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
139 multiSelect: multi |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
140 }); |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
141 } |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
142 else if (type === 'listdbasis') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
143 field = Ext.create('Lada.view.widgets.Datenbasis', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
144 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
145 fieldLabel: label, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
146 multiSelect: multi |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
147 }); |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
148 } |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
149 else if (type === 'listver') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
150 field = Ext.create('Lada.view.widgets.Verwaltungseinheit', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
151 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
152 fieldLabel: label, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
153 multiSelect: multi |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
154 }); |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
155 } |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
156 else if (type === 'listnetz') { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
157 field = Ext.create('Lada.view.widgets.Netzbetreiber', { |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
158 name: name, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
159 fieldLabel: label, |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
160 multiSelect: multi |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
161 }); |
366 | 162 } |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
163 if (field) { |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
164 filters.add(field); |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
165 filters.show(); |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
166 hide = false; |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
167 } |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
168 } |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
169 if (hide) { |
246
c5d7fae5997a
Change logic how to show and hide the search filters. Now we iterate over the
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
241
diff
changeset
|
170 filters.hide(); |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
171 } |
31
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
172 buttons.show(); |
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
173 }, |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
174 |
294
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
175 /** |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
176 * Function is called when the user clicks the search button. The function |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
177 * will perform a search to the server on refreshes the result list. |
92b475303806
Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
253
diff
changeset
|
178 */ |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
179 search: function() { |
31
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
180 var result = Ext.getCmp('result'); |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
181 var filters = Ext.getCmp('queryfilters'); |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
182 var search = Ext.getCmp('search'); |
36
2a67e062519b
Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
35
diff
changeset
|
183 |
2a67e062519b
Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
35
diff
changeset
|
184 // Get search parameters: |
2a67e062519b
Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
35
diff
changeset
|
185 var searchParams = {}; |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
186 searchParams['qid'] = search.getValue(); |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
187 for (var i = filters.items.length - 1; i >= 0; i--) { |
369
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
188 var filter = filters.items.items[i]; |
cebed9ef8293
Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
366
diff
changeset
|
189 var value = filter.getValue(); |
378
d001e88affde
Fixed building searchparams support empty selection in multiselect.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
375
diff
changeset
|
190 if (value instanceof Array) { |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
191 value = value.join(','); |
378
d001e88affde
Fixed building searchparams support empty selection in multiselect.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
375
diff
changeset
|
192 } |
d001e88affde
Fixed building searchparams support empty selection in multiselect.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
375
diff
changeset
|
193 searchParams[filter.getName()] = value; |
36
2a67e062519b
Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
35
diff
changeset
|
194 } |
2a67e062519b
Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
35
diff
changeset
|
195 result.getStore().load({ |
2a67e062519b
Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
35
diff
changeset
|
196 params: searchParams |
2a67e062519b
Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
35
diff
changeset
|
197 }); |
25
f964a50bfe57
Restructured the application. Fixed layouts etc.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
17
diff
changeset
|
198 result.show(); |
31
897e3100c6da
Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
28
diff
changeset
|
199 }, |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
200 |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
201 reset: function() { |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
202 // var buttons = Ext.getCmp('SearchBtnPanel'); |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
203 // var result = Ext.getCmp('result'); |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
204 // for (var i = 0; i < queries.length; ++i) { |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
205 // var toHide = Ext.getCmp(queries[i]); |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
206 // toHide.hide(); |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
207 // } |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
208 // result.hide(); |
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
209 // buttons.hide(); |
386
00bf2d4f3bd1
Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
378
diff
changeset
|
210 }, |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
211 |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
212 about: function() { |
386
00bf2d4f3bd1
Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
378
diff
changeset
|
213 var info = this.getInfoStore(); |
500
ad7f574b382a
Fixed some js related issues (unused vars, arrays, etc.) and code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
499
diff
changeset
|
214 Ext.widget('about', { |
491
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
215 info: info |
850ccfe5f3c4
Code style.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
472
diff
changeset
|
216 }); |
6
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
217 } |
8e79bda4d55b
Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff
changeset
|
218 }); |