2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights
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
12 * http://www.apache.org/licenses/LICENSE-2.0
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 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
29 var app = angular.module('clds-app', ['ngRoute',
31 'angularjs-dropdown-multiselect',
32 'angularjs-dropdown-multiselect-new',
35 'angular-loading-bar',
39 'ui.grid.resizeColumns',
51 .config(['cfpLoadingBarProvider', function(cfpLoadingBarProvider)
53 console.log("///////////////cfpLoadingBarProvider");
54 cfpLoadingBarProvider.includeBar = true;
55 cfpLoadingBarProvider.includeSpinner = true;
57 .config(function ($httpProvider) {
58 console.log("config");
59 $httpProvider.responseInterceptors.push('myHttpInterceptor');
61 var spinnerFunction = function spinnerFunction(data, headersGetter)
63 console.log("spinnerFunction");
67 $httpProvider.defaults.transformRequest.push(spinnerFunction);
69 .config(['$routeProvider','$locationProvider', '$compileProvider','cfpLoadingBarProvider',function(
72 cfpLoadingBarProvider,
77 console.log("$routeProvider','$locationProvider', '$compileProvider','cfpLoadingBarProvider'")
78 $locationProvider.html5Mode(false);
82 when('/otherwise', {templateUrl: 'partials/please_wait.html', controller: QueryParamsHandlerCtrl }).
83 //when('/dashboard_submit', { templateUrl: 'partials/portfolios/dashboard_submit.html', controller: CreateNewPrjCtrl }).
84 when('/dashboard', { templateUrl: 'partials/portfolios/clds_modelling.html', controller: DashboardCtrl }).
85 //when('/dashboard_upload', { templateUrl: 'partials/portfolios/dashboard_upload.html', controller: DashboardCtrl }).
86 when('/activity_modelling', { templateUrl: 'partials/portfolios/clds_modelling.html', controller: DashboardCtrl }).
87 when('/authenticate', { templateUrl: 'authenticate.html', controller: AuthenticateCtrl }).
88 when('/invalidlogin', { templateUrl: 'partials/invalid_login.html', controller: PageUnderConstructionCtrl }).
89 otherwise({redirectTo: '/otherwise'});
91 }]).controller('dialogCtrl',function($scope,$rootScope,$timeout,dialogs){
94 console.log("dialogCtrl");
95 $scope.lang = 'en-US';
96 $scope.language = 'English';
101 $scope.confirmed = 'No confirmation yet!';
107 //-- Listeners & Watchers --//
109 $scope.$watch('lang',function(val,old){
113 $scope.language = 'English';
116 $scope.language = 'Spanish';
122 $rootScope.testCaseRequirements=[];
123 $rootScope.validTestRequirements=[];
124 /*$rootScope.testCaseValue=[];*/
125 $scope.setLanguage = function(lang)
127 console.log("setLanguage");
130 $translate.use(lang);
133 $rootScope.launch = function(which){
134 console.log("launch");
140 //var dlg = dialogs.wait(undefined,undefined,_progress);
141 //_fakeWaitProgress();
144 //var dlg = dialogs.wait('Custom Wait Header','Custom Wait Message',_progress);
145 //_fakeWaitProgress();
151 var dlg = dialogs.confirm();
152 dlg.result.then(function(btn){
153 console.log("dlg.result");
154 $scope.confirmed = 'You confirmed "Yes."';
157 $scope.confirmed = 'You confirmed "No."';
161 var dlg = dialogs.create('/dialogs/custom.html','customDialogCtrl',{},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
162 dlg.result.then(function(name){
163 console.log("dlg.result");
166 console.log("custom");
167 if(angular.equals($scope.name,''))
168 $scope.name = 'You did not enter in your name!';
172 var dlg = dialogs.create('/dialogs/custom2.html','customDialogCtrl2',$scope.custom,{size:'lg'});
175 var dlg = dialogs.notify('Message','All is not supported, Please select interface(s)/version(s) to fetch real time federated coverage report.');
178 var dlg = dialogs.confirm('Message','You are about to fetch real time federated coverage report.This may take sometime!!!.');
179 dlg.result.then(function(btn){
180 console.log("dlg.result");
181 $scope.confirmed = 'You confirmed "Yes."';
184 $scope.confirmed = 'You confirmed "No."';
188 var dlg = dialogs.notify('Success','Request has been successfully processed.');
191 var dlg = dialogs.notify('Message','Please type Testscenario Name');
196 var _fakeWaitProgress = function()
198 console.log("_fakeWaitProgress");
201 console.log("timeout");
205 $rootScope.$broadcast('dialogs.wait.progress',{'progress' : _progress});
210 $rootScope.$broadcast('dialogs.wait.complete');
215 }).controller('MenuCtrl',['$scope', '$rootScope','$timeout','dialogs','$location','MenuService','Datafactory',
216 'userPreferencesService','cldsModelService','cldsTemplateService',function($scope,$rootScope,$timeout,dialogs,
217 $location, MenuService,Datafactory,userPreferencesService,cldsModelService,cldsTemplateService)
219 console.log("MenuCtrl");
220 $rootScope.screenName="Universal Test Modeler";
221 $rootScope.testSet = null;
222 $rootScope.isNew= false;
224 $rootScope.contactUs= function()
226 console.log("contactUs");
227 var link = "mailto:onap-discuss@lists.onap.org?subject=CLAMP&body=Please send us suggestions or feature enhancements or defect. If possible, please send us the steps to replicate any defect.";
228 window.location.href = link;
231 $scope.emptyMenuClick = function(value, name) {
232 if ($rootScope.isNew && (name != "Save Template" && name != "Close Template" &&
233 name != "Template Properties")) {
234 saveConfirmationNotificationPopUp();
235 } else if ($rootScope.isNewClosed && name != "Save CL" && name != "Close Model" &&
236 name != "Properties CL") {
237 saveConfirmationNotificationPopUp();
242 function saveConfirmationNotificationPopUp() {
243 $scope.saveConfirmationNotificationPopUp(function(data) {
244 console.log("saveConfirmationNotificationPopUp");
246 if ($rootScope.isNewClosed) {
247 isSaveCheck("Save CL");
249 isSaveCheck("Save Template");
251 $rootScope.isNewClosed = false;
252 $rootScope.isNew = false;
259 function isSaveCheck(name) {
260 console.log("isSaveCheck");
261 if (name == "Wiki") {
263 } else if (name == "Contact Us") {
264 $rootScope.contactUs();
265 } else if (name == "Revert Template Changes") {
266 $scope.cldsRevertTemplate();
267 } else if (name == "Revert Model Changes") {
268 $scope.cldsRevertModel();
269 } else if (name == "Create Template") {
270 $rootScope.isNew = true;
271 $scope.cldsCreateTemplate();
272 } else if (name == "Open Template") {
273 $scope.cldsOpenTemplate();
274 } else if (name == "Save Template") {
275 $scope.cldsTemplatePerformAction("SAVE");
276 $rootScope.isNewClosed = false;
277 $rootScope.isNew = false;
278 } else if (name == "Template Properties") {
279 $scope.cldsOpenTemplateProperties();
280 } else if (name == "Close Model" || name == "Close Template") {
282 } else if (name == "Refresh ASDC") {
283 $scope.cldsRefreshASDC();
284 } else if (name == "Create CL") {
285 $rootScope.isNewClosed = true;
286 $scope.cldsCreateModel();
287 } else if (name == "Open CL") {
288 $scope.cldsOpenModel();
289 } else if (name == "Save CL") {
290 $rootScope.isNewClosed = false;
291 $rootScope.isNew = false;
292 $scope.cldsPerformAction("SAVE");
293 } else if (name == "Test") {
294 $scope.cldsPerformAction("TEST");
295 } else if (name == "Submit") {
296 $scope.cldsConfirmPerformAction("SUBMIT");
297 } else if (name == "Resubmit") {
298 $scope.cldsConfirmPerformAction("RESUBMIT");
299 } else if (name == "Update") {
300 $scope.cldsConfirmPerformAction("UPDATE");
301 } else if (name == "Delete") {
302 $scope.cldsConfirmPerformAction("DELETE");
303 } else if (name == "Stop") {
304 $scope.cldsConfirmPerformAction("STOP");
305 } else if (name == "Restart") {
306 $scope.cldsConfirmPerformAction("RESTART");
307 } else if (name == "Refresh Status") {
308 $scope.cldsPerformAction("REFRESH");
309 } else if (name == "Properties CL") {
310 $scope.cldsOpenModelProperties();
311 } else if (name === "Running Instances") {
312 $scope.cldsShowRunningInstances();
314 $rootScope.screenName = name;
315 $scope.updatebreadcrumb(value);
316 $location.path(value);
324 $rootScope.impAlerts= function()
326 console.log("impAlerts");
332 link: "/cldsCreateTemplate",
333 name: "Create Template"
335 link: "/cldsOpenTemplate",
336 name: "Open Template"
338 link: "/cldsSaveTemplate",
339 name: "Save Template"
342 link: "/cldsOpenTemplateProperties",
343 name: "Template Properties"
346 link: "/RevertChanges",
347 name: "Revert Template Changes"
351 name: "Close Template"
357 link: "/cldsCreateModel",
360 link: "/cldsOpenModel",
363 link: "/cldsSaveModel",
367 link: "/cldsOpenModelProperties",
368 name: "Properties CL"
371 link: "/RevertChanges",
372 name: "Revert Model Changes"
381 link: "/cldsTestActivate",
389 link: "/cldsResubmit",
401 link: "/cldsRestart",
411 link: "/refreshStatus",
412 name: "Refresh Status"
415 link:"/refreshASDCProperties",
419 link:"/viewRunningInstances",
420 name:"Running Instances"
425 link: "http://wiki.onap.org",
439 Object.keys = function(obj)
446 if (obj.hasOwnProperty(i)) {
453 $scope.keyList = Object.keys($scope.tabs);
456 $scope.keyList = Object.keys($scope.tabs);
459 $scope.updatebreadcrumb = function(path)
461 console.log("updatebreadcrumb");
462 var currentURL = $location.path();
468 if(currentURL=="/dashboard")
470 $rootScope.screenName = "Universal Test Modeler";
471 $rootScope.parentMenu = "Home";
472 $rootScope.rightTabName="UTM Build Configuration";
474 /*else if(currentURL=="/quicksearch")
476 $rootScope.screenName = "Quick Search";
477 $rootScope.parentMenu = "Home";
483 angular.forEach($scope.keyList, function(value, key)
485 console.log("foreachfunction");
488 $rootScope.parentMenu = value;
490 angular.forEach($scope.tabs[value], function(value, key)
492 console.log("tebvalue");
493 if(currentURL==value.link)
495 $rootScope.screenName=value.name;
504 $scope.updatebreadcrumb();
506 $scope.createNewProject = function(){
507 console.log("createNewProject");
508 if($rootScope.projectName != null){
509 var dlg = dialogs.confirm('Message','Do you want to over-write the project ?');
511 dlg.result.then(function(btn){
512 console.log("dlg.result");
513 $scope.clearProject();
514 var dlg1 = dialogs.create('partials/portfolios/create_new_project.html','CreateNewPrjCtrl',{},{size:'sm',keyboard: true,backdrop: false,windowClass: 'my-class'});
515 dlg1.result.then(function(name){
516 console.log("dlg.result");
517 //$scope.name = name;
519 console.log("emptyfunction");
520 //if(angular.equals($scope.name,''))
521 //$scope.name = 'You did not enter in your name!';
525 //$modalInstance.close("closed");
529 var dlg = dialogs.create('partials/portfolios/create_new_project.html','CreateNewPrjCtrl',{},{size:'lg',keyboard: true,backdrop: false,windowClass: 'my-class'});
530 dlg.result.then(function(name){
531 console.log("dlg.result");
532 //$scope.name = name;
534 console.log("emptyfunction");
535 //if(angular.equals($scope.name,''))
536 //$scope.name = 'You did not enter in your name!';
542 $scope.clearProject= function(){
543 console.log("clearProject");
544 $rootScope.projectName= null;
545 $rootScope.revision = -1;
546 //$rootScope.models.length=0;
547 $rootScope.utmModels=$rootScope.$new(true);
548 $rootScope.serviceInfo = $rootScope.$new(true);
549 $rootScope.serviceInfo= null;
550 $rootScope.serviceInputPartInfo = $rootScope.$new(true);
551 $rootScope.serviceOutputPartInfo=$rootScope.$new(true);
552 $rootScope.servicefaultPartInfo =$rootScope.$new(true);
553 $rootScope.isModel = false;
554 $("#paletteDiv").load('./modeler/dist/index.html');
555 $rootScope.isPalette = false;
556 $rootScope.isTestset = false;
557 $rootScope.isRequirementCoverage = false;
558 $rootScope.ispropertyExplorer = false;
559 // $("#propertyDiv").load('./partials/portfolios/Property_Explorer.html');
560 $rootScope.modelName="";
561 //document.getElementById('propertyExplorer').classList.remove('visible');
562 document.getElementById("modeler_name").textContent="Activity Modeler";
563 //$( "#propertyExplorer" ).prev().css( "display", "block" );
564 $( "#activity_modeler" ).prev().css( "display", "block" );
565 $( 'div' ).find('.k-expand-next').click();
571 $scope.homePage=function(){
572 console.log("homePage");
573 $location.path('/dashboard');
575 $scope.propertyExplorerErrorMessage = function(msg)
577 console.log("propertyExplorerErrorMessage");
578 var dlg = dialogs.notify('Error',msg);
581 //$scope.fromTstMultipleFlag=false;
582 /*onclicking of review testset / generate testset */
583 $scope.generateTestSet=function(testingType){
584 console.log("generateTestSet");
586 var generateTestSetMDTURL = "/utm-service/test_generation/generateMDTTestSet";
588 var UTMProjectExplorer = {};
589 UTMProjectExplorer.projectName = $rootScope.projectName;
590 UTMProjectExplorer.utmModels = $rootScope.utmModels;
592 UTMProjectExplorer.utmDepthValueMap = $rootScope.depthElementKeyMap;
593 UTMProjectExplorer.utmCountValueMap = $rootScope.countElementKeyMap;
595 var utmMDTRequest = {};
596 utmMDTRequest.mainProcessName = selected_model;
598 $rootScope.populateUTMModelArray(utm_models,$rootScope.utmModels);
599 utmMDTRequest.utmModels = utm_models;
601 utmMDTRequest.testingType=testingType;
603 utmMDTRequest.utmProjectExplorer = UTMProjectExplorer;
604 if ($rootScope.wsdlInfo != null) {
605 utmMDTRequest.schemaLocation = $rootScope.wsdlInfo.schemaLocation;
608 utmMDTRequest.dbToolRequests = Datafactory.getDbToolProjectLevelList();
609 utmMDTRequest.runtimePythonScriptProjectLevelList = Datafactory.getRuntimePythonScriptProjectLevelList();
610 utmMDTRequest.xmlValidatorList = Datafactory.getXmlValidatorList();
611 utmMDTRequest.modelPreferenceInfo = Datafactory.getModelPreferenceInfo();
612 MenuService.generateMDTTestSet(utmMDTRequest, generateTestSetMDTURL)
613 .then(function(pars) {
614 list_model_test_sets[selected_model] = pars;
616 //populate test sets of other models
617 for(var i = 0; i < utm_models.length; i++){
618 var model_test_set = {};
619 model_test_set.activityTestCases = [];
620 model_test_set.invalidModelException = pars.invalidModelException;
621 model_test_set.serviceName = pars.serviceName;
622 for(var y = 0; y < pars.activityTestCases.length; y++){
623 for(var z = 0; z < pars.activityTestCases[y].modelElements.length; z++){
624 if(pars.activityTestCases[y].modelElements[z].modelName == utm_models[i].modelName){
625 model_test_set.activityTestCases.push(pars.activityTestCases[y]);
630 list_model_test_sets[utm_models[i].modelName] = model_test_set;
633 list_model_test_sets[selected_model] = pars;
635 if(pars.invalidModelException.invalidModelElementExceptions.length>0){
636 for(var i=0;i<pars.invalidModelException.invalidModelElementExceptions.length;i++){
637 errorMessage = errorMessage +"\n"+"["+(i+1)+"]." + " "+pars.invalidModelException.invalidModelElementExceptions[i].message+"\n";
638 console.log("error Message:"+errorMessage);
641 var dlg = dialogs.notify('Failure',errorMessage);
645 $rootScope.modeltestset = pars;
647 if(!$scope.fromTstMultipleFlag){
648 $rootScope.isPalette = false;
649 $rootScope.isTestset = true;
650 $rootScope.isRequirementCoverage = false;
651 document.getElementById("modeler_name").textContent="UTM Test Set";
652 //document.getElementById('propertyExplorer').classList.add('visible');
653 $('div').find('.k-collapse-next').click();
654 //$( "#propertyExplorer" ).prev().css( "display", "none" );
655 //$rootScope.$apply();
656 document.getElementById("Review/Validate Test Set").classList.remove('ThisLink');
658 document.getElementById("Export to Excel").classList.remove('ThisLink');
659 /*document.getElementById("Export Test Set").classList.remove('ThisLink');*/
660 document.getElementById("Test Case / Requirement Coverage").classList.remove('ThisLink');
661 //$rootScope.$apply();
673 $scope.reviewTestSet=function(){
675 console.log("reviewTestSet");
676 $rootScope.modeltestset = list_model_test_sets[selected_model];
678 $rootScope.isPalette = false;
679 $rootScope.isTestset = true;
680 $rootScope.isRequirementCoverage = false;
681 document.getElementById("modeler_name").textContent="UTM Test Set";
682 //document.getElementById('propertyExplorer').classList.add('visible');
684 //$( "#propertyExplorer" ).prev().css( "display", "none" );
685 $('div').find('.k-collapse-next').click();
686 console.log($rootScope.modeltestset);
687 //$rootScope.$apply();
692 $scope.requirementCoverage=function(){
693 console.log("requirementCoverage");
694 $rootScope.testCaseRequirements=[];
695 $rootScope.validTestRequirementArray=[];
696 $rootScope.validTestRequirements={};
697 $rootScope.modeltestset = list_model_test_sets[selected_model];
698 var allPathDetails=[];
699 $scope.currentSelectedModel = {};
700 $scope.getPathDetails($rootScope.utmModels,selected_model);
701 $scope.populatePathDetails(allPathDetails,$scope.currentSelectedModel);
702 $rootScope.pathDetailsList = list_model_path_details[selected_model];
703 /*for(var p=0;p<100;p++){
704 $rootScope.testCaseRequirements.push("Requirement"+p);
706 for(var p=0;p<100;p++){
707 $rootScope.testCaseValue.push("TestCase"+p);
709 for(var x=0;x<allPathDetails.length;x++){
710 var tempPathDetails = allPathDetails[x];
711 if(tempPathDetails != null){
712 for (var i = 0; i < tempPathDetails.length; i++) {
713 var pathDetails = tempPathDetails[i];
714 if(pathDetails.requirement !=='' && pathDetails.requirement !== null ){
715 $rootScope.testCaseRequirements.push(pathDetails.requirement);
718 /*for (var j = 0; j < pathDetails.decisionIdentifiers.length; j++) {
719 if(pathDetails.decisionIdentifiers[j].requirement !== '' && pathDetails.decisionIdentifiers[j].requirement !== null){
720 $rootScope.testCaseRequirements.push(pathDetails.decisionIdentifiers[j].requirement);
727 /*console.log("path details "+JSON.stringify($rootScope.pathDetailsList));
728 console.log("modeltestset "+$rootScope.modeltestset);*/
729 for(var p=0;p<$rootScope.modeltestset.activityTestCases.length;p++)
731 var activityTestCases = $rootScope.modeltestset.activityTestCases[p];
732 if (activityTestCases.mappedRequirements !=null) {
733 for (var i = 0; i < activityTestCases.mappedRequirements.length; i++) {
734 //$rootScope.testCaseRequirements
735 //.push(activityTestCases.mappedRequirements[i]);
736 var testCaseNames = $rootScope.validTestRequirements[activityTestCases.mappedRequirements[i]];
737 if(testCaseNames == null){
740 if(activityTestCases.version !=null)
741 var testCase= activityTestCases.testCaseName + "_" +activityTestCases.version;
743 var testCase= activityTestCases.testCaseName;
744 testCaseNames.push(testCase);
745 $rootScope.validTestRequirements[activityTestCases.mappedRequirements[i]]=testCaseNames;
755 $rootScope.isPalette = false;
756 $rootScope.isTestset = false;
757 $rootScope.isRequirementCoverage = true;
758 document.getElementById("modeler_name").textContent="Test Case / Requirement Coverage";
759 //document.getElementById('propertyExplorer').classList.add('visible');
760 console.log("modeltestset"+JSON.stringify($rootScope.modeltestset));
761 //$( "#propertyExplorer" ).prev().css( "display", "none" );
762 $('div').find('.k-collapse-next').click();
763 //$rootScope.$apply();
772 $scope.activityModelling = function(){
773 console.log(".activityModelling");
774 //window.open("./bpmn-js-examples-master/modeler/dist/index.html", "_self");
775 // $location.path('/activity_modelling');
777 /*$scope.openProject = function(){
778 $location.path('/dashboard_upload');
780 $rootScope.cldsOpenTemplateProperties=function(){
781 console.log("cldsOpenTemplateProperties");
782 var dlg = dialogs.create('partials/portfolios/global_template_properties.html','CldsOpenTemplateCtrl',{},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
784 dlg.result.then(function(name){
785 console.log("dlg.result");
786 //$scope.modelName =modelName;
787 //$("#" + selected_model).addClass("selectedcolor");
788 //alert ("model name:"+$scope.modelName);
790 console.log("....emptyfunction");
791 //if(angular.equals($scope.name,''))
792 //$scope.name = 'You did not enter in your name!';
796 $scope.cldsShowRunningInstances=function(){
797 console.log("cldsShowRunningInstances");
799 var modelName = selected_model;
801 cldsModelService.getRunningInstances(modelName).then(function(pars) {
802 console.log("getRunningInstances");
803 localInstances = pars;
804 angular.forEach(localInstances.cldsModelInstanceList , function(element){
805 console.log("cldsModelInstanceList");
806 element.status = "Stopped";
807 if ( localInstances.status == "ACTIVE" ) {
808 element.status = "Running";
812 runningInstances = localInstances.cldsModelInstanceList;
813 dlg = dialogs.create('partials/portfolios/running_instances.html','CldsOpenModelCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
814 dlg.result.then(function(name){
815 console.log("dlg.ressult");
816 //$scope.name = name;
818 console.log("...emptyfunction");
819 //if(angular.equals($scope.name,''))
820 //$scope.name = 'You did not enter in your name!';
825 //alert("setModel failed: " + data);
831 $scope.cldsClose = function(){
832 console.log("cldsClose");
833 var dlg = dialogs.create('partials/portfolios/confirmation_window.html','CldsOpenTemplateCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
835 dlg.result.then(function(name){
836 console.log("dlg.result");
837 //$scope.name = name;
839 console.log("...emptyfunction");
840 //if(angular.equals($scope.name,''))
841 //$scope.name = 'You did not enter in your name!';
844 $scope.cldsOpenTemplate = function(){
845 console.log("cldsOpenTemplate");
846 var dlg = dialogs.create('partials/portfolios/clds_open_template.html','CldsOpenTemplateCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
848 dlg.result.then(function(name){
849 console.log("dlg.result");
850 //$scope.name = name;
852 console.log("emptyfunction");
853 //if(angular.equals($scope.name,''))
854 //$scope.name = 'You did not enter in your name!';
857 $scope.saveConfirmationNotificationPopUp = function(callBack) {
858 console.log("saveConfirmationNotificationPopUp");
859 var dlg = dialogs.create('partials/portfolios/save_confirmation.html', 'saveConfirmationModalPopUpCtrl', { closable: true, draggable: true }, { size: 'lg', keyboard: true, backdrop: 'static', windowClass: 'my-class' });
861 dlg.result.then(function(name) {
863 console.log("MINA TEST OK BUTTON: " + callBack);
866 console.log("CANCEL");
871 $scope.cldsCreateTemplate=function(){
872 console.log("cldsCreateTemplate");
873 var dlg = dialogs.create('partials/portfolios/clds_create_template.html','CldsOpenTemplateCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
875 dlg.result.then(function(name){
876 console.log("dlg.result");
877 //$scope.name = name;
879 console.log("...emptyfunction");
880 //if(angular.equals($scope.name,''))
881 //$scope.name = 'You did not enter in your name!';
885 $scope.cldsRefreshASDC=function(){
886 console.log("cldsRefreshASDC");
887 var dlg = dialogs.create('partials/portfolios/refresh_asdc.html','CldsOpenModelCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
888 dlg.result.then(function(name){
889 console.log("dlg.result");
890 //$scope.name = name;
892 console.log("...emtptyfunction");
893 //if(angular.equals($scope.name,''))
894 //$scope.name = 'You did not enter in your name!';
897 $scope.cldsRevertModel=function(){
898 console.log("cldsRevertModel");
899 var dlg = dialogs.create('partials/portfolios/ConfirmRevertChanges.html','CldsOpenModelCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
901 dlg.result.then(function(name){
902 console.log("dlg.result");
903 //$scope.name = name;
905 console.log("...emptyfunction");
906 //if(angular.equals($scope.name,''))
907 //$scope.name = 'You did not enter in your name!';
912 $scope.cldsRevertTemplate=function(){
913 console.log("cldsRevertTemplate");
914 var dlg = dialogs.create('partials/portfolios/ConfirmRevertChanges.html','CldsOpenTemplateCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
916 dlg.result.then(function(name){
917 console.log("dlg.result");
918 //$scope.name = name;
920 console.log("..emptyfunction");
921 //if(angular.equals($scope.name,''))
922 //$scope.name = 'You did not enter in your name!';
926 $scope.cldsTemplatePerformAction = function(uiAction){
927 console.log("cldsTemplatePerformAction");
928 var modelName = selected_model;
929 var controlNamePrefix = "ClosedLoop-";
930 var bpmnText = modelXML;
931 // serialize model properties
932 var propText = JSON.stringify(elementMap);
934 console.log("Generateing svg image");
936 console.log(abootDiagram.saveSVG({format:true},function(err,xml){
944 console.log("cldsTemplatePerformAction: " + uiAction + " modelName=" + modelName);
945 console.log("cldsTemplatePerformAction: " + uiAction + " controlNamePrefix=" + controlNamePrefix);
946 console.log("cldsTemplatePerformAction: " + uiAction + " bpmnText=" + bpmnText);
947 console.log("cldsTemplatePerformAction: " + uiAction + " propText=" + propText);
948 cldsTemplateService.processAction( uiAction, modelName, controlNamePrefix, bpmnText, propText,svgXml).then(function(pars) {
949 console.log("processAction");
950 console.log("cldsTemplatePerformAction: pars=" + pars);
951 cldsTemplateService.processActionResponse(modelName, pars);
954 console.log(".....emptyfunction");
955 //alert("setModel failed: " + data);
961 $rootScope.cldsOpenModelProperties=function(){
962 console.log("cldsOpenModelProperties");
963 var dlg = dialogs.create('partials/portfolios/global_properties.html','GlobalPropertiesCtrl',{},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
965 dlg.result.then(function(name){
966 console.log("dlg.result");
967 //$scope.modelName =modelName;
968 //$("#" + selected_model).addClass("selectedcolor");
969 //alert ("model name:"+$scope.modelName);
971 console.log("...emptyfunction");
972 //if(angular.equals($scope.name,''))
973 //$scope.name = 'You did not enter in your name!';
976 $scope.cldsOpenModel = function(){
977 console.log("cldsOpenModel");
978 var dlg = dialogs.create('partials/portfolios/clds_open_model.html','CldsOpenModelCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
980 dlg.result.then(function(name){
981 console.log("dlg.result");
982 //$scope.name = name;
984 console.log("...emptyfunction");
985 //if(angular.equals($scope.name,''))
986 //$scope.name = 'You did not enter in your name!';
989 $scope.cldsCreateModel=function(){
990 console.log("cldsCreateModel");
991 var dlg = dialogs.create('partials/portfolios/clds_create_model_off_Template.html','CldsOpenModelCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
993 dlg.result.then(function(name){
994 console.log("dlg.result");
995 //$scope.name = name;
997 console.log("...emptyfunction");
998 //if(angular.equals($scope.name,''))
999 //$scope.name = 'You did not enter in your name!';
1003 $scope.cldsPerformAction = function(uiAction){
1004 console.log("cldsPerformAction");
1005 var modelName = selected_model;
1006 var controlNamePrefix = "ClosedLoop-";
1007 var bpmnText = modelXML;
1008 // serialize model properties
1009 var propText = JSON.stringify(elementMap);
1010 var templateName=selected_template
1011 console.log("Generateing svg image");
1013 console.log(abootDiagram.saveSVG({format:true},function(err,xml){
1015 console.log("error")
1020 console.log("cldsPerformAction: " + uiAction + " modelName=" + modelName);
1021 console.log("cldsPerformAction: " + uiAction + " controlNamePrefix=" + controlNamePrefix);
1022 console.log("cldsPerformAction: " + uiAction + " bpmnText=" + bpmnText);
1023 console.log("cldsPerformAction: " + uiAction + " propText=" + propText);
1024 cldsModelService.processAction( uiAction, modelName, controlNamePrefix, bpmnText, propText,svgXml,templateName).then(function(pars) {
1025 console.log("cldsPerformAction: pars=" + pars);
1026 cldsModelService.processRefresh(pars);
1029 console.log("data");
1030 //alert("setModel failed: " + data);
1034 $scope.cldsConfirmPerformAction = function(uiAction){
1036 console.log("cldsConfirmPerformAction");
1037 var dlg = dialogs.confirm('Message', 'Do you want to ' + uiAction.toLowerCase() + ' the closed loop?');
1038 dlg.result.then(function (btn) {
1039 console.log("dlg.result");
1040 $scope.cldsPerformAction(uiAction);
1043 //$modalInstance.close("closed");
1047 $scope.CollectorsWindow = function (collectorsWin) {
1048 console.log("CollectorsWindow");
1051 var dlg = dialogs.create('partials/portfolios/Template_model.html','ImportSchemaCtrl',collectorsWin,{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
1052 dlg.result.then(function(name){
1053 console.log("dlg.result");
1056 console.log("...emptyfunction");
1057 //if(angular.equals($scope.name,''))
1058 //$scope.name = 'You did not enter in your name!';
1062 var dlg = dialogs.create('partials/portfolios/Collector_properties.html','ImportSchemaCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
1063 dlg.result.then(function(name){
1064 console.log("dlg.result");
1067 console.log("...emptyfunction");
1068 //if(angular.equals($scope.name,''))
1069 //$scope.name = 'You did not enter in your name!';
1075 $scope.StringMatchWindow = function (stringMatch) {
1076 console.log("StringMatchWindow");
1078 var dlg = dialogs.create('partials/portfolios/Template_model.html','ImportSchemaCtrl',stringMatch,{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
1079 dlg.result.then(function(name){
1080 console.log("dlg.result");
1083 console.log("...emptyfunction");
1084 //if(angular.equals($scope.name,''))
1085 //$scope.name = 'You did not enter in your name!';
1090 var dlg = dialogs.create('partials/portfolios/stringMatch_properties.html','ImportSchemaCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
1092 dlg.result.then(function(name){
1093 console.log("dlg.result");
1094 //$scope.name = name;
1096 console.log("...emptyfunction");
1097 //if(angular.equals($scope.name,''))
1098 //$scope.name = 'You did not enter in your name!';
1104 $scope.TCAWindow = function (tca) {
1106 var dlg = dialogs.create('partials/portfolios/Template_model.html','ImportSchemaCtrl',tca,{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
1107 dlg.result.then(function(name){
1109 //if(angular.equals($scope.name,''))
1110 //$scope.name = 'You did not enter in your name!';
1114 var dlg = dialogs.create('partials/portfolios/tca_properties.html','ImportSchemaCtrl',{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
1116 dlg.result.then(function(name){
1117 //$scope.name = name;
1119 //if(angular.equals($scope.name,''))
1120 //$scope.name = 'You did not enter in your name!';
1125 $scope.PolicyWindow=function (policy) {
1126 console.log("PolicyWindow");
1128 var dlg = dialogs.create('partials/portfolios/Template_model.html','ImportSchemaCtrl',policy,{closable:true,draggable:true},{size:'lg',keyboard: true,backdrop: 'static',windowClass: 'my-class'});
1129 dlg.result.then(function(name){
1130 console.log("dlg.result");
1133 console.log("...emptyfunction");
1134 //if(angular.equals($scope.name,''))
1135 //$scope.name = 'You did not enter in your name!';
1139 var dlg = dialogs.create('partials/portfolios/PolicyWindow_properties.html', 'ImportSchemaCtrl', {
1142 }, {size: 'lg', keyboard: true, backdrop: 'static', windowClass: 'my-class'});
1144 dlg.result.then(function (name) {
1145 console.log("dlg.result");
1146 //$scope.name = name;
1148 console.log("...emptyfunction");
1149 //if(angular.equals($scope.name,''))
1150 //$scope.name = 'You did not enter in your name!';
1159 $scope.populatePathDetails= function(allPathDetails,utmModels){
1160 console.log("populatePathDetails");
1161 if (utmModels != null && utmModels.name != null) {
1162 var pathDetails = {};
1163 pathDetails = list_model_path_details[utmModels.name];
1164 allPathDetails.push(pathDetails);
1165 if(utmModels.subModels != null && utmModels.subModels.length>0){
1166 for(var i=0 ; i<utmModels.subModels.length;i++) {
1168 subModel = utmModels.subModels[i];
1169 $scope.populatePathDetails(allPathDetails,subModel);
1176 $scope.getPathDetails= function(utmModels,selectedModelName) {
1177 console.log("getPathDetails");
1178 if (utmModels != null && utmModels.name != null && utmModels.name===selectedModelName){
1179 $scope.currentSelectedModel = utmModels;
1180 }else if(utmModels.subModels != null && utmModels.subModels.length>0){
1181 for(var i=0 ; i<utmModels.subModels.length;i++) {
1183 subModel = utmModels.subModels[i];
1184 $scope.getPathDetails(subModel,selectedModelName);
1194 app.service('MenuService', ['$http', '$q', function ($http, $q) {
1195 console.log("MenuService");
1196 this.generateMDTTestSet = function(utmMDTRequest, generateTestSetMDTURL){
1198 console.log("generateMDTTestSet");
1199 //alert("In generateMDTTestSet :: " + JSON.stringify(utmMDTRequest));
1200 var def = $q.defer();
1203 $http.post(generateTestSetMDTURL, utmMDTRequest)
1204 .success(function(data){
1205 console.log("success");
1210 .error(function(data){
1211 console.log("error");
1212 def.reject("GenerateMDTTestSet not successful");
1219 app.directive('focus',
1220 function($timeout) {
1221 console.log("focus");
1226 link : function(scope, element) {
1227 scope.$watch('trigger', function(value) {
1228 console.log("trigger");
1229 if (value === "true") {
1230 $timeout(function() {
1231 console.log("timeout");
1240 app.directive('draggable', function($document) {
1241 console.log("draggable");
1242 return function(scope, element, attr) {
1243 console.log("return");
1244 var startX = 0, startY = 0, x = 0, y = 0;
1246 position: 'relative',
1248 backgroundColor: 'white',
1253 element.on('mousedown', function(event) {
1254 console.log("mousedown");
1255 // Prevent default dragging of selected content
1256 //event.preventDefault();
1257 startX = event.screenX - x;
1258 startY = event.screenY - y;
1259 $document.on('mousemove', mousemove);
1260 $document.on('mouseup', mouseup);
1263 function mousemove(event) {
1264 console.log("mousemove");
1265 y = event.screenY - startY;
1266 x = event.screenX - startX;
1273 function mouseup() {
1274 console.log("mouseup");
1275 $document.off('mousemove', mousemove);
1276 $document.off('mouseup', mouseup);
1281 app.factory('myHttpInterceptor', function ($q, $window)
1283 console.log("myHttpInterceptor");
1284 return function (promise)
1286 console.log("promise");
1287 return promise.then(function (response)
1289 console.log("response");
1294 console.log("response");
1295 return $q.reject(response);
1302 app.run(['$route', function($route) {
1303 console.log("route");
1306 function TestCtrl($scope) {
1307 console.log("TestCtrl");
1308 $scope.msg = "Hello from a controller method.";
1309 $scope.returnHello = function() {
1310 console.log("returnHello");
1314 function importshema()
1316 console.log("importshema");
1318 angular.element(document.getElementById('navbar')).scope().importSchema();
1322 function CollectorsWindow(collectorsWin) {
1323 console.log("CollectorsWindow");
1325 angular.element(document.getElementById('navbar')).scope().CollectorsWindow(collectorsWin);
1329 function F5Window() {
1330 console.log("F5Window");
1332 angular.element(document.getElementById('navbar')).scope().F5Window();
1336 function StringMatchWindow(stringMatch) {
1337 console.log("StringMatchWindow");
1339 angular.element(document.getElementById('navbar')).scope().StringMatchWindow(stringMatch);
1342 function TCAWindow(tca) {
1344 angular.element(document.getElementById('navbar')).scope().TCAWindow(tca);
1347 function GOCWindow() {
1348 console.log("GOCWindow");
1350 angular.element(document.getElementById('navbar')).scope().GOCWindow();
1353 function PolicyWindow(PolicyWin) {
1354 console.log("PolicyWin");
1355 angular.element(document.getElementById('navbar')).scope().PolicyWindow(PolicyWin);
1361 function pathDetails(bpmnElementID,bpmnElementName,pathIdentifiers)
1363 console.log("pathDetails");
1365 angular.element(document.getElementById('navbar')).scope().pathDetails(bpmnElementID,bpmnElementName,pathIdentifiers);
1368 function setdefaultvalue()
1370 console.log("setDefaultValue");
1372 angular.element(document.getElementById('navbar')).scope().setDefaultValue();
1375 function upgradeSchemaVersion()
1377 console.log("upgradeSchemaVersion");
1379 angular.element(document.getElementById('navbar')).scope().upgradeSchemaVersion();
1382 function saveProject()
1384 console.log("saveProject");
1386 angular.element(document.getElementById('navbar')).scope().saveProject();
1389 function modifySchema()
1391 console.log("modifySchema");
1393 angular.element(document.getElementById('navbar')).scope().modifySchema();
1397 function definePID()
1399 console.log("definePID");
1401 angular.element(document.getElementById('navbar')).scope().definePID();
1404 function defineServiceAcronym()
1406 console.log("defineServiceAcronym");
1408 angular.element(document.getElementById('navbar')).scope().defineServiceAcronym();
1411 function errorProperty(msg)
1413 console.log("errorProperty");
1414 angular.element(document.getElementById('navbar')).scope().propertyExplorerErrorMessage(msg);
1416 function invisiblepropertyExplorer()
1418 console.log("invisiblepropertyExplorer");
1420 angular.element(document.getElementById('navbar')).scope().invisibleproperty();
1422 function updateDecisionLabel(originalLabel, newLabel)
1424 console.log("updateDecisionLabel");
1425 angular.element(document.getElementById('navbar')).scope().updateDecisionLabels(originalLabel, newLabel);