X-Git-Url: https://gerrit.akraino.org/r/gitweb?p=validation.git;a=blobdiff_plain;f=ui%2Fsrc%2Fmain%2Fwebapp%2Fapp%2FBluvalUI%2FModifyLab%2FModifyLabController.js;fp=ui%2Fsrc%2Fmain%2Fwebapp%2Fapp%2FBluvalUI%2FModifyLab%2FModifyLabController.js;h=f832bf612ace9bf24500b2c3249e3be14b86cb23;hp=0000000000000000000000000000000000000000;hb=3ff5d7028b19a649f6b80c476ff45ced1fdd67dc;hpb=147ecf7bf79ea9967a121d0038103151a38ebef2 diff --git a/ui/src/main/webapp/app/BluvalUI/ModifyLab/ModifyLabController.js b/ui/src/main/webapp/app/BluvalUI/ModifyLab/ModifyLabController.js new file mode 100644 index 0000000..f832bf6 --- /dev/null +++ b/ui/src/main/webapp/app/BluvalUI/ModifyLab/ModifyLabController.js @@ -0,0 +1,98 @@ +/* + * Copyright (c) 2019 AT&T 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. + */ + +var app = angular.module('ModifyLab'); +app + .controller( + 'ModifyLabController', + function($scope, restAPISvc) { + + initialize(); + + function initialize() { + $scope.loadingLabs = true; + $scope.labInfos = []; + $scope.labs = []; + $scope.selectedLab = ''; + $scope.oldName = ''; + $scope.oldSilo = ''; + $scope.newData = {}; + restAPISvc.getRestAPI("/api/v1/lab/", function(data) { + if (data) { + $scope.labInfos = data; + angular.forEach(data, function(lab) { + $scope.labs.push(lab.lab); + }); + } else { + confirm("No labs found"); + } + $scope.loadingLabs = false; + }); + } + + $scope.selectedLabChange = function() { + $scope.oldName = ''; + $scope.oldSilo = ''; + $scope.newData = {}; + var finalLabInfo = ''; + angular.forEach($scope.labInfos, function(labInfo) { + if ($scope.selectedLab.trim() === labInfo.lab + .trim()) { + finalLabInfo = labInfo; + } + }); + if (!finalLabInfo) { + confirm("Error in lab info"); + return; + } + $scope.oldName = finalLabInfo.lab; + $scope.oldSilo = finalLabInfo.silo; + } + + $scope.modify = function() { + if (!$scope.selectedLab || !$scope.newData.name + || !$scope.newData.silo) { + confirm("You must specify all the values"); + return; + } + var finalLabInfo = ''; + angular.forEach($scope.labInfos, function(labInfo) { + if ($scope.selectedLab.trim() === labInfo.lab + .trim()) { + finalLabInfo = labInfo; + } + }); + if (!finalLabInfo) { + confirm("Error in lab info"); + return; + } + finalLabInfo.lab = $scope.newData.name; + finalLabInfo.silo = $scope.newData.silo; + restAPISvc + .postRestAPI( + "/api/v1/lab/", + finalLabInfo, + function(data) { + if (data) { + var confirmText = "The lab has been modified successfully." + confirm(confirmText); + } else { + confirm("Error when modifying the lab"); + } + initialize(); + }); + } + });