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
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);
|