diff --git a/src/css/import.css b/src/css/import.css index 356fae1c1..3b763382b 100644 --- a/src/css/import.css +++ b/src/css/import.css @@ -1,3 +1,7 @@ +#wb-import .tab-content .progress { + font-size: 1rem; +} + .upload-buttons { align-items: stretch; display: flex; @@ -73,8 +77,9 @@ outline: none; } -.import-resource-message-dialog .message{ +.import-resource-message-dialog .message { color: #000000; font-size: 15px; resize: none; } + diff --git a/src/js/angular/import/controllers/import-view.controller.js b/src/js/angular/import/controllers/import-view.controller.js index d742fccf0..9da565f18 100644 --- a/src/js/angular/import/controllers/import-view.controller.js +++ b/src/js/angular/import/controllers/import-view.controller.js @@ -777,9 +777,18 @@ importViewModule.controller('UploadCtrl', ['$scope', 'toastr', '$controller', '$ $scope.settings.name = file.name; const data = UploadRestService.createUploadPayload(file, $scope.settings); const uploader = startImport ? UploadRestService.uploadUserDataFile : UploadRestService.updateUserDataFile; - uploader($repositories.getActiveRepository(), file, data).then(() => { - $scope.updateList(); - }).catch((data) => { + uploader($repositories.getActiveRepository(), file, data).then( + (resp) => { + $scope.progressPercentage = null; + $scope.uploadProgressMessage = ''; + $scope.updateList(); + }, + () => {}, + (evt) => { + $scope.progressPercentage = parseInt(100.0 * evt.loaded / evt.total); + $scope.uploadProgressMessage = $translate.instant('import.file.upload.progress', {progress: $scope.progressPercentage}); + } + ).catch((data) => { toastr.error($translate.instant('import.could.not.upload.file', {data: getError(data)})); file.status = ImportResourceStatus.ERROR; file.message = getError(data); diff --git a/src/js/angular/rest/upload.rest.service.js b/src/js/angular/rest/upload.rest.service.js index 940d3597e..2a7622e1c 100644 --- a/src/js/angular/rest/upload.rest.service.js +++ b/src/js/angular/rest/upload.rest.service.js @@ -1,5 +1,3 @@ -import {ImportResourceStatus} from "../models/import/import-resource-status"; - angular .module('graphdb.framework.rest.upload.service', []) .factory('UploadRestService', UploadRestService); @@ -42,7 +40,7 @@ function UploadRestService($http, Upload, $translate) { return Upload.upload({ url: `${BASE_ENDPOINT}/${repositoryId}/import/upload/file`, data: data - }).progress((evt) => reportProgress(evt, file)); + }); } /** @@ -56,20 +54,6 @@ function UploadRestService($http, Upload, $translate) { return Upload.upload({ url: `${BASE_ENDPOINT}/${repositoryId}/import/upload/update/file`, data: data - }).progress((evt) => reportProgress(evt, file)); - } - - function reportProgress(evt, file) { - if (file.file) { - file.file = null; - file.status = ImportResourceStatus.UPLOADING; - } else if (file.status !== ImportResourceStatus.UPLOADING) { - file.status = ImportResourceStatus.PENDING; - } - - if (file.status === ImportResourceStatus.UPLOADING) { - const progressPercentage = parseInt(100.0 * evt.loaded / evt.total); - file.message = $translate.instant('import.file.upload.progress', {progress: progressPercentage}); - } + }); } } diff --git a/src/pages/import.html b/src/pages/import.html index 6ef7861b5..9b98c32fd 100644 --- a/src/pages/import.html +++ b/src/pages/import.html @@ -36,6 +36,13 @@

+ +
+
+ {{uploadProgressMessage}} +
+
+