repo for angularjs testing training
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

51 lines
1.4 KiB

(function(angular) {
'use strict';
EditBookController.$inject = ['$state', '$stateParams', 'BooksService'];
function EditBookController($state, $stateParams, BooksService) {
var vm = this;
vm.book = {
title: '',
author: '',
publisher: '',
publicationDate: '',
descriptions: ''
};
//private methods
function returnToBookList() {
$state.go('books');
}
//public methods
vm.saveBook = function() {
BooksService.saveBook(vm.book, vm.bookId)
.then(function(success) {
if (success) returnToBookList();
});
};
vm.cancelSave = function() {
returnToBookList();
};
// Init Controller
vm.bookId = $stateParams.id;
if (!vm.bookId) returnToBookList();
BooksService.getBook($stateParams.id)
.then(function(data) {
vm.book.title = data.title;
vm.book.author = data.author;
vm.book.publisher = data.publisher;
vm.book.publicationDate = data.publicationDate;
vm.book.pageLength = data.pageLength;
vm.book.description = data.description;
});
}
angular.module('book-inventory-app.edit')
.controller('EditBookController', EditBookController);
})(angular);