X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=POLICY-SDK-APP%2Fsrc%2Fmain%2Fwebapp%2Fapp%2FpolicyApp%2Fcontroller%2FdictionaryController%2FCLPepOptionsDictController.js;fp=POLICY-SDK-APP%2Fsrc%2Fmain%2Fwebapp%2Fapp%2FpolicyApp%2Fcontroller%2FdictionaryController%2FCLPepOptionsDictController.js;h=2d1d2d9319f5d403c3c2ed17ba8e9780899b76b1;hb=e0addf5b588a1244f9679becd90999dfcb4c3a94;hp=0000000000000000000000000000000000000000;hpb=39fb0f30472777e4b60d6a7ac8aa4eb9773961ff;p=policy%2Fengine.git diff --git a/POLICY-SDK-APP/src/main/webapp/app/policyApp/controller/dictionaryController/CLPepOptionsDictController.js b/POLICY-SDK-APP/src/main/webapp/app/policyApp/controller/dictionaryController/CLPepOptionsDictController.js new file mode 100644 index 000000000..2d1d2d931 --- /dev/null +++ b/POLICY-SDK-APP/src/main/webapp/app/policyApp/controller/dictionaryController/CLPepOptionsDictController.js @@ -0,0 +1,115 @@ +/*- + * ============LICENSE_START======================================================= + * ECOMP Policy Engine + * ================================================================================ + * Copyright (C) 2017 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. + * ============LICENSE_END========================================================= + */ +app.controller('editPEPOptionsController', function ($scope, $modalInstance, message, UserInfoServiceDS2, Notification){ + if(message.pepOptionsDictionaryData==null) + $scope.label='Add PEP Options', + $scope.choices = []; + else{ + $scope.label='Edit PEP Options' + $scope.disableCd=true; + $scope.choices = []; + var headers = message.pepOptionsDictionaryData.actions; + var SplitChars = ':#@'; + if (headers.indexOf(SplitChars) >= 0) { + var splitHeader = headers.split(SplitChars); + var singleHeader = splitHeader; + var splitEqual = '=#@'; + for(i = 0; i < singleHeader.length; i++){ + if (singleHeader[i].indexOf(splitEqual) >= 0) { + var splitValue = singleHeader[i].split(splitEqual); + var key = splitValue[0]; + var value = splitValue[1]; + var newItemNo = $scope.choices.length+1; + $scope.choices.push({'id':'choice'+newItemNo, 'option': key , 'number' : value }); + } + } + }else{ + var splitEqual = '=#@'; + if (headers.indexOf(splitEqual) >= 0) { + var splitValue = headers.split(splitEqual); + var key = splitValue[0]; + var value = splitValue[1]; + $scope.choices.push({'id':'choice'+1, 'option': key , 'number' : value }); + } + } + } + + /*getting user info from session*/ + var userid = null; + UserInfoServiceDS2.getFunctionalMenuStaticDetailSession() + .then(function (response) { + userid = response.userid; + }); + + $scope.editPEPOptions = message.pepOptionsDictionaryData; + + $scope.saveCLPepOptions = function(pepOptionsDictionaryData) { + var regex = new RegExp("^[a-zA-Z0-9_]*$"); + if(!regex.test(pepOptionsDictionaryData.pepName)) { + Notification.error("Enter Valid PEP Name without spaces or special characters"); + }else{ + var finalData = extend(pepOptionsDictionaryData, $scope.actions[0]); + var uuu = "saveDictionary/cl_dictionary/save_pepOptions"; + var postData={pepOptionsDictionaryData: finalData, userid: userid}; + $.ajax({ + type : 'POST', + url : uuu, + dataType: 'json', + contentType: 'application/json', + data: JSON.stringify(postData), + success : function(data){ + $scope.$apply(function(){ + $scope.pepOptionsDictionaryDatas=data.pepOptionsDictionaryDatas;}); + if($scope.pepOptionsDictionaryDatas == "Duplicate"){ + Notification.error("PEP Options Dictionary exists with Same PEP Name.") + }else{ + console.log($scope.pepOptionsDictionaryDatas); + $modalInstance.close({pepOptionsDictionaryDatas:$scope.pepOptionsDictionaryDatas}); + } + }, + error : function(data){ + alert("Error while saving."); + } + }); + } + }; + + $scope.close = function() { + $modalInstance.close(); + }; + + function extend(obj, src) { + for (var key in src) { + if (src.hasOwnProperty(key)) obj[key] = src[key]; + } + return obj; + } + + $scope.actions = [{"attributes" : $scope.choices}]; + $scope.addNewChoice = function() { + var newItemNo = $scope.choices.length+1; + $scope.choices.push({'id':'choice'+newItemNo}); + }; + $scope.removeChoice = function() { + var lastItem = $scope.choices.length-1; + $scope.choices.splice(lastItem); + }; + +}); \ No newline at end of file