annotate app/controller/Sql.js @ 413:e1af66012ef0 0.6

Reverse displayFields Array before configuring the columns of the result list. Now the displayed columns are in the same order as defined in the query configuration file.
author Torsten Irländer <torsten.irlaender@intevation.de>
date Mon, 23 Sep 2013 14:26:09 +0200
parents e3e4adb00f32
children 957a4a9fd260 f9bb1ecf6462
rev   line source
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
1 var queries = new Array('query1', 'query2');
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
2
294
92b475303806 Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 253
diff changeset
3 /**
92b475303806 Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 253
diff changeset
4 * Controller for the Search
92b475303806 Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 253
diff changeset
5 * 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
6 */
6
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
7 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
8 extend: 'Ext.app.Controller',
8
e4fcb4ddd782 Moved stored SQL into its own file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 6
diff changeset
9 stores: [
235
78134e20e62d Added new model and store for Queries.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 147
diff changeset
10 '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
11 'ProbenList', // List of found Proben
386
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
12 'Queries',
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
13 'Info',
8
e4fcb4ddd782 Moved stored SQL into its own file.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 6
diff changeset
14 ],
369
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
15 requires: [
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
16 'Lada.view.widgets.Mst',
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
17 'Lada.view.widgets.Uwb',
386
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
18 'Lada.view.widgets.Datetime',
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
19 'Lada.view.About'
369
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
20 ],
6
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
21 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
22 console.log('Initialising the Sql controller');
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
23 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
24 // 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
25 // 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
26 '#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
27 // Map the "render" event to the given function.
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
28 render: this.onPanelRendered,
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
29 // 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
30 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
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
32 '#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
33 // 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
34 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
35 },
897e3100c6da Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 28
diff changeset
36 '#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
37 // 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
38 click: this.reset
386
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
39 },
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
40 '#AboutBtn': {
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
41 // Map click event on Button.
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
42 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
43 }
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
44 });
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
45 },
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
46 onPanelRendered: function() {
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
47 console.log('The panel was rendered');
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
48 },
294
92b475303806 Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 253
diff changeset
49 /**
92b475303806 Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 253
diff changeset
50 * 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
51 * 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
52 * selected search query
92b475303806 Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 253
diff changeset
53 */
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
54 selectSql: function(element, record, index) {
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
55 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
56 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
57 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
58 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
59 var buttons = Ext.getCmp('SearchBtnPanel');
253
424f18da3c64 Fixed variable name
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 252
diff changeset
60 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
61 var filterFields = record[0].data.filters;
253
424f18da3c64 Fixed variable name
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 252
diff changeset
62
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
63 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
64
252
1bce2d59b7e9 Update description and sql statement when chosing another query
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 251
diff changeset
65 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
66 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
67
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
68 // 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
69 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
70 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
71
369
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
72 // 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
73 //
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
74 // 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
75 // * text
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
76 // * number
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
77 // * datetime
375
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
78 // * 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
79 // * listmst
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
80 // * listumw
375
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
81 // * listver
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
82 // * listdbasis
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
83 // * 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
84 //
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
85 // 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
86 //
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
87 // 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
88 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
89 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
90 // 2. Iterate over all configured filters
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
91 for (var j=0; j < filterFields.length; j++) {
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
92 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
93 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
94 var label = filterFields[j].label;
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
95 var field = null;
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
96 if (type == "text") {
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
97 console.log("Found text filter");
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
98 field = Ext.create('Ext.form.field.Text', { name: name, fieldLabel: label });
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
99 } else if (type == "number") {
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
100 console.log("Found number filter");
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
101 field = Ext.create('Ext.form.field.Number', { name: name, fieldLabel: label });
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
102 } else if (type == "datetime") {
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
103 console.log("Found datetime filter");
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
104 field = Ext.create('Lada.view.widgets.Datetime', { name: name, fieldLabel: label });
375
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
105 } else if (type == "bool") {
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
106 console.log("Found bool filter");
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
107 field = Ext.create('Lada.view.widgets.Testdatensatz', { name: name, fieldLabel: label, emptyText: '' });
369
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
108 } else if (type == "listmst") {
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
109 console.log("Found listmst filter");
403
e3e4adb00f32 Removed multiselect from filter comboboxes.
Raimund Renkert <rrenkert@intevation.de>
parents: 386
diff changeset
110 field = Ext.create('Lada.view.widgets.Mst', { name: name, fieldLabel: label });
369
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
111 } else if (type == "listumw") {
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
112 console.log("Found listumw filter");
403
e3e4adb00f32 Removed multiselect from filter comboboxes.
Raimund Renkert <rrenkert@intevation.de>
parents: 386
diff changeset
113 field = Ext.create('Lada.view.widgets.Uwb', { name: name, fieldLabel: label });
375
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
114 } else if (type == "listdbasis") {
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
115 console.log("Found listdbasis filter");
403
e3e4adb00f32 Removed multiselect from filter comboboxes.
Raimund Renkert <rrenkert@intevation.de>
parents: 386
diff changeset
116 field = Ext.create('Lada.view.widgets.Datenbasis', { name: name, fieldLabel: label });
375
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
117 } else if (type == "listver") {
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
118 console.log("Found listver filter");
403
e3e4adb00f32 Removed multiselect from filter comboboxes.
Raimund Renkert <rrenkert@intevation.de>
parents: 386
diff changeset
119 field = Ext.create('Lada.view.widgets.Verwaltungseinheit', { name: name, fieldLabel: label });
375
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
120 } else if (type == "listnetz") {
1327dd6ec246 Added more search filters.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 374
diff changeset
121 console.log("Found listnetz filter");
403
e3e4adb00f32 Removed multiselect from filter comboboxes.
Raimund Renkert <rrenkert@intevation.de>
parents: 386
diff changeset
122 field = Ext.create('Lada.view.widgets.Netzbetreiber', { name: name, fieldLabel: label });
366
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 365
diff changeset
123 }
369
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
124 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
125 console.log("Pushing field to filters");
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
126 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
127 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
128 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
129 }
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
130 }
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
131 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
132 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
133 }
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
134 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
135 },
294
92b475303806 Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 253
diff changeset
136 /**
92b475303806 Inherit from Base controller
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 253
diff changeset
137 * 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
138 * 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
139 */
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
140 search: function(element, record, index) {
897e3100c6da Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 28
diff changeset
141 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
142 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
143 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
144
2a67e062519b Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 35
diff changeset
145 // 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
146 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
147 searchParams['qid'] = search.getValue();
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
148 for (var i = filters.items.length - 1; i >= 0; i--){
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
149 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
150 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
151 if (value instanceof Array) {
d001e88affde Fixed building searchparams support empty selection in multiselect.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 375
diff changeset
152 value = value.join(",");
d001e88affde Fixed building searchparams support empty selection in multiselect.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 375
diff changeset
153 }
d001e88affde Fixed building searchparams support empty selection in multiselect.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 375
diff changeset
154 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
155 }
369
cebed9ef8293 Dynamically add configured search filters. Send needed values to the server.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 366
diff changeset
156 console.log('Loading store with the following search params: ' + searchParams);
36
2a67e062519b Implemted search. When user clicks on the search buttons parameters are
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 35
diff changeset
157 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
158 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
159 });
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
160 console.log('Store loaded');
25
f964a50bfe57 Restructured the application. Fixed layouts etc.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 17
diff changeset
161 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
162 },
897e3100c6da Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 28
diff changeset
163 reset: function(element, record, index) {
897e3100c6da Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 28
diff changeset
164 var buttons = Ext.getCmp('SearchBtnPanel');
897e3100c6da Changed logic of the Probenauswahl. Now logic works like the BFS version.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 28
diff changeset
165 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
166 //for (var i = 0; i < queries.length; ++i) {
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
167 // var toHide = Ext.getCmp(queries[i]);
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
168 // toHide.hide();
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
169 //}
147
5da0b56bf9bf Do no hide the earch buttons and the resultlist on reset.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 139
diff changeset
170 //result.hide();
5da0b56bf9bf Do no hide the earch buttons and the resultlist on reset.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 139
diff changeset
171 //buttons.hide();
386
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
172 },
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
173 about: function(element, record, index) {
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
174 var info = this.getInfoStore();
00bf2d4f3bd1 Added about dialog.
Torsten Irländer <torsten.irlaender@intevation.de>
parents: 378
diff changeset
175 var view = Ext.widget('about', {info: info});
6
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
176 }
8e79bda4d55b Added a list to select predefined SQL Statement for the Proben list.
Torsten Irländer <torsten.irlaender@intevation.de>
parents:
diff changeset
177 });

http://lada.wald.intevation.org