diff options
author | Serena Feng <feng.xiaowei@zte.com.cn> | 2018-01-18 07:00:33 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2018-01-18 07:00:33 +0000 |
commit | 98fde9b5bd0eaf5bf5acb76dc530925a3cc19881 (patch) | |
tree | a0ad3b0ebea119f7732426951a737a80d8c33233 /testapi/opnfv_testapi/ui/components | |
parent | f82dd79721fec6d4d6e5ac8b7b27cfec689b92ea (diff) | |
parent | 86db2b6832d51f8cd4d428bc431aca9daa99c4e0 (diff) |
Merge "Design the scenario create method"
Diffstat (limited to 'testapi/opnfv_testapi/ui/components')
10 files changed, 352 insertions, 915 deletions
diff --git a/testapi/opnfv_testapi/ui/components/pods/pods.html b/testapi/opnfv_testapi/ui/components/pods/pods.html index e092699..4fa8fb1 100644 --- a/testapi/opnfv_testapi/ui/components/pods/pods.html +++ b/testapi/opnfv_testapi/ui/components/pods/pods.html @@ -22,14 +22,7 @@ </div> <div class="col-sm-3 pull-right"> <span style="margin-top:6px">Search: </span> - <input type="text" class="form-control search" ngModel="filter" placeholder="Search String"> - </div> - <div class="col-md-3 row pull-right"> - <span style="margin-top:6px">Filter: </span> - <select ng-model="ctrl.filter" class="form-control"> - <option value="name">Name</option> - <option value="owner">Owner</option> - </select> + <input type="text" class="form-control search" ng-Model="ctrl.filterText" placeholder="Search String"> </div> </div> <div class="col-md-12"> @@ -67,9 +60,7 @@ <td>{{pod.mode}}</td> <td ng-class="{ 'hidden': !auth.isAuthenticated }"> <span class="podsTable-col"> - <a class="text-warning" title="Edit"> - <i class="fa fa-pencil-square-o"></i></a> - <a class="text-danger" ng-click="ctrl.openDeleteModal(pod.name)" title="Delete"> + <a class="text-danger" ng-click="ctrl.openDeleteModal(pod.name)" title="Delete" ng-class="{ 'hidden': !auth.isAuthenticated }"> <i class="fa fa-trash-o"></i></a> </span> </td> diff --git a/testapi/opnfv_testapi/ui/components/pods/podsController.js b/testapi/opnfv_testapi/ui/components/pods/podsController.js index c66873a..95e3571 100644 --- a/testapi/opnfv_testapi/ui/components/pods/podsController.js +++ b/testapi/opnfv_testapi/ui/components/pods/podsController.js @@ -40,13 +40,13 @@ ctrl.listPods = listPods; ctrl.open = open; ctrl.filter = 'name' - ctrl.clearFilters = clearFilters; ctrl.openDeleteModal = openDeleteModal ctrl.openBatchDeleteModal = openBatchDeleteModal ctrl.openCreateModal = openCreateModal ctrl.podDelete = podDelete ctrl.batchDelete = batchDelete; ctrl.viewPod = viewPod + ctrl.filterText = '' /** * This is called when the date filter calendar is opened. It @@ -61,13 +61,6 @@ ctrl[openVar] = true; } - /** - * This function will clear all filters and update the results - * listing. - */ - function clearFilters() { - ctrl.listPods(); - } /** * This will contact the TestAPI to create a new pod. @@ -91,7 +84,7 @@ ctrl.listPods(); }).catch(function (data) { ctrl.showError = true; - ctrl.error = "Error creating the new pod from server: " + data.statusText; + ctrl.error = data.statusText; }); } else{ @@ -105,21 +98,21 @@ */ function listPods() { ctrl.showError = false; + var reqURL = ctrl.url; + if(ctrl.filterText!=''){ + reqURL = ctrl.url + "?name=" + ctrl.filterText + } ctrl.podsRequest = - $http.get(ctrl.url).success(function (data) { + $http.get(reqURL).success(function (data) { ctrl.data = data; - // mapNametoRandom - }).error(function (error) { + }).catch(function (data) { ctrl.data = null; ctrl.showError = true; - ctrl.error = - 'Error retrieving pods from server: ' + - angular.toJson(error); + ctrl.error = data.statusText; }); } function viewPod(name){ - console.log('hello'); $state.go('pod', {'name':name}, {reload: true}); } /** @@ -192,22 +185,6 @@ }); } - // function openUpdateModal(podName){ - // $uibModal.open({ - // templateUrl: 'testapi-ui/components/pods/modals/createModal.html', - // controller: 'PodModalCtrl as PodModalCtrl', - // size: 'md', - // resolve: { - // data: function () { - // return { - // text: "Update", - // successHandler: ctrl.update, - // // pod: ctrl. - // }; - // } - // } - // }); - // } ctrl.listPods(); } diff --git a/testapi/opnfv_testapi/ui/components/projects/projects.html b/testapi/opnfv_testapi/ui/components/projects/projects.html index 5a3b421..b6b73d4 100644 --- a/testapi/opnfv_testapi/ui/components/projects/projects.html +++ b/testapi/opnfv_testapi/ui/components/projects/projects.html @@ -26,7 +26,7 @@ <span class="pull-right"> {{ctrl.error}}</span> <span class="glyphicon glyphicon-exclamation-sign pull-right" aria-hidden="true" >Error:</span> </div> - <div ng-show="ctrl.showCreateSuccess" class="alert alert-success" role="alert"> + <div ng-show="ctrl.showSuccess" class="alert alert-success" role="alert"> <span class="pull-right"> {{ctrl.success}}</span> <span class="glyphicon glyphicon-ok pull-right" aria-hidden="true"></span> </div> diff --git a/testapi/opnfv_testapi/ui/components/projects/projectsController.js b/testapi/opnfv_testapi/ui/components/projects/projectsController.js index bb394c0..940c1e2 100644 --- a/testapi/opnfv_testapi/ui/components/projects/projectsController.js +++ b/testapi/opnfv_testapi/ui/components/projects/projectsController.js @@ -56,7 +56,7 @@ */ function create(project) { ctrl.showError = false; - ctrl.showCreateSuccess = false; + ctrl.showSuccess = false; var projects_url = ctrl.url; var body = { name: project.name, @@ -64,7 +64,7 @@ }; ctrl.projectsRequest = $http.post(projects_url, body).success(function (data){ - ctrl.showCreateSuccess = true ; + ctrl.showSuccess = true ; ctrl.success = "Project is successfully created." ctrl.listProjects(); }).catch(function (data) { diff --git a/testapi/opnfv_testapi/ui/components/results/resultsController.js b/testapi/opnfv_testapi/ui/components/results/resultsController.js index 55bf0ba..73f3c15 100644 --- a/testapi/opnfv_testapi/ui/components/results/resultsController.js +++ b/testapi/opnfv_testapi/ui/components/results/resultsController.js @@ -50,15 +50,8 @@ raiseAlert) { var ctrl = this; - ctrl.uploadFile=uploadFile; ctrl.open = open; ctrl.clearFilters = clearFilters; - ctrl.associateMeta = associateMeta; - ctrl.getVersionList = getVersionList; - ctrl.getUserProducts = getUserProducts; - ctrl.associateProductVersion = associateProductVersion; - ctrl.getProductVersions = getProductVersions; - ctrl.prepVersionEdit = prepVersionEdit; ctrl.deleteTag = deleteTag; ctrl.filterList= filterList; ctrl.testFilter = testFilter @@ -102,12 +95,12 @@ /** Check to see if this page should display user-specific results. */ // ctrl.isUserResults = $state.current.name === 'userResults'; // need auth to browse - ctrl.isUserResults = $state.current.name === 'userResults'; + // ctrl.isUserResults = $state.current.name === 'userResults'; - // Should only be on user-results-page if authenticated. - if (ctrl.isUserResults && !$scope.auth.isAuthenticated) { - $state.go('home'); - } + // // Should only be on user-results-page if authenticated. + // if (ctrl.isUserResults && !$scope.auth.isAuthenticated) { + // $state.go('home'); + // } ctrl.pageHeader = "Test Results" @@ -116,17 +109,17 @@ 'The most recently uploaded community test results are listed ' + 'here.'; - ctrl.uploadState = ''; + // ctrl.uploadState = ''; ctrl.isPublic = false; - if (ctrl.isUserResults) { - ctrl.authRequest = $scope.auth.doSignCheck() - .then(ctrl.filterList); - // ctrl.getUserProducts(); - } else { - ctrl.filterList(); - } + // if (ctrl.isUserResults) { + // ctrl.authRequest = $scope.auth.doSignCheck() + // .then(ctrl.filterList); + // // ctrl.getUserProducts(); + // } else { + // ctrl.filterList(); + // } function viewResult(_id){ $state.go('result', {'_id':_id}, {reload: true}); @@ -146,37 +139,6 @@ return false; } - - function uploadFileToUrl(file, uploadUrl){ - var fd = new FormData(); - fd.append('file', file); - fd.append('public', ctrl.isPublic) - - $http.post(uploadUrl, fd, { - transformRequest: angular.identity, - headers: {'Content-Type': undefined} - }) - - .success(function(data){ - var id = data.href.substr(data.href.lastIndexOf('/')+1); - ctrl.uploadState = "Upload succeed. Result id is " + id; - ctrl.filterList(); - }) - - .error(function(data, status){ - ctrl.uploadState = "Upload failed. Error code is " + status; - }); - } - - function uploadFile(){ - var file = $scope.resultFile; - console.log('file is ' ); - console.dir(file); - - var uploadUrl = testapiApiUrl + "/results/upload"; - uploadFileToUrl(file, uploadUrl); - }; - /** * This will contact the TestAPI API to get a listing of test run * results. @@ -248,158 +210,5 @@ ctrl.filter = undefined ctrl.filterList(); } - - /** - * This will send an API request in order to associate a metadata - * key-value pair with the given testId - * @param {Number} index - index of the test object in the results list - * @param {String} key - metadata key - * @param {String} value - metadata value - */ - function associateMeta(index, key, value) { - var testId = ctrl.data.results[index].id; - var metaUrl = [ - testapiApiUrl, '/results/', testId, '/meta/', key - ].join(''); - - var editFlag = key + 'Edit'; - if (value) { - ctrl.associateRequest = $http.post(metaUrl, value) - .success(function () { - ctrl.data.results[index][editFlag] = false; - }).error(function (error) { - raiseAlert('danger', error.title, error.detail); - }); - } - else { - ctrl.unassociateRequest = $http.delete(metaUrl) - .success(function () { - ctrl.data.results[index][editFlag] = false; - }).error(function (error) { - if (error.code == 404) { - // Key doesn't exist, so count it as a success, - // and don't raise an alert. - ctrl.data.results[index][editFlag] = false; - } - else { - raiseAlert('danger', error.title, error.detail); - } - }); - } - } - - /** - * Retrieve an array of available capability files from the TestAPI - * API server, sort this array reverse-alphabetically, and store it in - * a scoped variable. - * Sample API return array: ["2015.03.json", "2015.04.json"] - */ - function getVersionList() { - if (ctrl.versionList) { - return; - } - var content_url = testapiApiUrl + '/guidelines'; - ctrl.versionsRequest = - $http.get(content_url).success(function (data) { - ctrl.versionList = data.sort().reverse(); - }).error(function (error) { - raiseAlert('danger', error.title, - 'Unable to retrieve version list'); - }); - } - - /** - * Get products user has management rights to or all products depending - * on the passed in parameter value. - */ - function getUserProducts() { - if (ctrl.products) { - return; - } - var contentUrl = testapiApiUrl + '/products'; - ctrl.productsRequest = - $http.get(contentUrl).success(function (data) { - ctrl.products = {}; - angular.forEach(data.products, function(prod) { - if (prod.can_manage) { - ctrl.products[prod.id] = prod; - } - }); - }).error(function (error) { - ctrl.products = null; - ctrl.showError = true; - ctrl.error = - 'Error retrieving Products listing from server: ' + - angular.toJson(error); - }); - } - - /** - * Send a PUT request to the API server to associate a product with - * a test result. - */ - function associateProductVersion(result) { - var verId = (result.selectedVersion ? - result.selectedVersion.id : null); - var testId = result.id; - var url = testapiApiUrl + '/results/' + testId; - ctrl.associateRequest = $http.put(url, {'product_version_id': - verId}) - .success(function (data) { - result.product_version = result.selectedVersion; - if (result.selectedVersion) { - result.product_version.product_info = - result.selectedProduct; - } - result.productEdit = false; - }).error(function (error) { - raiseAlert('danger', error.title, error.detail); - }); - } - - /** - * Get all versions for a product. - */ - function getProductVersions(result) { - if (!result.selectedProduct) { - result.productVersions = []; - result.selectedVersion = null; - return; - } - - var url = testapiApiUrl + '/products/' + - result.selectedProduct.id + '/versions'; - ctrl.getVersionsRequest = $http.get(url) - .success(function (data) { - result.productVersions = data; - - // If the test result isn't already associated to a - // version, default it to the null version. - if (!result.product_version) { - angular.forEach(data, function(ver) { - if (!ver.version) { - result.selectedVersion = ver; - } - }); - } - }).error(function (error) { - raiseAlert('danger', error.title, error.detail); - }); - } - - /** - * Instantiate variables needed for editing product/version - * associations. - */ - function prepVersionEdit(result) { - result.productEdit = true; - if (result.product_version) { - result.selectedProduct = - ctrl.products[result.product_version.product_info.id]; - } - result.selectedVersion = result.product_version; - ctrl.getProductVersions(result); - } - } })(); diff --git a/testapi/opnfv_testapi/ui/components/scenarios/modals/projectModal.html b/testapi/opnfv_testapi/ui/components/scenarios/modals/projectModal.html index 5885a61..0a14be9 100644 --- a/testapi/opnfv_testapi/ui/components/scenarios/modals/projectModal.html +++ b/testapi/opnfv_testapi/ui/components/scenarios/modals/projectModal.html @@ -16,24 +16,6 @@ </div> <div class="update-project"> <div class="col-sm-4"> - <label for="cpid" class="control-label"> Trust Indicator: </label> - </div> - <div class="col-sm-6"> - <button class="btn btn-primary" ng-click="projectModalCtrl.openTrustIndicatorModal()">Add Trust Indicator</button> - <p class="help-block"></p> - </div> - </div> - <div class="update-project"> - <div class="col-sm-4"> - <label for="cpid" class="control-label"> Score: </label> - </div> - <div class="col-sm-6"> - <button class="btn btn-primary" ng-click="projectModalCtrl.openScoreModal()">Add Score</button> - <p class="help-block"></p> - </div> - </div> - <div class="update-project"> - <div class="col-sm-4"> <label for="cpid" class="control-label"> Custom: </label> </div> <div class="col-sm-6"> @@ -46,50 +28,6 @@ </fieldset> </div> <div class='clo-md-12' style="padding-right:0px"> - <h3>Scores</h3> - <div class="table-responsive"> - <table class="table table-bordered table-hover" ng-data="projectModalCtrl.project.scores"> - <thead> - <tr style=" - text-align: center;"> - <th style="width: 1%;">Score</th> - <th style="width: 19%;">Date</th> - </tr> - </thead> - <tbody> - <tr ng-repeat-start="(index, score) in projectModalCtrl.project.scores" style="padding:9px"> - <td>{{score.score}}</td> - <td>{{score.date}}</td> - </tr> - <tr ng-repeat-end=> - </tr> - </tbody> - </table> - </div> - </div> - <div class='clo-md-12' style="padding-right:0px"> - <h3>Trust Indicator</h3> - <div class="table-responsive"> - <table class="table table-bordered table-hover" ng-data="projectModalCtrl.project.trust_indicators"> - <thead> - <tr style=" - text-align: center;"> - <th style="width: 1%;">Status</th> - <th style="width: 19%;">Date</th> - </tr> - </thead> - <tbody> - <tr ng-repeat-start="(index, trustIndicator) in projectModalCtrl.project.trust_indicators" style="padding:9px"> - <td>{{trustIndicator.status}}</td> - <td>{{trustIndicator.date}}</td> - </tr> - <tr ng-repeat-end=> - </tr> - </tbody> - </table> - </div> - </div> - <div class='clo-md-12' style="padding-right:0px"> <h3>Customs</h3> <div class="table-responsive"> <table class="table table-bordered table-hover" ng-data="projectModalCtrl.project.customs"> diff --git a/testapi/opnfv_testapi/ui/components/scenarios/scenario/scenario.html b/testapi/opnfv_testapi/ui/components/scenarios/scenario/scenario.html index d96986e..328a5e6 100644 --- a/testapi/opnfv_testapi/ui/components/scenarios/scenario/scenario.html +++ b/testapi/opnfv_testapi/ui/components/scenarios/scenario/scenario.html @@ -1,234 +1,241 @@ <legend>Scenario</legend> -<div style="padding-right:0px"> - <div class="table-responsive"> - <table class="table" ng-data="ctrl.data"> - <tbody> - <tr style="padding:9px"> - <td class="podsTableTd">Id :</td> - <td class="podsTableLeftTd">{{ctrl.data.scenarios[0]._id}}</td> - </tr> - <tr style="padding:9px"> - <td class="podsTableTd">Name :</td> - <td width="90%" class="podsTableLeftTd">{{ctrl.data.scenarios[0].name}}</td> - </tr> - <tr style="padding:9px"> - <td class="podsTableTd">Created at :</td> - <td width="90%" class="podsTableLeftTd">{{ctrl.data.scenarios[0].creation_date}}</td> - </tr> - <tr style="padding:9px"> - <td class="podsTableTd">Installers</td> - <td width="90%" class="podsTableLeftTd"> - <div class="col-md-1" style="padding:0px"> - <a ng-click="ctrl.expandInstallers()"> - <p ng-if="ctrl.collapeInstallers">Hide</p> - <p ng-if="!ctrl.collapeInstallers">Show</p> - </a> - </div> - <div class="col-md-1" style="padding:0px"> - <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddInstaller()" ><i class="fa fa-plus"></i>Add</button> - </div> - <div ng-class="{ 'hidden' : ! ctrl.collapeInstallers } "> - <div class="table-responsive"> - <table class="table " ng-data="ctrl.data.scenarios[0].installers"> - <tbody ng-repeat="(index, installer) in ctrl.data.scenarios[0].installers"> - <tr style="padding:9px"> - <td class="podsTableTd"> - {{index+1}}. Installer: - </td> - <td class="podsTableLeftTd" style="width:10%;padding-top: 7px;"> - <a ng-click="ctrl.expandInstaller(index)">{{installer.installer}}</a> - </td> - <td style="width:80%;border: none; padding: 0px;"> - <button type="button" class="btn btn-danger btn-xs" ng-click="ctrl.openDeleteInstallerModal(installer.installer)" ><i class="fa fa-minus"></i>Delete</button> - </td> - </tr> - <tr ng-class="{ 'hidden' : ! ctrl.collapeInstaller[index] }"> - <td class="podsTableTd"> - Versions: - </td> - <td width="90%" class="podsTableLeftTd"> - <div class="col-md-1" style="padding:0px"> - <a ng-click="ctrl.expandVersions(index)"> - <p ng-if="ctrl.collapeVersions[index]">Hide</p> - <p ng-if="!ctrl.collapeVersions[index]">Show</p> - </a> +<div style="padding-right:0px" class="col-md-12"> + <div class="table-responsive"> + <table class="table" ng-data="ctrl.data"> + <tbody> + <tr style="padding:9px"> + <td class="podsTableTd">Id :</td> + <td class="podsTableLeftTd">{{ctrl.data.scenarios[0]._id}}</td> + </tr> + <tr style="padding:9px"> + <td class="podsTableTd">Name :</td> + <td width="90%" class="podsTableLeftTd">{{ctrl.data.scenarios[0].name}}</td> + </tr> + <tr style="padding:9px"> + <td class="podsTableTd">Created at :</td> + <td width="90%" class="podsTableLeftTd">{{ctrl.data.scenarios[0].creation_date}}</td> + </tr> + <tr style="padding:9px"> + <td class="podsTableTd">Installers</td> + <td width="90%" class="podsTableLeftTd"> + <div class="col-md-1" style="padding:0px"> + <a ng-click="ctrl.expandInstallers()"> + <p ng-if="ctrl.collapeInstallers">Hide</p> + <p ng-if="!ctrl.collapeInstallers">Show</p> + </a> + </div> + <div class="col-md-1" style="padding:0px" ng-class="{'hidden' : !ctrl.buttonInstaller || !auth.isAuthenticated}"> + <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddInstaller()" ><i class="fa fa-plus"></i>Add</button> + </div> + <div ng-class="{ 'hidden' : ! ctrl.collapeInstallers } "> + <div class="table-responsive"> + <table class="table " ng-data="ctrl.data.scenarios[0].installers"> + <tbody ng-repeat="(indexI, installer) in ctrl.data.scenarios[0].installers"> + <tr style="padding:9px"> + <td class="podsTableTd"> + {{indexI+1}}. Installer: + </td> + <td class="podsTableLeftTd" style="width:10%;padding-top: 7px;"> + <a ng-click="ctrl.expandInstaller(indexI)">{{installer.installer}}</a> + </td> + <td style="width:80%;border: none; padding: 0px;" ng-class="{'hidden' : !ctrl.buttonInstaller}"> + <button type="button" ng-class="{'hidden' : !auth.isAuthenticated}" class="btn btn-danger btn-xs" ng-click="ctrl.openDeleteInstallerModal(installer.installer)" ><i class="fa fa-minus"></i>Delete</button> + </td> + </tr> + <tr ng-class="{ 'hidden' : ! ctrl.collapeInstaller[indexI] }"> + <td class="podsTableTd"> + Versions: + </td> + <td width="90%" class="podsTableLeftTd"> + <div class="col-md-1" style="padding:0px"> + <a ng-click="ctrl.expandVersions(indexI)"> + <p ng-if="ctrl.collapeVersions[indexI]">Hide</p> + <p ng-if="!ctrl.collapeVersions[indexI]">Show</p> + </a> + </div> + <div class="col-md-1" style="padding:0px" ng-class="{'hidden' : !ctrl.buttonVersion}"> + <button type="button" class="btn btn-success btn-xs" ng-class="{'hidden' : !auth.isAuthenticated}" ng-click="ctrl.openAddVersionModal(installer.installer)" ><i class="fa fa-plus"></i>Add</button> + </div> + <div ng-class="{ 'hidden' : ! ctrl.collapeVersions[indexI] } " class="col-md-12"> + <div class="table-responsive"> + <table class="table " ng-data="inctrl.data.scenarios[0].installers"> + <tbody ng-repeat="(indexV, version) in installer.versions"> + <tr style="padding:9px"> + <td class="podsTableTd"> + {{indexV+1}}. Version: + </td> + <td class="podsTableLeftTd" style="width:10%;padding-top: 7px;"> + <a ng-click="ctrl.expandVersion(indexI,indexV)">{{version.version}}</a> + </td> + <td style="width:80%;border: none; padding: 0px;" ng-class="{'hidden' : !ctrl.buttonVersion}"> + <button type="button" class="btn btn-danger btn-xs" ng-class="{'hidden' : !auth.isAuthenticated}" ng-click="ctrl.openDeleteVersionModal(version.version, installer.installer)" ><i class="fa fa-minus"></i>Delete</button> + </td> + </tr> + <tr style="padding:9px" ng-class="{ 'hidden' : ! ctrl.collapeVersion[indexI][indexV] } "> + <td class="podsTableTd"> + Owner: + </td> + <td class="podsTableLeftTd" style="width:90%">{{version.owner}}</td> + </tr> + <tr style="padding:9px" ng-class="{ 'hidden' : ! ctrl.collapeVersion[indexI][indexV] }"> + <td class="podsTableTd"> + Projects: + </td> + <td width="90%" class="podsTableLeftTd"> + <div class="col-md-1" style="padding:0px"> + <a ng-click="ctrl.expandProjects(indexI,indexV)"> + <p style="width:50%" ng-if="ctrl.collapeProjects[indexI][indexV]">Hide</p> + <p style="width:50%" ng-if="!ctrl.collapeProjects[indexI][indexV]">Show</p> + </a> + </div> + <div class="col-md-1" style="padding:0px" ng-class="{'hidden' : !ctrl.buttonProject }"> + <button type="button" ng-class="{'hidden' : !auth.isAuthenticated}" class="btn btn-success btn-xs" ng-click="ctrl.openAddProjectModal(version.version,installer.installer)" ><i class="fa fa-plus"></i>Add</button> + </div> + <div ng-class="{ 'hidden' : ! ctrl.collapeProjects[indexI][indexV] } " class="col-md-12"> + <div class="table-responsive"> + <table class="table " ng-data="version.projects"> + <tbody ng-repeat="(indexP, project) in version.projects" > + <tr style="padding:9px"> + <td class="podsTableTd"> + {{indexP+1}}. Project: + </td> + <td class="podsTableLeftTd" style="width:10%;padding-top: 7px;"> + <a ng-click="ctrl.expandProject(indexI, indexV, indexP)">{{project.project}}</a> + </td> + <td style="width:80%;border: none; padding: 0px;" ng-class="{'hidden' : !ctrl.buttonProject}"> + <button type="button" class="btn btn-danger btn-xs" ng-class="{'hidden' : !auth.isAuthenticated}" ng-click="ctrl.openDeleteProjectModal(project,version.version, installer.installer)" ><i class="fa fa-minus"></i>Delete</button> + </td> + </tr> + <tr ng-class="{ 'hidden' : ! ctrl.collapeProject[indexI][indexV][indexP] }"> + <td class="podsTableTd"> + Trust Indicators: + </td> + <td class="podsTableLeftTd" style="width:90%"> + <a ng-click="ctrl.expandTrustIndicator(indexI, indexV, indexP)"> + <p ng-if="ctrl.collapeTrustIndicator[indexI][indexV][indexP]">Hide</p> + <p ng-if="!ctrl.collapeTrustIndicator[indexI][indexV][indexP]">Show</p> + </a> + <table class="table " ng-class="{ 'hidden' : ! ctrl.collapeTrustIndicator[indexI][indexV][indexP] } " ng-data="project.trust_indicators"> + <tbody ng-repeat="(indexTI, trust_indicator) in project.trust_indicators" > + <tr style="padding:9px"> + <td class="podsTableTd"> + Status: + </td> + <td width="90%" class="podsTableLeftTd"> + {{trust_indicator.status}} + </td> + </tr> + <tr style="padding:9px"> + <td class="podsTableTd"> + Date: + </td> + <td width="90%" class="podsTableLeftTd"> + {{trust_indicator.date}} + </td> + </tr> + </tbody> + <tr> + <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddTrustIndicatorModal(project.project,version.version,installer.installer)" ng-class="{ 'hidden' : !ctrl.collapeTrustIndicator[index] || !auth.isAuthenticated}"> + <i class="fa fa-plus"></i>Add</button> + </tr> + </table> + </td> + </tr> + <tr ng-class="{ 'hidden' : ! ctrl.collapeProject[indexI][indexV][indexP] }"> + <td class="podsTableTd"> + Scores: + </td> + <td class="podsTableLeftTd" style="width:90%"> + <a ng-click="ctrl.expandScore(indexI, indexV, indexP)"> + <p ng-if="ctrl.collapeScore[indexI][indexV][indexP]">Hide</p> + <p ng-if="!ctrl.collapeScore[indexI][indexV][indexP]">Show</p> + </a> + <table class="table" ng-class="{ 'hidden' : ! ctrl.collapeScore[indexI][indexV][indexP] } " ng-data="project.scores"> + <tbody ng-repeat="(indexSC, score) in project.scores" > + <tr style="padding:9px"> + <td class="podsTableTd"> + Score: + </td> + <td width="90%" class="podsTableLeftTd"> + {{score.score}} + </td> + </tr> + <tr style="padding:9px"> + <td class="podsTableTd"> + Date: + </td> + <td width="90%" class="podsTableLeftTd"> + {{score.date}} + </td> + </tr> + </tbody> + <tr> + <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddScoreModal(project.project,version.version,installer.installer)" ng-class="{ 'hidden' : !ctrl.collapeScore[index] || !auth.isAuthenticated}"><i class="fa fa-plus"></i>Add</button> + </tr> + </table> + </td> + </tr> + <tr ng-class="{ 'hidden' : ! ctrl.collapeProject[indexI][indexV][indexP] }"> + <td class="podsTableTd"> + Customs: + </td> + <td class="podsTableLeftTd" style="width:90%"> + <a ng-click="ctrl.expandCustom(indexI, indexV, indexP)"> + <p ng-if="ctrl.collapeCustom[indexI][indexV][indexP]">Hide</p> + <p ng-if="!ctrl.collapeCustom[indexI][indexV][indexP]">Show</p> + </a> + <table class="table" ng-class="{ 'hidden' : ! ctrl.collapeCustom[indexI][indexV][indexP] } " ng-data="project.customs"> + <tbody> + <tr ng-repeat-start="(indexCU, custom) in project.customs" style="padding:9px"> + <td class="podsTableTd" style="float: none!important;"> + {{custom}} + </td> + <td width="90%" class="podsTableLeftTd"> + <button type="button" class="btn btn-danger btn-xs" ng-click="ctrl.openDeleteCustomModal(custom,project.project,version.version,installer.installer)" ng-class="{'hidden' : !auth.isAuthenticated}" ><i class="fa fa-minus"></i>Delete</button> + </td> + </tr> + <tr ng-repeat-end=> + </tr> + <tr> + <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddCustomModal(project.project,version.version,installer.installer)" ng-class="{ 'hidden' : !ctrl.collapeCustom[indexI][indexV][indexP] || !auth.isAuthenticated}"><i class="fa fa-plus"></i>Add</button> + </tr> + </tbody> + </table> + </td> + </tr> + <tr ng-repeat-end=> + </tr> + </tbody> + </table> + </div> + </div> + </td> + </tr> + </tbody> + </table> </div> - <div class="col-md-1" style="padding:0px"> - <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddVersionModal(installer.installer)" ><i class="fa fa-plus"></i>Add</button> - </div> - <div ng-class="{ 'hidden' : ! ctrl.collapeVersions[index] } " class="col-md-12"> - <div class="table-responsive"> - <table class="table " ng-data="inctrl.data.scenarios[0].installers"> - <tbody ng-repeat="(index, version) in installer.versions"> - <tr style="padding:9px"> - <td class="podsTableTd"> - {{index+1}}. Version: - </td> - <td class="podsTableLeftTd" style="width:10%;padding-top: 7px;"> - <a ng-click="ctrl.expandVersion(index)">{{version.version}}</a> - </td> - <td style="width:80%;border: none; padding: 0px;"> - <button type="button" class="btn btn-danger btn-xs" ng-click="ctrl.openDeleteVersionModal(version.version, installer.installer)" ><i class="fa fa-minus"></i>Delete</button> - </td> - </tr> - <tr style="padding:9px" ng-class="{ 'hidden' : ! ctrl.collapeVersion[index] } "> - <td class="podsTableTd"> - Owner: - </td> - <td class="podsTableLeftTd" style="width:90%">{{version.owner}}</td> - </tr> - <tr style="padding:9px" ng-class="{ 'hidden' : ! ctrl.collapeVersion[index] }"> - <td class="podsTableTd"> - Projects: - </td> - <td width="90%" class="podsTableLeftTd"> - <div class="col-md-1" style="padding:0px"> - <a ng-click="ctrl.expandProjects(index)"> - <p style="width:50%" ng-if="ctrl.collapeProjects[index]">Hide</p> - <p style="width:50%" ng-if="!ctrl.collapeProjects[index]">Show</p> - </a> - </div> - <div class="col-md-1" style="padding:0px"> - <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddProjectModal(version.version,installer.installer)" ><i class="fa fa-plus"></i>Add</button> - </div> - <div ng-class="{ 'hidden' : ! ctrl.collapeProjects[index] } " class="col-md-12"> - <div class="table-responsive"> - <table class="table " ng-data="version.projects"> - <tbody ng-repeat="(index, project) in version.projects" > - <tr style="padding:9px"> - <td class="podsTableTd"> - {{index+1}}. Project: - </td> - <td class="podsTableLeftTd" style="width:90%"> - <a ng-click="ctrl.expandProject(index)">{{project.project}}</a> - </td> - </tr> - <tr ng-class="{ 'hidden' : ! ctrl.collapeProject[index] }"> - <td class="podsTableTd"> - Trust Indicators: - </td> - <td class="podsTableLeftTd" style="width:90%"> - <a ng-click="ctrl.expandTrustIndicator(index)"> - <p ng-if="ctrl.collapeTrustIndicator[index]">Hide</p> - <p ng-if="!ctrl.collapeTrustIndicator[index]">Show</p> - </a> - <table class="table " ng-class="{ 'hidden' : ! ctrl.collapeTrustIndicator[index] } " ng-data="project.trust_indicators"> - <tbody ng-repeat="(index, trust_indicator) in project.trust_indicators" > - <tr style="padding:9px"> - <td class="podsTableTd"> - Status: - </td> - <td width="90%" class="podsTableLeftTd"> - {{trust_indicator.status}} - </td> - </tr> - <tr style="padding:9px"> - <td class="podsTableTd"> - Date: - </td> - <td width="90%" class="podsTableLeftTd"> - {{trust_indicator.date}} - </td> - </tr> - </tbody> - <tr> - <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddTrustIndicatorModal(project.project,version.version,installer.installer)" ng-class="{ 'hidden' : !ctrl.collapeTrustIndicator[index]}"> - <i class="fa fa-plus"></i>Add</button> - </tr> - </table> - </td> - </tr> - <tr ng-class="{ 'hidden' : ! ctrl.collapeProject[index] }"> - <td class="podsTableTd"> - Scores: - </td> - <td class="podsTableLeftTd" style="width:90%"> - <a ng-click="ctrl.expandScore(index)"> - <p ng-if="ctrl.collapeScore[index]">Hide</p> - <p ng-if="!ctrl.collapeScore[index]">Show</p> - </a> - <table class="table" ng-class="{ 'hidden' : ! ctrl.collapeScore[index] } " ng-data="project.scores"> - <tbody ng-repeat="(index, score) in project.scores" > - <tr style="padding:9px"> - <td class="podsTableTd"> - Score: - </td> - <td width="90%" class="podsTableLeftTd"> - {{score.score}} - </td> - </tr> - <tr style="padding:9px"> - <td class="podsTableTd"> - Date: - </td> - <td width="90%" class="podsTableLeftTd"> - {{score.date}} - </td> - </tr> - </tbody> - <tr> - <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddScoreModal(project.project,version.version,installer.installer)" ng-class="{ 'hidden' : !ctrl.collapeScore[index]}"><i class="fa fa-plus"></i>Add</button> - </tr> - </table> - </td> - </tr> - <tr ng-class="{ 'hidden' : ! ctrl.collapeProject[index] }"> - <td class="podsTableTd"> - Customs: - </td> - <td class="podsTableLeftTd" style="width:90%"> - <a ng-click="ctrl.expandCustom(index)"> - <p ng-if="ctrl.collapeCustom[index]">Hide</p> - <p ng-if="!ctrl.collapeCustom[index]">Show</p> - </a> - <table class="table" ng-class="{ 'hidden' : ! ctrl.collapeCustom[index] } " ng-data="project.customs"> - <tbody> - <tr ng-repeat-start="(index, custom) in project.customs" style="padding:9px"> - <td class="podsTableTd" style="float: none!important;"> - {{custom}} - </td> - <td width="90%" class="podsTableLeftTd"> - <button type="button" class="btn btn-danger btn-xs" ng-click="ctrl.openDeleteCustomModal(custom,project.project,version.version,installer.installer)" ><i class="fa fa-minus"></i>Delete</button> - </td> - </tr> - <tr ng-repeat-end=> - </tr> - <tr> - <button type="button" class="btn btn-success btn-xs" ng-click="ctrl.openAddCustomModal(project.project,version.version,installer.installer)" ng-class="{ 'hidden' : !ctrl.collapeCustom[index]}"><i class="fa fa-plus"></i>Add</button> - </tr> - </tbody> - </table> - </td> - </tr> - <!-- </div> --> - <tr ng-repeat-end=> - </tr> - </tbody> - </table> - </div> - </div> - </td> - </tr> - </tbody> - </table> - </div> - </div> - </td> - </tr> - </tbody> - </table> - </div> - </div> - </td> - </tr> - </tbody> - </table> - </div> + </div> + </td> + </tr> + </tbody> + </table> + </div> + </div> + </td> + </tr> + </tbody> + </table> </div> +</div> <div class="row" style="margin-bottom:24px;"></div> -<div ng-show="ctrl.showError" class="alert alert-danger col-md-8" role="alert" style="margin-top:0px"> - <span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> - <span class="sr-only">Error:</span> - {{ctrl.error}} +<div class='clo-md-12'> + <div ng-show="ctrl.showError" class="alert alert-danger" role="alert"> + <span class="pull-right"> {{ctrl.error}}</span> + <span class="glyphicon glyphicon-exclamation-sign pull-right" aria-hidden="true" >Error:</span> + </div> + <div ng-show="ctrl.showSuccess" class="alert alert-success" role="alert"> + <span class="pull-right"> {{ctrl.success}}</span> + <span class="glyphicon glyphicon-ok pull-right" aria-hidden="true"></span> + </div> </div> <div class="row" style="margin-bottom:24px;"></div>
\ No newline at end of file diff --git a/testapi/opnfv_testapi/ui/components/scenarios/scenario/scenarioController.js b/testapi/opnfv_testapi/ui/components/scenarios/scenario/scenarioController.js index eff1930..53eb13a 100644 --- a/testapi/opnfv_testapi/ui/components/scenarios/scenario/scenarioController.js +++ b/testapi/opnfv_testapi/ui/components/scenarios/scenario/scenarioController.js @@ -45,20 +45,16 @@ ctrl.expandTrustIndicator = expandTrustIndicator; ctrl.expandScore = expandScore; ctrl.expandCustom = expandCustom; - ctrl.collapeVersion = {}; - ctrl.collapeVersions = {}; - ctrl.collapeProjects = {}; - ctrl.collapeProject = {}; - ctrl.collapeTrustIndicator = {}; - ctrl.collapeScore = {}; - ctrl.collapeCustom = {}; - ctrl.collapeInstaller = {}; + ctrl.collapeVersion = []; + ctrl.collapeVersions = []; + ctrl.collapeProjects = []; + ctrl.collapeProject = []; + ctrl.collapeTrustIndicator = []; + ctrl.collapeScore = []; + ctrl.collapeCustom = []; + ctrl.collapeInstaller = []; ctrl.addCustom = addCustom; ctrl.openAddCustomModal = openAddCustomModal; - ctrl.openAddTrustIndicatorModal = openAddTrustIndicatorModal; - ctrl.addTrustindicator = addTrustindicator; - ctrl.addScore = addScore; - ctrl.openAddScoreModal = openAddScoreModal; ctrl.openDeleteCustomModal = openDeleteCustomModal; ctrl.deleteCustom = deleteCustom; ctrl.addProject = addProject @@ -71,6 +67,12 @@ ctrl.addInstaller = addInstaller ctrl.openDeleteInstallerModal = openDeleteInstallerModal ctrl.deleteInstaller = deleteInstaller + ctrl.openDeleteProjectModal = openDeleteProjectModal + ctrl.deleteProject = deleteProject + + ctrl.buttonInstaller = true + ctrl.buttonVersion = true + ctrl.buttonProject = true /** * This will contact the TestAPI to get a listing of declared projects. @@ -87,61 +89,97 @@ }); } - function expandTrustIndicator(index){ - if(ctrl.collapeTrustIndicator[index]){ - ctrl.collapeTrustIndicator[index] = false; + function expandTrustIndicator(indexI, indexV, indexP){ + if(ctrl.collapeTrustIndicator[indexI]==undefined){ + ctrl.collapeTrustIndicator[indexI] = [] + if(ctrl.collapeTrustIndicator[indexI][indexV]==undefined){ + ctrl.collapeTrustIndicator[indexI][indexV] = [] + } + } + if(ctrl.collapeTrustIndicator[indexI][indexV][indexP]){ + ctrl.collapeTrustIndicator[indexI][indexV][indexP] = false; }else{ - ctrl.collapeTrustIndicator[index] = true; + ctrl.collapeTrustIndicator[indexI][indexV][indexP] = true; } } - function expandScore(index){ - if(ctrl.collapeScore[index]){ - ctrl.collapeScore[index] = false; + function expandScore(indexI, indexV, indexP){ + if(ctrl.collapeScore[indexI]==undefined){ + ctrl.collapeScore[indexI] = [] + if(ctrl.collapeScore[indexI][indexV]==undefined){ + ctrl.collapeScore[indexI][indexV] = [] + } + } + if(ctrl.collapeScore[indexI][indexV][indexP]){ + ctrl.collapeScore[indexI][indexV][indexP] = false; }else{ - ctrl.collapeScore[index] = true; + ctrl.collapeScore[indexI][indexV][indexP] = true; } } - function expandCustom(index){ - if(ctrl.collapeCustom[index]){ - ctrl.collapeCustom[index] = false; + function expandCustom(indexI, indexV, indexP){ + if(ctrl.collapeCustom[indexI]==undefined){ + ctrl.collapeCustom[indexI] = [] + if(ctrl.collapeCustom[indexI][indexV]==undefined){ + ctrl.collapeCustom[indexI][indexV] = [] + } + } + if(ctrl.collapeCustom[indexI][indexV][indexP]){ + ctrl.collapeCustom[indexI][indexV][indexP] = false; + ctrl.buttonProject = true }else{ - ctrl.collapeCustom[index] = true; + ctrl.collapeCustom[indexI][indexV][indexP] = true; + ctrl.buttonProject = false } } - function expandVersion(index){ - if(ctrl.collapeVersion[index]){ - ctrl.collapeVersion[index] = false; + function expandVersion(indexI, indexV){ + if(ctrl.collapeVersion[indexI]==undefined){ + ctrl.collapeVersion[indexI] = [] + } + if(ctrl.collapeVersion[indexI][indexV]){ + ctrl.collapeVersion[indexI][indexV] = false; }else{ - ctrl.collapeVersion[index] = true; + ctrl.collapeVersion[indexI][indexV] = true; } } function expandVersions(index){ if(ctrl.collapeVersions[index]){ ctrl.collapeVersions[index] = false; + ctrl.buttonInstaller = true }else{ ctrl.collapeVersions[index] = true; + ctrl.buttonInstaller = false } } - function expandProjects(index){ - if(ctrl.collapeProjects[index]){ - ctrl.collapeProjects[index] = false; + function expandProjects(indexI, indexV){ + if(ctrl.collapeProjects[indexI]==undefined){ + ctrl.collapeProjects[indexI] = [] + } + if(ctrl.collapeProjects[indexI][indexV]){ + ctrl.collapeProjects[indexI][indexV] = false; + ctrl.buttonVersion = true } else{ - ctrl.collapeProjects[index]= true; + ctrl.collapeProjects[indexI][indexV]= true; + ctrl.buttonVersion = false } } - function expandProject(index){ - if(ctrl.collapeProject[index]){ - ctrl.collapeProject[index] = false; + function expandProject(indexI, indexV, indexP){ + if(ctrl.collapeProject[indexI]==undefined){ + ctrl.collapeProject[indexI] = [] + if(ctrl.collapeProject[indexI][indexV]==undefined){ + ctrl.collapeProject[indexI][indexV] = [] + } + } + if(ctrl.collapeProject[indexI][indexV][indexP]){ + ctrl.collapeProject[indexI][indexV][indexP] = false; } else{ - ctrl.collapeProject[index]= true; + ctrl.collapeProject[indexI][indexV][indexP]= true; } } @@ -356,62 +394,22 @@ }); } - function openAddTrustIndicatorModal(project, version, installer){ - $uibModal.open({ - templateUrl: 'testapi-ui/components/scenarios/modals/trustIndicatorModal.html', - controller: 'trustIndicatorAddModalCtrl as trustIndicatorModalCtrl', - size: 'md', - resolve: { - data: function () { - return { - text: "Add Trust Indicator", - successHandler: ctrl.addTrustindicator, - project: project, - version: version, - installer: installer - }; - } - } - }); - } - - function openAddScoreModal(project, version, installer){ - $uibModal.open({ - templateUrl: 'testapi-ui/components/scenarios/modals/scoreModal.html', - controller: 'scoreAddModalCtrl as scoreModalCtrl', - size: 'md', - resolve: { - data: function () { - return { - text: "Add Score", - successHandler: ctrl.addScore, - project: project, - version: version, - installer: installer - }; - } - } - }); - } - - function addTrustindicator(trust_indicator, project, version, installer){ - ctrl.customReqest = testapiApiUrl+ "/scenarios/"+ ctrl.name + "/trust_indicators?installer="+installer+"&version="+version+"&project="+ project - $http.post(ctrl.customReqest,trust_indicator ).success(function (data){ - ctrl.showSuccess = true ; - ctrl.success = "Trust indicators are successfully updated." - ctrl.loadDetails(); - }) - .catch(function (data) { - ctrl.showError = true; - ctrl.error = data.statusText; - }); + function openDeleteProjectModal(project, version, installer){ + var projects = [] + projects.push(project.project) + var data = { + "projects": projects, + "version": version, + "installer": installer + } + confirmModal("Delete",ctrl.deleteProject,data); } - function addScore(score, project, version, installer){ - ctrl.customReqest = testapiApiUrl+ "/scenarios/"+ ctrl.name + "/scores?installer="+installer+"&version="+version+"&project="+ project - $http.post(ctrl.customReqest,score ).success(function (data){ + function deleteProject(data){ + ctrl.projectReqest = testapiApiUrl+ "/scenarios/"+ ctrl.name + "/projects?installer="+data.installer+"&version="+data.version + $http.delete(ctrl.projectReqest, {data: data.projects, headers: {'Content-Type': 'application/json'}}).success(function (data){ ctrl.showSuccess = true ; - ctrl.success = "Scores are successfully updated." + ctrl.success = "Projects are successfully Deleted." ctrl.loadDetails(); }) .catch(function (data) { @@ -459,107 +457,8 @@ } } - /** - * TestAPI Project Modal Controller - * This controller is for the create modal where a user can create - * the project information and for the edit modal where user can - * edit the project's details - */ - angular.module('testapiApp').controller('trustIndicatorAddModalCtrl', trustIndicatorAddModalCtrl); - trustIndicatorAddModalCtrl.$inject = ['$scope', '$uibModalInstance', 'data']; - function trustIndicatorAddModalCtrl($scope, $uibModalInstance, data) { - var ctrl = this; - ctrl.confirm = confirm; - ctrl.cancel = cancel; - ctrl.data = angular.copy(data); - ctrl.open = open; - - - /** - * Initiate confirmation and call the success handler with the - * inputs. - */ - function confirm() { - ctrl.data.successHandler(ctrl.ti, ctrl.data.project, ctrl.data.version, ctrl.data.installer); - $uibModalInstance.dismiss('cancel'); - } - - /** - * Close the confirm modal without initiating changes. - */ - function cancel() { - $uibModalInstance.dismiss('cancel'); - } - - function handleModalData(){ - - } - - /** - * This is called when the date filter calendar is opened. It - * does some event handling, and sets a scope variable so the UI - * knows which calendar was opened. - * @param {Object} $event - The Event object - * @param {String} openVar - Tells which calendar was opened - */ - function open($event, openVar) { - $event.preventDefault(); - $event.stopPropagation(); - ctrl[openVar] = true; - } - } - - /** - * TestAPI Project Modal Controller - * This controller is for the create modal where a user can create - * the project information and for the edit modal where user can - * edit the project's details - */ - angular.module('testapiApp').controller('scoreAddModalCtrl', scoreAddModalCtrl); - scoreAddModalCtrl.$inject = ['$scope', '$uibModalInstance', 'data']; - function scoreAddModalCtrl($scope, $uibModalInstance, data) { - var ctrl = this; - ctrl.confirm = confirm; - ctrl.cancel = cancel; - ctrl.data = angular.copy(data); - ctrl.open = open; - - /** - * Initiate confirmation and call the success handler with the - * inputs. - */ - function confirm() { - ctrl.data.successHandler(ctrl.score, ctrl.data.project, ctrl.data.version, ctrl.data.installer); - $uibModalInstance.dismiss('cancel'); - } - - /** - * Close the confirm modal without initiating changes. - */ - function cancel() { - $uibModalInstance.dismiss('cancel'); - } - - function handleModalData(){ - - } - - /** - * This is called when the date filter calendar is opened. It - * does some event handling, and sets a scope variable so the UI - * knows which calendar was opened. - * @param {Object} $event - The Event object - * @param {String} openVar - Tells which calendar was opened - */ - function open($event, openVar) { - $event.preventDefault(); - $event.stopPropagation(); - ctrl[openVar] = true; - } - } - - /** + /** * TestAPI Project Modal Controller * This controller is for the create modal where a user can create * the project information and for the edit modal where user can @@ -572,11 +471,7 @@ ctrl.confirm = confirm; ctrl.cancel = cancel; ctrl.data = angular.copy(data); - ctrl.openScoreModal = openScoreModal; - ctrl.openTrustIndicatorModal = openTrustIndicatorModal; ctrl.openCustomModal = openCustomModal; - ctrl.handleScore = handleScore; - ctrl.handleModalTrustIndicator = handleModalTrustIndicator; ctrl.handleModalCustom = handleModalCustom; ctrl.projects = [] ctrl.project = { @@ -604,48 +499,10 @@ $uibModalInstance.dismiss('cancel'); } - function handleModalTrustIndicator(trustIndicator){ - ctrl.project.trust_indicators.push(trustIndicator) - } - - function handleScore(score){ - ctrl.project.scores.push(score); - } - function handleModalCustom(custom){ ctrl.project.customs.push(custom); } - function openScoreModal(){ - $uibModal.open({ - templateUrl: 'testapi-ui/components/scenarios/modals/scoreModal.html', - controller: 'scoreModalCtrl as scoreModalCtrl', - size: 'md', - resolve: { - data: function () { - return { - text: "Score", - successHandler: ctrl.handleScore, - }; - } - } - }); - } - function openTrustIndicatorModal(){ - $uibModal.open({ - templateUrl: 'testapi-ui/components/scenarios/modals/trustIndicatorModal.html', - controller: 'trustIndicatorModalCtrl as trustIndicatorModalCtrl', - size: 'md', - resolve: { - data: function () { - return { - text: "Trust Indicator", - successHandler: ctrl.handleModalTrustIndicator - }; - } - } - }); - } function openCustomModal(){ $uibModal.open({ templateUrl: 'testapi-ui/components/scenarios/modals/customModal.html', diff --git a/testapi/opnfv_testapi/ui/components/scenarios/scenarios.html b/testapi/opnfv_testapi/ui/components/scenarios/scenarios.html index 75a21b7..9057b0f 100644 --- a/testapi/opnfv_testapi/ui/components/scenarios/scenarios.html +++ b/testapi/opnfv_testapi/ui/components/scenarios/scenarios.html @@ -7,7 +7,7 @@ </div> <div class="col-sm-2 pull-right" ng-class="{ 'hidden': !auth.isAuthenticated}"> <button type="button" class="btn btn-success" ng-click="ctrl.openScenarioModal()"> - <i class="fa fa-plus"></i>Create Scenario</button> + <i class="fa fa-plus"></i>Create</button> </div> </div> <div class='clo-md-12'> @@ -45,7 +45,7 @@ </td> <td ng-class="{'hidden': !auth.isAuthenticated}"> <span class="podsTable-col"> - <a class="text-warning" ng-click="ctrl.openUpdateModal(scenario.name)" title="Edit Name"> + <a class="text-warning" ng-click="ctrl.openUpdateModal(scenario.name)" title="Edit"> <i class="fa fa-pencil-square-o"></i></a> <a class="text-danger" ng-click="ctrl.openDeleteModal(scenario.name)" title="Delete"> <i class="fa fa-trash-o"></i></a> diff --git a/testapi/opnfv_testapi/ui/components/scenarios/scenariosController.js b/testapi/opnfv_testapi/ui/components/scenarios/scenariosController.js index 4243e21..fd137e5 100644 --- a/testapi/opnfv_testapi/ui/components/scenarios/scenariosController.js +++ b/testapi/opnfv_testapi/ui/components/scenarios/scenariosController.js @@ -348,11 +348,7 @@ ctrl.confirm = confirm; ctrl.cancel = cancel; ctrl.data = angular.copy(data); - ctrl.openScoreModal = openScoreModal; - ctrl.openTrustIndicatorModal = openTrustIndicatorModal; ctrl.openCustomModal = openCustomModal; - ctrl.handleScore = handleScore; - ctrl.handleModalTrustIndicator = handleModalTrustIndicator; ctrl.handleModalCustom = handleModalCustom; ctrl.project = { "scores": [], @@ -379,48 +375,10 @@ $uibModalInstance.dismiss('cancel'); } - function handleModalTrustIndicator(trustIndicator){ - ctrl.project.trust_indicators.push(trustIndicator) - } - - function handleScore(score){ - ctrl.project.scores.push(score); - } - function handleModalCustom(custom){ ctrl.project.customs.push(custom); } - function openScoreModal(){ - $uibModal.open({ - templateUrl: 'testapi-ui/components/scenarios/modals/scoreModal.html', - controller: 'scoreModalCtrl as scoreModalCtrl', - size: 'md', - resolve: { - data: function () { - return { - text: "Score", - successHandler: ctrl.handleScore, - }; - } - } - }); - } - function openTrustIndicatorModal(){ - $uibModal.open({ - templateUrl: 'testapi-ui/components/scenarios/modals/trustIndicatorModal.html', - controller: 'trustIndicatorModalCtrl as trustIndicatorModalCtrl', - size: 'md', - resolve: { - data: function () { - return { - text: "Trust Indicator", - successHandler: ctrl.handleModalTrustIndicator - }; - } - } - }); - } function openCustomModal(){ $uibModal.open({ templateUrl: 'testapi-ui/components/scenarios/modals/customModal.html', @@ -444,106 +402,6 @@ * the project information and for the edit modal where user can * edit the project's details */ - angular.module('testapiApp').controller('scoreModalCtrl', scoreModalCtrl); - scoreModalCtrl.$inject = ['$scope', '$uibModalInstance', 'data']; - function scoreModalCtrl($scope, $uibModalInstance, data) { - var ctrl = this; - ctrl.confirm = confirm; - ctrl.cancel = cancel; - ctrl.data = angular.copy(data); - ctrl.open = open; - - /** - * Initiate confirmation and call the success handler with the - * inputs. - */ - function confirm() { - ctrl.data.successHandler(ctrl.score); - $uibModalInstance.dismiss('cancel'); - } - - /** - * Close the confirm modal without initiating changes. - */ - function cancel() { - $uibModalInstance.dismiss('cancel'); - } - - function handleModalData(){ - - } - - /** - * This is called when the date filter calendar is opened. It - * does some event handling, and sets a scope variable so the UI - * knows which calendar was opened. - * @param {Object} $event - The Event object - * @param {String} openVar - Tells which calendar was opened - */ - function open($event, openVar) { - $event.preventDefault(); - $event.stopPropagation(); - ctrl[openVar] = true; - } - } - - /** - * TestAPI Project Modal Controller - * This controller is for the create modal where a user can create - * the project information and for the edit modal where user can - * edit the project's details - */ - angular.module('testapiApp').controller('trustIndicatorModalCtrl', trustIndicatorModalCtrl); - trustIndicatorModalCtrl.$inject = ['$scope', '$uibModalInstance', 'data']; - function trustIndicatorModalCtrl($scope, $uibModalInstance, data) { - var ctrl = this; - ctrl.confirm = confirm; - ctrl.cancel = cancel; - ctrl.data = angular.copy(data); - ctrl.open = open; - - - /** - * Initiate confirmation and call the success handler with the - * inputs. - */ - function confirm() { - ctrl.data.successHandler(ctrl.ti); - $uibModalInstance.dismiss('cancel'); - - } - - /** - * Close the confirm modal without initiating changes. - */ - function cancel() { - $uibModalInstance.dismiss('cancel'); - } - - function handleModalData(){ - - } - - /** - * This is called when the date filter calendar is opened. It - * does some event handling, and sets a scope variable so the UI - * knows which calendar was opened. - * @param {Object} $event - The Event object - * @param {String} openVar - Tells which calendar was opened - */ - function open($event, openVar) { - $event.preventDefault(); - $event.stopPropagation(); - ctrl[openVar] = true; - } - } - - /** - * TestAPI Project Modal Controller - * This controller is for the create modal where a user can create - * the project information and for the edit modal where user can - * edit the project's details - */ angular.module('testapiApp').controller('customModalCtrl', customModalCtrl); customModalCtrl.$inject = ['$scope', '$uibModalInstance', 'data']; function customModalCtrl($scope, $uibModalInstance, data) { |