diff options
Diffstat (limited to 'vid-app-common/src/main/webapp/app/vid/scripts/modals/report-modal/report-modal.controller.js')
-rw-r--r-- | vid-app-common/src/main/webapp/app/vid/scripts/modals/report-modal/report-modal.controller.js | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/modals/report-modal/report-modal.controller.js b/vid-app-common/src/main/webapp/app/vid/scripts/modals/report-modal/report-modal.controller.js new file mode 100644 index 000000000..6ec5c4154 --- /dev/null +++ b/vid-app-common/src/main/webapp/app/vid/scripts/modals/report-modal/report-modal.controller.js @@ -0,0 +1,63 @@ +/*- + * ============LICENSE_START======================================================= + * VID + * ================================================================================ + * Copyright (C) 2019 NOKIA Intellectual Property. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +(function () { + 'use strict'; + + appDS2.controller("reportModalController", ["$uibModalInstance", "$scope", "$window", "ReportService", "errorMsg", reportModalController]); + + function reportModalController($uibModalInstance, $scope, $window, ReportService, errorMsg) { + const vm = this; + + const init = function() { + vm.timestamp = ReportService.getReportTimeStamp(); + vm.downloadEnable = false; + ReportService.getReportData({}).then( + response => { + vm.saveReportData(response); + }, response => { + vm.printReportFail(response); + }); + }; + + vm.saveReportData = function(response) { + vm.report = errorMsg + "\n\n Collected data from API:\n" + JSON.stringify(response.data, null, "\t") ; + + const blob = new Blob([ vm.report ], { type : 'text/plain' }); + vm.download = ($window.URL || $window.webkitURL).createObjectURL( blob ); + vm.downloadEnable = true; + }; + + vm.printReportFail = function(response) { + vm.downloadEnable = false; + vm.report = errorMsg + "\n\n API error:\n" + JSON.stringify(response.data, null, "\t") ; + }; + + vm.close = function () { + $uibModalInstance.close(); + }; + + vm.ok = function () { + $uibModalInstance.close(true); + }; + + init(); + } +})(); |