Mercurial > lada > lada-client
view app/view/Viewport.js @ 418:957a4a9fd260
Enabled multiselect for query filter. (Used as example in final workshop)
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Wed, 09 Oct 2013 15:02:06 +0200 |
parents | cf4b6e93f956 |
children | 2ff236e5d2d0 |
line wrap: on
line source
/** * Viewport for the Lada-Client * * The viewport initialises the graphical elements of the application. For * debugging it is possible to initialize other components directly see the * initComponent function. */ Ext.define('Lada.view.Viewport' ,{ extend: 'Ext.container.Viewport', requires: [ 'Lada.store.Info', 'Lada.view.search.List', 'Lada.view.proben.List' ], initComponent: function() { console.log('Setting up Viewport'); this.initSearch(); // Development related: // Disable "initSearch" call and enable one of the following init // methods to get a dialog directly without the need to click through // the whole application. //this.initProbe(); //this.initOrt(); //this.initMessung(); //this.initMesswert(); this.setInfo(); this.callParent(arguments); }, /** * Set some information about user, client and server version in the top * of the application window. The data will be fetched from the server. */ setInfo: function() { var store = Ext.create('Lada.store.Info'); store.load({ callback: function(a,b,c) { var info = store.data.items[0]; var clientVersion = "r261 (2013-07-26)"; var user = info.get('user'); var groups = info.get('groups'); var groupinfo = Ext.getCmp('groupinfo'); var userinfo = Ext.getCmp('userinfo'); userinfo.update(user); groupinfo.update(groups); console.log(info); } }); }, /** * Function to initialize the edit window for a particular probe directly * @private */ initProbe: function() { var store = Ext.getStore('Proben'); store.load({ params: { probeId: "000007575943X" }, callback: function() { var mstore = Ext.getStore('Messungen'); mstore.load({ params: { probeId: "000007575943X" } }); var model = store.data.items[0]; var win = Ext.create('Lada.view.proben.Edit', {model: model}); } }); }, /** * Function to initialize the edit window for a priticular messwert directly * @private */ initMesswert: function() { var store = Ext.getStore('Messwerte'); store.load({ params: { probeId: "000007575853X", messungsId: "1" }, callback: function() { var model = store.data.items[0]; var win = Ext.create('Lada.view.messwerte.Create', {model: model}); } }); }, /** * Function to initialize the edit window for a priticular ort directly * @private */ initOrt: function() { var ort = Ext.create('Lada.model.Ort'); var win = Ext.create('Lada.view.orte.Create', {model: ort}); }, /** * Function to initialize the edit window for a priticular ort directly * @private */ initMessung: function() { var store = Ext.getStore('Messungen'); var kstore = Ext.getStore('MKommentare'); var mstore = Ext.getStore('Messwerte'); var sstore = Ext.getStore('Status'); probeId = "000007578314X"; store.load({ params: { probeId: probeId }, callback: function () { console.log(store); var messung = store.data.items[0]; console.log(store.data.items[0]); kstore.load({ params: { probeId: probeId, messungsId: messung.get('id').messungsId } }); sstore.load({ params: { probeId: probeId, messungsId: messung.get('id').messungsId } }); mstore.load({ params: { probeId: probeId, messungsId: messung.get('id').messungsId } }); console.log('Creating Messung window'); //var messung = Ext.create('Lada.model.Messung'); var win = Ext.create('Lada.view.messungen.Create', {model: messung}); } }); }, /** * Function to initialize the search window. This is the default method * called by the {@link Lada.view.Viewport#initComponent initComponent} method. * @private */ initSearch: function() { this.items = [{ xtype: 'panel', title: '<center>Probenauswahlmaske</center>', bodyPadding: '10 10', dockedItems: [ { xtype: "toolbar", dock: "top", items: [{ xtype: "splitbutton", text: "Info", menu: { items: [{ id: 'AboutBtn', text: "About" }] } }, "->", {xtype: 'box', autoEl: {tag: 'img', src:'gfx/user-identity.png'}}, {xtype: "tbtext", id:"userinfo", text:""}, {xtype: 'box', autoEl: {tag: 'img', src:'gfx/network-workgroup.png'}}, {xtype: "tbtext", id:"groupinfo", text:""} ] } ], items: [ // Auswahl einer Abfrage. { xtype: 'queryselector', id: 'queryselector', margin: '0 0 10 0' }, // Variables settings for the current selected sql statement. { xtype: 'fieldset', id: 'queryfilters', title: 'Variablenbelegung', hidden: true, items: [] }, // Buttons to trigger the search. { id: 'SearchBtnPanel', xtype: 'panel', border: false, margin: '0 0 10 0', items: [ { id: 'SearchBtn', text: 'Suchen', xtype: 'button', margin: '0 10 0 0' }, { id: 'ResetBtn', text: 'Zurücksetzen', xtype: 'button' } ], hidden: false }, // Resultlist for the query. { id: 'result', xtype: 'probenlist', hidden: false } ] }]; } });