From 770049ea162573d5afa1aaefed6131fe5e0a77f7 Mon Sep 17 00:00:00 2001 From: danielhanrahan Date: Tue, 15 Feb 2022 18:02:23 +0000 Subject: Refactor apex-editor frontend build Moved frontend from src/main/resources/webapp to src/main/webapp Moved static resources such as jquery-ui to webapp/dist folder Configured jest to exclude webapp/dist from coverage report Removed unused ZIP file assembly Cleaned up POM Issue-ID: POLICY-3896 Signed-off-by: danielhanrahan Change-Id: Ia006eb94a39586219029866eef94aef38912ad65 --- .../src/main/webapp/js/ApexFiles.js | 75 ++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 gui-editors/gui-editor-apex/src/main/webapp/js/ApexFiles.js (limited to 'gui-editors/gui-editor-apex/src/main/webapp/js/ApexFiles.js') diff --git a/gui-editors/gui-editor-apex/src/main/webapp/js/ApexFiles.js b/gui-editors/gui-editor-apex/src/main/webapp/js/ApexFiles.js new file mode 100644 index 0000000..de9edf3 --- /dev/null +++ b/gui-editors/gui-editor-apex/src/main/webapp/js/ApexFiles.js @@ -0,0 +1,75 @@ +/* + * ============LICENSE_START======================================================= + * Copyright (C) 2016-2018 Ericsson. All rights reserved. + * Modifications Copyright (C) 2020-2021 Nordix Foundation. + * Modifications Copyright (C) 2021 Bell Canada. 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. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + +import {resultForm_activate} from "./ApexResultForm"; + +const {ajax_put, ajax_get, ajax_getOKOrFail} = require("./ApexAjax"); +const {pageControl_modelMode} = require("./ApexPageControl"); +const {modelFileName} = require("./ApexNewModelForm"); + +function files_fileOpen() { + $('').on('change', function() { + var reader = new FileReader(); + var fileName = this.files[0].name; + reader.readAsText(this.files[0]); + + reader.onload = function(event) { + var requestURL = window.restRootURL + "/Model/Load"; + ajax_put(requestURL, event.target.result, function(resultData) { + localStorage.setItem("apex_model_loaded", true); + requestURL = window.restRootURL + "/Model/GetKey"; + ajax_get(requestURL, function(data) { + var modelKey = JSON.parse(data.messages.message[0]).apexArtifactKey; + pageControl_modelMode(modelKey.name, modelKey.version, fileName); + }); + }); + }; + }).click(); +} + +function files_fileDownload() { + var requestURL = window.restRootURL + "/Model/Download"; + + var downloadLink = document.createElement("a"); + document.body.appendChild(downloadLink); + downloadLink.download = modelFileName; + downloadLink.href = requestURL; + downloadLink.click(); + document.body.removeChild(downloadLink); +} + +function files_fileUpload() { + let requestURL = window.restRootURL + "/Model/Upload"; + const userId = new URLSearchParams(window.location.search).get('userId'); + if (userId) { + requestURL = requestURL + "?userId=" + userId; + } + ajax_getOKOrFail(requestURL, function(data) { + let uploadResultString = ""; + for (let value of data.messages.message) { + uploadResultString += (value + "\n"); + } + resultForm_activate(document.getElementById("mainArea"), "Model Upload Result", uploadResultString); + }); +} + +export {files_fileUpload, files_fileDownload, files_fileOpen}; -- cgit 1.2.3-korg