Files
digiproof/js/controllers_successor.js
git@daemon.de 5992bf159b initial commit
2013-09-12 23:13:49 +02:00

87 lines
1.9 KiB
JavaScript

App.SuccessorsSuccessorController = Ember.ObjectController.extend({
isEditing: false,
errors: {},
edit: function() {
this.set('isEditing', true);
},
doneEditing: function() {
var validated = this.get('model').validate();
if(! validated.valid) {
this.set('errors', validated);
this.set('isEditing', true);
}
else {
this.set('isEditing', false);
this.get('model').get("store").commit();
}
},
cancelEditing: function() {
this.set('isEditing', false);
},
remove: function() {
var successor = this.get('model');
successor.deleteRecord();
successor.get("store").commit();
this.get("target").transitionTo("successors");
}
});
App.SuccessorsNewController = Ember.ArrayController.extend({
newName: '',
next: 0,
erros: {},
createNextSuccessor: function () {
this.set('next', 1);
this.createSuccessor();
},
createSuccessor: function () {
var successor = App.Successor.createRecord({
name: this.get('name'),
address: this.get('address'),
birth: this.get('birth'),
name2: this.get('name2'),
address2: this.get('address2'),
birth2: this.get('birth2')
});
var validated = successor.validate();
//console.log("validated: %o", validated);
if(! validated.valid) {
successor.deleteRecord();
this.set('errors', validated);
this.set('isEditing', true);
}
else {
// Save the new model
successor.get("store").commit();
// empty form fields so new entries starts from scratch
this.set('name', '');
this.set('address', '');
this.set('birth', '');
this.set('name2', '');
this.set('address2', '');
this.set('birth2', '');
if(this.get('next') == 1) {
this.get("target").transitionTo("successors.new");
}
else {
// redirect to newly created entry
this.get("target").transitionTo("successors.successor", successor);
}
}
}
});