raimund@572: /* Copyright (C) 2013 by Bundesamt fuer Strahlenschutz raimund@572: * Software engineering by Intevation GmbH raimund@572: * raimund@572: * This file is Free Software under the GNU GPL (v>=3) raimund@572: * and comes with ABSOLUTELY NO WARRANTY! Check out raimund@572: * the documentation coming with IMIS-Labordaten-Application for details. raimund@572: */ raimund@572: raimund@572: Ext.define('Lada.controller.PKommentarGrid', { raimund@572: extend: 'Ext.app.Controller', raimund@572: raimund@572: init: function() { raimund@572: this.control({ raimund@572: 'pkommentargrid': { raimund@572: edit: this.edit raimund@572: }, raimund@572: 'pkommentargrid button[action=add]': { raimund@572: click: this.add raimund@572: }, raimund@572: 'pkommentargrid button[action=delete]': { raimund@572: click: this.remove raimund@572: } raimund@572: }); raimund@572: }, raimund@572: raimund@572: edit: function(editor, context) { raimund@572: context.record.save({ raimund@572: success: function() { raimund@572: context.grid.store.reload(); raimund@572: context.grid.up('window').initData(); raimund@572: }, raimund@572: failure: function() { raimund@572: // TODO raimund@572: } raimund@572: }); raimund@572: }, raimund@572: raimund@572: add: function(button) { raimund@572: var record = Ext.create('Lada.model.PKommentar'); raimund@572: record.set('probeId', button.up('pkommentargrid').recordId); raimund@572: button.up('pkommentargrid').store.insert(0, record); raimund@572: button.up('pkommentargrid').rowEditing.startEdit(0, 1); raimund@572: }, raimund@572: raimund@572: remove: function(button) { raimund@572: var grid = button.up('grid'); raimund@572: var selection = grid.getView().getSelectionModel().getSelection()[0]; raimund@572: Ext.MessageBox.confirm('Löschen', 'Sind Sie sicher?', function(btn) { raimund@572: if (btn === 'yes') { raimund@572: selection.destroy({ raimund@572: success: function() { raimund@572: button.up('window').initData(); raimund@572: }, raimund@572: failure: function() { raimund@572: // TODO raimund@572: } raimund@572: }); raimund@572: } raimund@572: }); raimund@572: } raimund@572: });