angular.module('userSettings', []) .controller('UserSettingsController', ['$scope', '$state', '$sanitize', 'Authentication', 'UserService', 'Notifications', function ($scope, $state, $sanitize, Authentication, UserService, Notifications) { $scope.formValues = { currentPassword: '', newPassword: '', confirmPassword: '' }; $scope.updatePassword = function() { $scope.invalidPassword = false; var userID = Authentication.getUserDetails().ID; var currentPassword = $sanitize($scope.formValues.currentPassword); var newPassword = $sanitize($scope.formValues.newPassword); UserService.updateUserPassword(userID, currentPassword, newPassword) .then(function success() { Notifications.success('Success', 'Password successfully updated'); $state.reload(); }) .catch(function error(err) { if (err.invalidPassword) { $scope.invalidPassword = true; } else { Notifications.error('Failure', err, err.msg); } }); }; }]);