Remove ECOMP in headers
[clamp.git] / src / main / resources / META-INF / resources / designer / scripts / CldsOpenModelCtrl.js
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP CLAMP
4  * ================================================================================
5  * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
6  *                             reserved.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License"); 
9  * you may not use this file except in compliance with the License. 
10  * You may obtain a copy of the License at
11  * 
12  * http://www.apache.org/licenses/LICENSE-2.0
13  * 
14  * Unless required by applicable law or agreed to in writing, software 
15  * distributed under the License is distributed on an "AS IS" BASIS, 
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
17  * See the License for the specific language governing permissions and 
18  * limitations under the License.
19  * ============LICENSE_END============================================
20  * ===================================================================
21  * 
22  */
23 app.controller('CldsOpenModelCtrl',
24         ['$scope', '$rootScope', '$modalInstance','cldsModelService', '$location', 'dialogs','cldsTemplateService',
25                 function($scope, $rootScope, $modalInstance, cldsModelService, $location,dialogs,cldsTemplateService) {
26                         
27                         $scope.typeModel='template';
28                         $scope.error = {
29                                 flag : false,
30                                 message: ""
31                         };      
32                         
33                         cldsModelService.getSavedModel().then(function(pars) {
34                                 
35                                 $scope.modelNamel=[]
36                                 for(var i=0;i<pars.length;i++){
37                                         $scope.modelNamel.push(pars[i].value);           
38                                 }
39                                 setTimeout(function(){
40
41                      setMultiSelect(); }, 100);
42                                 
43                         });
44
45                         $scope.paramsRetry = function() {
46                                 //$("#paramsWarn").hide();
47                                 var currentValue = $("#service").val() == null ? previous : $("#service").val();        
48                         $("#ridinSpinners").css("display","")
49                                 loadSharedPropertyByService(currentValue,true,callBack);
50                                 $("#ridinSpinners").css("display","none")
51                         };
52                          $scope.paramsCancel =function() {
53                                 loadSharedPropertyByServiceProperties(callBack);
54                                 $("#paramsWarnrefresh").hide();
55                                 
56                         };
57
58                         function completeClose(){
59                                         //if(flag)      {
60                                                 $scope.close();
61                                         //}
62                                 }
63                         
64                         function callBack(flag){
65                                         if(flag)        {
66                                                 $scope.close();
67                                         }
68                                 }
69                         $scope.refreshASDC=function(){
70                                 $("#ridinSpinners").css("display","")
71                                 var bool=loadSharedPropertyByService(undefined,true,callBack);
72                                 $("#ridinSpinners").css("display","none");
73                                 
74                                 
75                         }
76                         
77                         cldsTemplateService.getSavedTemplate().then(function(pars) {
78                                 $scope.templateNamel=[]
79                                 for(var i=0;i<pars.length;i++){
80                                         $scope.templateNamel.push(pars[i].value);
81                                 }
82                                 setTimeout(function(){
83                                         setMultiSelect();}, 100);
84                         });
85                         
86                         function contains(a, obj) {
87                             var i = a&& a.length>0 ? a.length : 0;
88                             while (i--) {
89                                if (a[i].toLowerCase() === obj.toLowerCase()) {
90                                    return true;
91                                }
92                             }
93                             return false;
94                         }
95                         $scope.checkExisting=function(){
96                                 var name = $('#modelName').val();                                                               
97                                 if(contains($scope.modelNamel,name)){
98                                         $scope.nameinUse=true;
99                                 }else{
100                                         $scope.nameinUse=false;
101                                 }
102                                 specialCharacters();
103                         }
104                          function specialCharacters (){
105                                 $scope.spcl = false;
106                                 if(angular.element("#modelName") && 
107                                         angular.element("#modelName").scope().model.$error.pattern && 
108                                         angular.element("#modelName").scope().model.$error.pattern.length>0){
109                                         $scope.spcl =  true;
110                                 }
111                         }
112
113                         $scope.setTypeModel=function(_type){
114                                 $scope.error.flag = false;
115                                 $scope.typeModel=_type;
116                         }
117                         
118                         $scope.close = function(){
119                                 $rootScope.isNewClosed = false;
120                                 $modalInstance.close("closed");
121                         };
122                         $scope.createNewModelOffTemplate=function(formModel){
123                                 reloadDefaultVariables(false)
124                                 var modelName = document.getElementById("modelName").value;
125                                 var templateName=document.getElementById("templateName").value;
126                                 
127                                 if(!modelName){
128                                         $scope.error.flag =true;
129                                         $scope.error.message = "Please enter any closed template name for proceeding";
130                                     return false;
131                                 }
132                                 // init UTM items
133                                 $scope.utmModelsArray = [];
134                                 $scope.selectedParent = {};
135                                 $scope.currentUTMModel = {};
136                                 $scope.currentUTMModel.selectedParent = {};
137                                 $rootScope.oldUTMModels =[];
138                                 $rootScope.projectName="clds_default_project";          
139                                 var utmModels = {};
140                                 utmModels.name = modelName;
141                                 utmModels.subModels = [];
142                                 $rootScope.utmModels = utmModels;
143                                 
144
145                                 cldsTemplateService.getTemplate( templateName ).then(function(pars) {
146                                 
147                           var tempImageText=pars.imageText;
148                                 var authorizedToUp = pars.userAuthorizedToUpdate;
149                                 pars={}
150                                 
151                                 pars.imageText=tempImageText
152                                 pars.status= "DESIGN";
153                                 if (readMOnly){
154                                         pars.permittedActionCd=[""];
155                                 } else {
156                                         pars.permittedActionCd=["TEST", "SUBMIT"];
157                                 }
158                                 
159                                 selected_template= templateName
160                                 selected_model = modelName;
161                                 
162                                 cldsModelService.processActionResponse(modelName, pars);
163                                 
164                                 // set model bpmn and open diagram
165                                 $rootScope.isPalette = true;
166                         },
167                         function(data) {
168                                 //alert("getModel failed");
169                         });
170                                 allPolicies = {};
171                                 elementMap = {};
172                                 $modalInstance.close("closed");
173                         
174                         }
175                         
176                         $scope.cloneModel=function(){
177                                 reloadDefaultVariables(false)
178                                 var modelName = document.getElementById("modelName").value;
179                                 var originalModel=document.getElementById("modelList").value;
180                                 if(!modelName){
181                                         $scope.error.flag =true;
182                                         $scope.error.message = "Please enter any name for proceeding";
183                                     return false;
184                                 }   
185                                 
186                                 // init UTM items
187                                 $scope.utmModelsArray = [];
188                                 $scope.selectedParent = {};
189                                 $scope.currentUTMModel = {};
190                                 $scope.currentUTMModel.selectedParent = {};
191                                 $rootScope.oldUTMModels =[];
192                                 $rootScope.projectName="clds_default_project";          
193                                 var utmModels = {};
194                                 utmModels.name = modelName;
195                                 utmModels.subModels = [];
196                                 $rootScope.utmModels = utmModels;
197                                 
198
199                                 cldsModelService.getModel( originalModel ).then(function(pars) {
200                                 
201                                 // process data returned
202                                 var propText = pars.propText;
203                                 var status = pars.status;
204                                 var controlNamePrefix = pars.controlNamePrefix;
205                                 var controlNameUuid = pars.controlNameUuid;
206                                 selected_template=pars.templateName;
207                                 typeID = pars.typeId;
208                                 pars.status="DESIGN";
209                                 if (readMOnly){
210                                         pars.permittedActionCd=[""];
211                                 } else {
212                                         pars.permittedActionCd=["TEST", "SUBMIT"];
213                                 }
214                                 pars.controlNameUuid="";
215                                 modelEventService = pars.event;
216                                 //actionCd = pars.event.actionCd;
217                                 actionStateCd = pars.event.actionStateCd;
218                                 deploymentId = pars.deploymentId;
219                                         
220                                 var authorizedToUp = pars.userAuthorizedToUpdate;
221                                 
222                                 cldsModelService.processActionResponse(modelName, pars);
223                                 
224                                 // deserialize model properties
225                                 if ( propText == null ) {
226                                 } else {
227                                         elementMap =  JSON.parse(propText);
228                                 }
229
230                                 selected_model = modelName;
231                                 
232                                 // set model bpmn and open diagram
233                                 $rootScope.isPalette = true;
234                         },
235                         function(data) {
236                                 //alert("getModel failed");
237                         });
238        
239                                 $modalInstance.close("closed");
240                         }
241                         $scope.createNewModel=function(){
242                                 reloadDefaultVariables(false)
243                                 var modelName = document.getElementById("modelName").value;  
244                                 
245                                 // BEGIN env
246                                 // init UTM items
247                                 $scope.utmModelsArray = [];
248                                 $scope.selectedParent = {};
249                                 $scope.currentUTMModel = {};
250                                 $scope.currentUTMModel.selectedParent = {};
251                                 $rootScope.oldUTMModels =[];
252                                 $rootScope.projectName="clds_default_project";          
253                                 var utmModels = {};
254                                 utmModels.name = modelName;
255                                 utmModels.subModels = [];
256                                 $rootScope.utmModels = utmModels;
257                                 
258                         // enable appropriate menu options
259                         var pars = {status: "DESIGN"};
260                         
261                                 cldsModelService.processActionResponse(modelName, pars);
262                         
263                                 selected_model = modelName;
264
265                                 // set model bpmn and open diagram
266                         $rootScope.isPalette = true;
267
268                         $modalInstance.close("closed");
269                         }
270                         $scope.revertChanges=function(){
271                                 $scope.openModel();
272                         }
273                         $scope.openModel = function(){
274                                 reloadDefaultVariables(false)
275                                 if(document.getElementById("readOnly")){
276                                         readMOnly=document.getElementById("readOnly").checked;
277                                 }
278                                 var modelName = document.getElementById("modelName").value;    
279                                 
280                                 // init UTM items
281                                 $scope.utmModelsArray = [];
282                                 $scope.selectedParent = {};
283                                 $scope.currentUTMModel = {};
284                                 $scope.currentUTMModel.selectedParent = {};
285                                 $rootScope.oldUTMModels =[];
286                                 $rootScope.projectName="clds_default_project";          
287                                 var utmModels = {};
288                                 utmModels.name = modelName;
289                                 utmModels.subModels = [];
290                                 $rootScope.utmModels = utmModels;
291                                 
292                                 cldsModelService.getModel( modelName ).then(function(pars) {
293                                 // process data returned
294                                 var propText = pars.propText;
295                                 var status = pars.status;
296                                 controlNamePrefix = pars.controlNamePrefix;
297                                 // var controlNameUuid = pars.controlNameUuid;
298                                 var authorizedToUp = pars.userAuthorizedToUpdate;
299                                 typeID = pars.typeId;
300                                 controlNameUuid = pars.controlNameUuid;
301                                 selected_template=pars.templateName;
302                                 modelEventService = pars.event;
303                                 //actionCd = pars.event.actionCd;
304                                 actionStateCd = pars.event.actionStateCd;
305                                 deploymentId = pars.deploymentId;
306
307                                 if (readMOnly){
308                                         pars.permittedActionCd= [""];
309                                 }
310                                 cldsModelService.processActionResponse(modelName, pars);
311                                 
312                                 // deserialize model properties
313                                 if ( propText == null ) {
314                                 } else {
315                                         elementMap =  JSON.parse(propText);
316                                 }
317
318                                 selected_model = modelName;
319                                 
320                                 // set model bpmn and open diagram
321                                 $rootScope.isPalette = true;
322                         },
323                         function(data) {
324                                 //alert("getModel failed");
325                         });
326        
327                                 $modalInstance.close("closed");
328                         };
329
330                         setMultiSelect();
331                 }
332         ]
333 );