angular.module("vocabulary") .component("editMemberWord", { templateUrl: "/js/redesign-angular/memberWords/edit-member-word.html", controller: "EditMemberWordController", bindings: { word: "<" } }) .controller("EditMemberWordController", ["$scope", "$state", "memberWordService", function ($scope, $state, memberWordService) { var ctrl = this; ctrl.save = function () { memberWordService.attemptWordUpdate(ctrl.word) .then(reloadParent) .catch(setFormInvalid); }; // todo - this may not belong here ctrl.delete = function () { memberWordService.deleteWord(ctrl.word) .then(reloadParent); }; function reloadParent() { $state.go("^", {}, {reload: true}); } function setFormInvalid(err) { $scope.$broadcast("INVALIDATE_FORM"); } }]);