torsten@110: Ext.define('Lada.controller.Zusatzwerte', { torsten@110: extend: 'Ext.app.Controller', torsten@110: views: [ torsten@110: 'zusatzwerte.Create' torsten@110: ], torsten@110: stores: [ torsten@122: 'Zusatzwerte', torsten@122: 'Probenzusatzwerte' torsten@110: ], torsten@110: init: function() { torsten@110: console.log('Initialising the Zusatzwerte controller'); torsten@110: this.control({ torsten@110: // CSS like selector to select element in the viewpzusatzwert. See torsten@110: // ComponentQuery documentation for more details. torsten@110: 'zusatzwertelist': { torsten@110: itemdblclick: this.editZusatzwert torsten@110: }, torsten@110: 'zusatzwertelist toolbar button[action=add]': { torsten@110: click: this.addZusatzwert torsten@110: }, torsten@110: 'zusatzwertelist toolbar button[action=delete]': { torsten@110: click: this.deleteZusatzwert torsten@110: }, torsten@110: 'zusatzwertecreate form': { torsten@110: savesuccess: this.createSuccess, torsten@110: savefailure: this.createFailure torsten@110: }, torsten@122: 'zusatzwertecreate button[action=save]': { torsten@122: click: this.saveZusatzwert torsten@122: }, torsten@110: 'zusatzwerteedit form': { torsten@110: savesuccess: this.editSuccess, torsten@110: savefailure: this.editFailure torsten@110: } torsten@110: }); torsten@110: }, torsten@122: saveZusatzwert: function(button) { torsten@122: console.log('Saving Zusatzwert'); torsten@122: var form = button.up('window').down('form'); torsten@122: var values = form.getForm().getValues(); torsten@122: var model = form.model; torsten@122: // Set Probenzusatzwert and rebind the model to the form. torsten@122: var xxx = this.getProbenzusatzwerteStore(); torsten@122: var probenzusatz = xxx.getAt(xxx.find('pzsId', values.pzsId)); torsten@122: model.setProbenzusatz(probenzusatz); torsten@122: form.commit(); torsten@122: }, torsten@110: addZusatzwert: function(button) { torsten@126: console.log('Adding new Zusatzwert for Probe' + button.probenId); torsten@126: var zusatzwert = Ext.create('Lada.model.Zusatzwert'); torsten@126: zusatzwert.set('probeId', button.probeId); torsten@126: var view = Ext.widget('zusatzwertecreate', {model: zusatzwert}); torsten@110: }, torsten@110: editZusatzwert: function(grid, record) { torsten@110: console.log('Editing Zusatzwert'); torsten@110: var view = Ext.widget('zusatzwertecreate', {model: record}); torsten@110: console.log("Loaded Zusatzwert with ID " + record.getId()); //outputs ID torsten@110: }, torsten@110: deleteZusatzwert: function(button) { torsten@110: // Get selected item in grid torsten@110: var grid = button.up('grid'); torsten@110: var selection = grid.getView().getSelectionModel().getSelection()[0]; torsten@110: Ext.MessageBox.confirm('Löschen', 'Sind Sie sicher?', function(btn){ torsten@110: if(btn === 'yes'){ torsten@110: var store = grid.getStore(); torsten@132: var deleteUrl = selection.getProxy().url + selection.getEidi(); torsten@129: Ext.Ajax.request({ torsten@129: url: deleteUrl, torsten@129: method: 'DELETE', torsten@129: success: function(response, opts) { torsten@129: store.reload(); torsten@129: } torsten@129: }); torsten@110: console.log('Deleting Kommentar'); torsten@110: } else { torsten@110: console.log('Cancel Deleting Kommentar'); torsten@110: } torsten@110: }); torsten@110: }, torsten@110: createSuccess: function(form, record, operation) { torsten@110: // Reload store torsten@110: var store = this.getZusatzwerteStore(); torsten@110: store.reload(); torsten@110: var win = form.up('window'); torsten@110: win.close(); torsten@110: }, torsten@110: createFailure: function(form, record, operation) { torsten@110: Ext.MessageBox.show({ torsten@110: title: 'Fehler beim Speichern', torsten@110: msg: form.message, torsten@110: icon: Ext.MessageBox.ERROR, torsten@110: buttons: Ext.Msg.OK torsten@110: }); torsten@110: }, torsten@110: editSuccess: function(form, record, operation) { torsten@110: // Reload store torsten@110: var store = this.getZusatzwerteStore(); torsten@110: store.reload(); torsten@110: var win = form.up('window'); torsten@110: win.close(); torsten@110: }, torsten@110: editFailure: function(form, record, operation) { torsten@110: Ext.MessageBox.show({ torsten@110: title: 'Fehler beim Speichern', torsten@110: msg: form.message, torsten@110: icon: Ext.MessageBox.ERROR, torsten@110: buttons: Ext.Msg.OK torsten@110: }); torsten@110: } torsten@110: });