Files
old-wiaas-legacy/api-wiaas/client/js/components/profile-settings/change-password.directive.js
2018-06-11 11:09:35 +02:00

52 lines
1.7 KiB
JavaScript

(function () {
global.dashModule
.directive('changePassword', changePasswordDirective)
.controller('changePasswordCtrl', ['$scope', '$', '$http', '$translate', 'utilsService', changePasswordCtrl]);
function changePasswordDirective() {
return {
restrict: 'E',
templateUrl: 'profileSettings/html/ChangePasswordTemplate'
};
}
function changePasswordCtrl($scope, $, $http, $translate, utilsService) {
$scope.changePassword = changePassword;
$scope.showHideDialog = showHideDialog;
$scope.isDialogVisible = false;
function changePassword() {
const params = $.param({
passwords: JSON.stringify($scope.data)
});
$http({
method: 'POST',
data: params,
url: 'utils/api/changePassword'
}).then(showConfirmationMessage, utilsService.onHttpError);
}
function showConfirmationMessage(response) {
if(response.data && response.data.messages) {
response.data.messages.forEach(messageData => {
const message = $translate.instant('profile.forms.messages.' + messageData.message);
utilsService.displayMessage(messageData.code, message);
if(messageData.code === 'success') {
$scope.data = {};
}
});
}
}
function showHideDialog() {
if($scope.data && Object.keys($scope.data).length === 3) {
$scope.$evalAsync(() => {
$scope.isDialogVisible = !$scope.isDialogVisible;
});
}
}
}
})();