71 lines
2.4 KiB
JavaScript
71 lines
2.4 KiB
JavaScript
(function () {
|
|
global.dashModule
|
|
.controller('documentsViewCtrl', ['$scope', '$http', '$', '$translate', 'utilsService', documentsViewController])
|
|
.directive('documentsView', [documentsViewDirective]);
|
|
|
|
function documentsViewDirective() {
|
|
return {
|
|
restrict: 'E',
|
|
templateUrl: 'documents/html/documentsViewTemplate'
|
|
};
|
|
}
|
|
|
|
function documentsViewController($scope, $http, $, $translate, utilsService) {
|
|
$scope.getDocuments = getDocuments;
|
|
$scope.showHideRemoveDialog = showHideRemoveDialog;
|
|
$scope.removeDocument = removeDocument;
|
|
$scope.documents = [];
|
|
$scope.isRemoveDialogVisible = false;
|
|
|
|
function getDocuments() {
|
|
$http({
|
|
method: 'POST',
|
|
url: 'documents/api/getDocuments',
|
|
data: $.param({
|
|
idDocument: global.getParameterByName('idDocument') || 0,
|
|
idPackage: global.getParameterByName('idPackage') || 0
|
|
})
|
|
}).then(setDocuments, utilsService.onHttpError);
|
|
}
|
|
|
|
function setDocuments(response) {
|
|
if (response.data) {
|
|
$scope.documents = response.data;
|
|
}
|
|
}
|
|
|
|
function showHideRemoveDialog(document) {
|
|
if(document){
|
|
$scope.selectedDocument = document;
|
|
}
|
|
$scope.$evalAsync(() => {
|
|
$scope.isRemoveDialogVisible = !$scope.isRemoveDialogVisible;
|
|
});
|
|
}
|
|
|
|
function removeDocument(document) {
|
|
const params = $.param({
|
|
idDocument: document.idDocument
|
|
});
|
|
|
|
$http({
|
|
method: 'POST',
|
|
url: 'documents/api/removeDocument',
|
|
data: params
|
|
}).then(displayMessage, utilsService.onHttpError);
|
|
}
|
|
|
|
function displayMessage(response) {
|
|
if (typeof response.data.messages !== 'undefined') {
|
|
response.data.messages.forEach((messageObj) => {
|
|
const translatedMessage = $translate.instant('documents.messages.' + messageObj.message);
|
|
utilsService.displayMessage(messageObj.code, translatedMessage);
|
|
if (messageObj.code === 'success') {
|
|
getDocuments();
|
|
}
|
|
});
|
|
}
|
|
}
|
|
}
|
|
})();
|