raimund@548: /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz raimund@548: * Software engineering by Intevation GmbH raimund@548: * raimund@548: * This file is Free Software under the GNU GPL (v>=3) raimund@548: * and comes with ABSOLUTELY NO WARRANTY! Check out raimund@548: * the documentation coming with IMIS-Labordaten-Application for details. raimund@548: */ raimund@548: raimund@548: Ext.define('Lada.controller.OrtGrid', { raimund@548: extend: 'Ext.app.Controller', raimund@548: raimund@548: init: function() { raimund@548: this.control({ raimund@548: 'ortgrid': { raimund@548: selectionchange: this.selectionChanged, raimund@548: edit: this.gridSave raimund@548: }, raimund@548: 'ortgrid button[action=open]': { raimund@548: click: this.open raimund@548: }, raimund@548: 'ortgrid button[action=add]': { raimund@548: click: this.add raimund@548: }, raimund@548: 'ortgrid button[action=delete]': { raimund@548: click: this.remove raimund@548: } raimund@548: }); raimund@548: }, raimund@548: raimund@548: selectionChanged: function(grid, record) { raimund@548: if (record) { raimund@548: grid.view.panel.down('button[action=open]').enable(); raimund@548: } raimund@548: }, raimund@548: raimund@548: gridSave: function(editor, context) { raimund@556: context.record.save({ raimund@556: success: function() { raimund@556: context.grid.store.reload(); raimund@556: context.grid.up('window').initData(); raimund@556: }, raimund@556: failure: function() { raimund@556: // TODO raimund@556: } raimund@556: }); raimund@548: }, raimund@548: raimund@548: open: function() { dustin@567: // todo raimund@548: console.log('open'); raimund@548: }, raimund@548: raimund@548: add: function() { dustin@567: // todo raimund@548: console.log('add'); raimund@548: }, raimund@548: raimund@548: remove: function(button) { raimund@548: var grid = button.up('grid'); raimund@548: var selection = grid.getView().getSelectionModel().getSelection()[0]; dustin@567: Ext.MessageBox.confirm('Ortsangabe löschen', 'Sind Sie sicher?', function(btn) { raimund@548: if (btn === 'yes') { raimund@548: selection.destroy({ raimund@548: success: function() { raimund@548: button.up('window').initData(); raimund@548: }, raimund@548: failure: function() { raimund@548: } raimund@548: }); raimund@548: } raimund@548: }); raimund@548: } raimund@548: });