summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--vnfmarket-be/deployment/docker/docker-postgres/pom.xml8
-rw-r--r--vnfmarket-be/deployment/docker/docker-refrepo/pom.xml12
-rw-r--r--vnfmarket-be/deployment/install/docker-compose.yml4
-rwxr-xr-xvnfmarket-be/deployment/install/vnfsdk_vm_init.sh4
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/app.config.js20
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/app.js2
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home-test.js32
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home.html12
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeCtrl.js32
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeModule.js2
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeRoute.js2
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeService.js66
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/marketplace.html181
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete-test.js52
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete.html11
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteCtrl.js18
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteService.js6
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestCtrl.js28
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestService.js6
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/lifeCycleCtrl.js36
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/view.html32
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails-test.js42
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails.html58
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsCtrl.js70
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsService.js6
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/validationCtrl.js36
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/view.html26
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/functionalTestCtrl.js44
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/view.html22
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/lifeCycleCtrl.js46
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/view.html34
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onBoardingService.js14
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.html6
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.js126
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.html2
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.js22
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/validationCtrl.js44
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/view.html92
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUpload.html41
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadCtrl.js48
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadService.js18
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/main-page.html114
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/mainPageCtrl.js4
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenav.html58
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenavCtrl.js6
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/config/baseUrlConfig.js6
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/config/configuration.js22
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/css/home.css1185
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/directives/autofocus/autofocusDirective.js2
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/directives/fileupload/fileuploadDirective.js6
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/locale/locale-en.json311
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/services/httpService.js40
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/templates/serverError.html18
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/alert.js94
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/carousel.js237
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/collapse.js212
-rw-r--r--vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/dropdown.js165
57 files changed, 1595 insertions, 2248 deletions
diff --git a/vnfmarket-be/deployment/docker/docker-postgres/pom.xml b/vnfmarket-be/deployment/docker/docker-postgres/pom.xml
index b274e01e..eb0b88c3 100644
--- a/vnfmarket-be/deployment/docker/docker-postgres/pom.xml
+++ b/vnfmarket-be/deployment/docker/docker-postgres/pom.xml
@@ -31,7 +31,7 @@
<packaging>pom</packaging>
<properties>
- <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
+ <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
<docker.push.registry></docker.push.registry>
<skip.docker.build>true</skip.docker.build>
<skip.docker.tag>true</skip.docker.tag>
@@ -57,7 +57,7 @@
<skipDocker>${docker.skip}</skipDocker>
<images>
<image>
- <name>onap/refrepo/postgres</name>
+ <name>onap/vnfsdk/refrepo/postgres</name>
<alias>postgres</alias>
<build>
<cleanup>try</cleanup>
@@ -77,7 +77,7 @@
</goals>
<configuration>
<removeAll>true</removeAll>
- <image>onap/refrepo/postgres</image>
+ <image>onap/vnfsdk/refrepo/postgres</image>
</configuration>
</execution>
@@ -99,7 +99,7 @@
<goal>push</goal>
</goals>
<configuration>
- <image>onap/refrepo/postgres</image>
+ <image>onap/vnfsdk/refrepo/postgres</image>
</configuration>
</execution>
</executions>
diff --git a/vnfmarket-be/deployment/docker/docker-refrepo/pom.xml b/vnfmarket-be/deployment/docker/docker-refrepo/pom.xml
index a6ca68e0..fb8f274f 100644
--- a/vnfmarket-be/deployment/docker/docker-refrepo/pom.xml
+++ b/vnfmarket-be/deployment/docker/docker-refrepo/pom.xml
@@ -31,7 +31,7 @@
<packaging>pom</packaging>
<properties>
- <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
+ <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
<docker.push.registry></docker.push.registry>
<skip.docker.build>true</skip.docker.build>
<skip.docker.tag>true</skip.docker.tag>
@@ -48,7 +48,7 @@
<version>1.0.0</version>
<configuration>
<verbose>true</verbose>
- <imageName>onap/refrepo</imageName>
+ <imageName>onap/vnfsdk/refrepo</imageName>
<serverId>docker-hub</serverId>
<dockerDirectory>${basedir}/src/main/docker</dockerDirectory>
<resources>
@@ -80,8 +80,8 @@
<goal>tag</goal>
</goals>
<configuration>
- <image>onap/refrepo</image>
- <newName>${docker.push.registry}/onap/refrepo:${project.version}-${maven.build.timestamp}</newName>
+ <image>onap/vnfsdk/refrepo</image>
+ <newName>${docker.push.registry}/onap/vnfsdk/refrepo:${project.version}-${maven.build.timestamp}</newName>
<pushImage>${skip.docker.push}</pushImage>
<skipDockerTag>${skip.docker.tag}</skipDockerTag>
</configuration>
@@ -93,8 +93,8 @@
<goal>tag</goal>
</goals>
<configuration>
- <image>onap/refrepo</image>
- <newName>${docker.push.registry}/onap/refrepo:latest</newName>
+ <image>onap/vnfsdk/refrepo</image>
+ <newName>${docker.push.registry}/onap/vnfsdk/refrepo:latest</newName>
<pushImage>${skip.docker.push}</pushImage>
<skipDockerTag>${skip.docker.tag}</skipDockerTag>
</configuration>
diff --git a/vnfmarket-be/deployment/install/docker-compose.yml b/vnfmarket-be/deployment/install/docker-compose.yml
index 75f31c20..00e26fb0 100644
--- a/vnfmarket-be/deployment/install/docker-compose.yml
+++ b/vnfmarket-be/deployment/install/docker-compose.yml
@@ -9,7 +9,7 @@ services:
postgres:
container_name: "postgres"
restart: "always"
- image: "${NEXUS_REPO}/onap/refrepo/postgres:${POSTGRES_TAG}"
+ image: "${NEXUS_REPO}/onap/vnfsdk/refrepo/postgres:${POSTGRES_TAG}"
mem_limit: "1g"
memswap_limit: "1g"
ports:
@@ -18,7 +18,7 @@ services:
refrepo:
container_name: "refrepo"
restart: "always"
- image: "${NEXUS_REPO}/onap/refrepo:${REFREPO_TAG}"
+ image: "${NEXUS_REPO}/onap/vnfsdk/refrepo:${REFREPO_TAG}"
ports:
- "8702-8703:8702-8703"
- "8000:8000"
diff --git a/vnfmarket-be/deployment/install/vnfsdk_vm_init.sh b/vnfmarket-be/deployment/install/vnfsdk_vm_init.sh
index e1db6b5a..a3bcba8a 100755
--- a/vnfmarket-be/deployment/install/vnfsdk_vm_init.sh
+++ b/vnfmarket-be/deployment/install/vnfsdk_vm_init.sh
@@ -22,8 +22,8 @@ source .env
# Refresh images
docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO
-docker pull $NEXUS_DOCKER_REPO/onap/refrepo:${REFREPO_TAG}
-docker pull $NEXUS_DOCKER_REPO/onap/refrepo:${POSTGRES_TAG}
+docker pull $NEXUS_DOCKER_REPO/onap/vnfsdk/refrepo:${REFREPO_TAG}
+docker pull $NEXUS_DOCKER_REPO/onap/vnfsdk/refrepo:${POSTGRES_TAG}
# docker-compose is not in /usr/bin
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/app.config.js b/vnfmarket/src/main/webapp/vnfmarket/app/app.config.js
index ffe6e110..25c15212 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/app.config.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/app.config.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -65,16 +65,16 @@
'A200': '#E1E4E5',
'A400': '#858CA8',
'A700': '#FFFFFF'
- });
-
- $mdThemingProvider.theme('default')
- .primaryPalette('amazingPaletteName',{
- 'default' : 'A400',
- 'hue-1' : "A700",
- 'hue-2' : "100",
- 'hue-3' : "A200"
+ });
+
+ $mdThemingProvider.theme('default')
+ .primaryPalette('amazingPaletteName', {
+ 'default': 'A400',
+ 'hue-1': "A700",
+ 'hue-2': "100",
+ 'hue-3': "A200"
}).accentPalette('amazingPaletteName', {
- 'hue-1' : 'A400'
+ 'hue-1': 'A400'
})
$locationProvider.hashPrefix('!');
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/app.js b/vnfmarket/src/main/webapp/vnfmarket/app/app.js
index b582b622..95fa1078 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/app.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/app.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home-test.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home-test.js
index a182a9b3..40c09c23 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home-test.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home-test.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -24,19 +24,19 @@
* Test of the app
*/
- describe('Home - Marketplace', function() {
+ describe('Home - Marketplace', function () {
var controller = null,
$scope = null,
$location, service, httpBackend, config, state;
- beforeEach(function() {
+ beforeEach(function () {
module('vnfmarket');
});
beforeEach(module('ui.router'));
beforeEach(module('md.data.table'));
beforeEach(module('pascalprecht.translate'));
- beforeEach(inject(function($controller, $rootScope, _$location_, homeService, $httpBackend, vnfConfig, $state) {
+ beforeEach(inject(function ($controller, $rootScope, _$location_, homeService, $httpBackend, vnfConfig, $state) {
$scope = $rootScope.$new();
$location = _$location_;
service = homeService;
@@ -48,11 +48,11 @@
});
}));
- it('Should HomeCtrl must be defined', function() {
+ it('Should HomeCtrl must be defined', function () {
expect(controller).toBeDefined();
});
- it('Service List response should be of type array', function() {
+ it('Service List response should be of type array', function () {
var data = [{
"csarId": "26b4d6c4-a157-43c0-8ebc-9d6af1d6c40c",
"name": "clearwater_vnf",
@@ -75,28 +75,28 @@
var returnData = {};
httpBackend.expectGET(config.common.baseUrl + config.api.home.getFeaturesList.url).respond(returnData);
- service.getFeaturesList().then(function(response) {
+ service.getFeaturesList().then(function (response) {
expect(response.data).toBeDefined();
expect(Array.isArray(response.data)).toBeTruthy();
});
httpBackend.flush();
});
- it('Service List response is not of array type', function() {
+ it('Service List response is not of array type', function () {
var data = {};
httpBackend.whenGET(config.common.baseUrl + config.api.home.getFeaturesList.url).respond(200, data);
var returnData = {};
httpBackend.expectGET(config.common.baseUrl + config.api.home.getFeaturesList.url).respond(returnData);
- service.getFeaturesList().then(function(response) {
+ service.getFeaturesList().then(function (response) {
expect(response.data).toBeDefined();
expect(Array.isArray(response.data)).toBeFalsy();
});
httpBackend.flush();
});
- it('Service List response should contain service details', function() {
+ it('Service List response should contain service details', function () {
var returnData = {};
var data = [{
"csarId": "26b4d6c4-a157-43c0-8ebc-9d6af1d6c40c",
@@ -118,7 +118,7 @@
httpBackend.whenGET(config.common.baseUrl + config.api.home.getFeaturesList.url).respond(200, data);
httpBackend.expectGET(config.common.baseUrl + config.api.home.getFeaturesList.url).respond(returnData);
- service.getFeaturesList().then(function(response) {
+ service.getFeaturesList().then(function (response) {
expect(response.data).toBeDefined();
var serviceDetails = response.data[0];
expect(serviceDetails.csarId).toBeDefined();
@@ -140,24 +140,24 @@
httpBackend.flush();
});
- it('Should match the path Module name', function() {
+ it('Should match the path Module name', function () {
$location.path('/marketplace');
expect($location.path()).toBe('/marketplace');
});
- it('Path to the state home has to be defined', function() {
+ it('Path to the state home has to be defined', function () {
expect(state.href("home")).toBe('#!');
});
- it('Path to the state home.marketplace has to be defined', function() {
+ it('Path to the state home.marketplace has to be defined', function () {
expect(state.href("home.marketplace")).toBe('#!/marketplace');
});
- it('Path to the state home.serviceDetails has to be defined', function() {
+ it('Path to the state home.serviceDetails has to be defined', function () {
expect(state.href("home.serviceDetails")).toBe('#!/serviceDetails');
});
- it('When a state is invalid', function() {
+ it('When a state is invalid', function () {
expect(state.href("blah")).toBeNull('/marketplace');
});
});
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home.html
index da8fdc3e..692e7276 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/home.html
@@ -13,17 +13,18 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<md-sidenav layout="column" class="md-sidenav-left md-whiteframe-z1" md-component-id="left" md-is-locked-open="$mdMedia('gt-md')" id="sideNav">
+<md-sidenav layout="column" class="md-sidenav-left md-whiteframe-z1" md-component-id="left" md-is-locked-open="$mdMedia('gt-md')"
+ id="sideNav">
<div ng-controller="SidenavCtrl as vm" ng-cloak>
<md-toolbar class="md-tall md-hue-1">
<div class="image">
- <img src="/onapui/vnfmarket/common/images/logo.png" align="middle" >
+ <img src="/onapui/vnfmarket/common/images/logo.png" align="middle">
</div>
<div layout="column" class="md-toolbar-tools-bottom inset">
</div>
</md-toolbar>
<md-list>
- <md-list-item ui-sref="home.marketplace" ui-sref-opts="{reload: true}">
+ <md-list-item ui-sref="home.marketplace" ui-sref-opts="{reload: true}">
<div class="inset">
<!--<ng-md-icon icon="apps"></ng-md-icon>-->
<i>
@@ -43,7 +44,8 @@
</div>
</md-sidenav>
-<div layout="column" class="relative md-whiteframe-23dp verticalBar" layout-fill role="main" ng-controller="LayoutCtrl as layout" ng-cloak>
+<div layout="column" class="relative md-whiteframe-23dp verticalBar" layout-fill role="main" ng-controller="LayoutCtrl as layout"
+ ng-cloak>
<md-toolbar class="md-hue-2 md-whiteframe-z2">
<div class="md-toolbar-tools">
<md-button ng-click="layout.toggleSidenav('left')" hide-gt-md aria-label="Menu">
@@ -52,7 +54,7 @@
<h3 class="headTitle">{{ 'module.marketplace.main.headerTitle' | translate}}</h3>
</div>
</md-toolbar>
- <div class="PageIndicator" ></div>
+ <div class="PageIndicator"></div>
<md-content layout="column" class="contentBackground" flex md-scroll-y>
<div ui-view></div>
</md-content>
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeCtrl.js
index 8555bad5..0b5e681b 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -57,7 +57,7 @@
vm.pagination = [5, 10, 15, {
label: 'All',
- value: function() {
+ value: function () {
return vm.services.length ? vm.services.length : 0;
}
}];
@@ -80,9 +80,9 @@
pageSelect: true
};
- vm.getFeatureList = function() {
+ vm.getFeatureList = function () {
vm.SpinClass = "fa-spin"
- homeService.getFeaturesList().then(function(response) {
+ homeService.getFeaturesList().then(function (response) {
for (var i = 0; i < response.data.length; i++) {
response.data[i].createTime = new Date(response.data[i].createTime);
response.data[i].modifyTime = new Date(response.data[i].modifyTime);
@@ -92,35 +92,35 @@
});
}
- vm.downloadService = function(csarId) {
- homeService.updateDownloadCount(csarId).then(function(response){
- homeService.downloadServiceFile(csarId);
+ vm.downloadService = function (csarId) {
+ homeService.updateDownloadCount(csarId).then(function (response) {
+ homeService.downloadServiceFile(csarId);
vm.getFeatureList();
- });
-
+ });
+
}
- vm.changeView = function(viewType) {
+ vm.changeView = function (viewType) {
vm.hasGridView = !vm.hasGridView;
localStorage.setItem('viewType', viewType);
}
- vm.showDetails = function(serviceDetails) {
+ vm.showDetails = function (serviceDetails) {
$state.go('home.serviceDetails', {
serviceDetails: serviceDetails
});
}
- vm.serviceUpload = function(isUpload, csarId) {
- homeService.openUploadDialog(vm.getFeatureList, isUpload, csarId);
+ vm.serviceUpload = function (isUpload, csarId) {
+ homeService.openUploadDialog(vm.getFeatureList, isUpload, csarId);
};
-
- vm.onDeleteCompletion = function() {
+
+ vm.onDeleteCompletion = function () {
vm.getFeatureList();
}
- vm.serviceDelete = function(serviceDetails) {
+ vm.serviceDelete = function (serviceDetails) {
homeService.openDeleteDialog(serviceDetails, vm.onDeleteCompletion);
};
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeModule.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeModule.js
index acf0516c..ec89764b 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeModule.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeModule.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeRoute.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeRoute.js
index bcd7906b..d6c9ace0 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeRoute.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeRoute.js
@@ -24,7 +24,7 @@
*/
angular.module('vnfmarket')
- .config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider, vnfConfig) {
+ .config(['$stateProvider', '$urlRouterProvider', function ($stateProvider, $urlRouterProvider, vnfConfig) {
var homePath = '/onapui/vnfmarket/app/modules/home';
$stateProvider
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeService.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeService.js
index 750c1711..ccf34789 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeService.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/homeService.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -34,8 +34,8 @@
getFeaturesList: getFeaturesList,
downloadServiceFile: downloadServiceFile,
openDeleteDialog: openDeleteDialog,
- updateDownloadCount:updateDownloadCount,
- openUploadDialog:openUploadDialog
+ updateDownloadCount: updateDownloadCount,
+ openUploadDialog: openUploadDialog
};
function getFeaturesList() {
@@ -44,23 +44,23 @@
var defer = $q.defer()
httpService.apiRequest(url, method)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
}
-
- function updateDownloadCount(csarId) {
+
+ function updateDownloadCount(csarId) {
var url = vnfConfig.api.home.updateDownloadCount.url;
- var method = vnfConfig.api.home.updateDownloadCount.method;
- url = url.replace(":csarId", csarId)
+ var method = vnfConfig.api.home.updateDownloadCount.method;
+ url = url.replace(":csarId", csarId)
var defer = $q.defer()
httpService.apiRequest(url, method)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
@@ -74,34 +74,34 @@
function openDeleteDialog(serviceDetails, callbackFunction) {
$mdDialog.show({
- controller: 'serviceDeleteCtrl',
- templateUrl: vnfConfig.modulePath.home + '/serviceDelete/serviceDelete.html',
- serviceDetails: serviceDetails,
- controllerAs: 'vm'
- })
- .then(function(answer) {
+ controller: 'serviceDeleteCtrl',
+ templateUrl: vnfConfig.modulePath.home + '/serviceDelete/serviceDelete.html',
+ serviceDetails: serviceDetails,
+ controllerAs: 'vm'
+ })
+ .then(function (answer) {
//vm.status = 'You said the information was "' + answer + '".';
callbackFunction();
- }, function() {
+ }, function () {
//vm.status = 'You cancelled the dialog.';
});
}
-
- function openUploadDialog(callbackFunction,isUpload ,csarId) {
+
+ function openUploadDialog(callbackFunction, isUpload, csarId) {
$mdDialog.show({
- controller: 'serviceUploadCtrl',
- templateUrl: vnfConfig.modulePath.home + '/serviceUpload/serviceUpload.html',
- controllerAs: 'vm',
- isUpload: isUpload,
- csarId: csarId ? csarId : null
- })
- .then(function(answer) {
- if(callbackFunction)
- callbackFunction();
- // vm.status = 'You said the information was "' + answer + '".';
- }, function() {
- // vm.status = 'You cancelled the dialog.';
- });
+ controller: 'serviceUploadCtrl',
+ templateUrl: vnfConfig.modulePath.home + '/serviceUpload/serviceUpload.html',
+ controllerAs: 'vm',
+ isUpload: isUpload,
+ csarId: csarId ? csarId : null
+ })
+ .then(function (answer) {
+ if (callbackFunction)
+ callbackFunction();
+ // vm.status = 'You said the information was "' + answer + '".';
+ }, function () {
+ // vm.status = 'You cancelled the dialog.';
+ });
}
}
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/marketplace.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/marketplace.html
index c9c4a313..64a3f392 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/marketplace.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/marketplace.html
@@ -16,14 +16,14 @@
<div class="md-padding nomargin nopadding" flex layout-sm="column">
<md-card class="nomargin">
<md-card-content class="nopadding">
- <img src="/onapui/vnfmarket/common/images/productioncardtype.png" style="width:100%;">
+ <img src="/onapui/vnfmarket/common/images/productioncardtype.png" style="width:100%;">
</md-card-content>
</md-card>
<!-- Start About Page -->
<md-card class="sortbar">
<md-toolbar id="homeToolbar" class="md-hue-3">
<div class="md-toolbar-tools">
- <label ng-if="vm.services.length > 0" class="md-title fontSize marginAuto selectLblAlignment">{{'module.marketplace.main.sortBy.label' | translate}}</label>
+ <label ng-if="vm.services.length > 0" class="md-title fontSize marginAuto selectLblAlignment">{{'module.marketplace.main.sortBy.label' | translate}}</label>
<select ng-model="sortBy" class="md-no-underline noMargin iconMargin md-title fontSize" id="sortByLabel" ng-if="vm.services.length > 0">
<option class="md-title fontSize " value="" disabled selected>{{'module.marketplace.main.sortBy.title' | translate}}</option>
<option class="md-title fontSize " value="{{'module.marketplace.main.sortBy.options.name.value' | translate}}">{{'module.marketplace.main.sortBy.options.name.key' | translate}}</option>
@@ -32,18 +32,22 @@
</select>
<form flex name="vm.filter.name" class="iconMargin">
<md-input-container md-no-float class="md-block" id="searchFieldContainer" ng-if="!vm.showSearch">
- <input class="md-title fontSize" ng-model="vm.filter.search" type="text" id="searchField" placeholder="{{'module.marketplace.main.search.placeholder' | translate}}" autofocus>
+ <input class="md-title fontSize" ng-model="vm.filter.search" type="text" id="searchField" placeholder="{{'module.marketplace.main.search.placeholder' | translate}}"
+ autofocus>
</md-input-container>
</form>
- <md-icon class="md-icon iconAlignment defaultColor" aria-label="{{'common.actions.close' | translate}}" ng-click="vm.showSearch = !vm.showSearch; vm.filter.search = '';" ng-if="!vm.showSearch" id="cancelSearch">
+ <md-icon class="md-icon iconAlignment defaultColor" aria-label="{{'common.actions.close' | translate}}" ng-click="vm.showSearch = !vm.showSearch; vm.filter.search = '';"
+ ng-if="!vm.showSearch" id="cancelSearch">
<md-tooltip md-direction="top">{{'common.actions.close' | translate}}</md-tooltip>
<i class="fa fa-close" aria-hidden="true"></i>
</md-icon>
- <md-icon class="md-icon iconAlignment defaultColor" aria-label="{{'module.marketplace.main.search.label' | translate}}" ng-if="!vm.showSearch" id="searchIcon">
+ <md-icon class="md-icon iconAlignment defaultColor" aria-label="{{'module.marketplace.main.search.label' | translate}}" ng-if="!vm.showSearch"
+ id="searchIcon">
<i class="fa fa-search searchIconColor" aria-hidden="true"></i>
</md-icon>
- <md-icon class="md-icon iconMargin iconAlignment defaultColor" aria-label="{{'common.actions.search' | translate}}" ng-if="vm.showSearch && vm.services.length > 0" ng-click="vm.showSearch = !vm.showSearch;">
+ <md-icon class="md-icon iconMargin iconAlignment defaultColor" aria-label="{{'common.actions.search' | translate}}" ng-if="vm.showSearch && vm.services.length > 0"
+ ng-click="vm.showSearch = !vm.showSearch;">
<md-tooltip md-direction="top">{{'common.actions.search' | translate}}</md-tooltip>
<i class="fa fa-search" aria-hidden="true"></i>
</md-icon>
@@ -52,21 +56,24 @@
<span ng-if="vm.services.length > 0" class="iconMargin btn-toolbar">
<div class="btn-group-xs" role="group" aria-label="Basic example">
- <button class="btn btnDefault gridViewType" aria-label="{{'module.marketplace.main.listView.label' | translate}}" ng-click="vm.changeView('list')" ng-disabled="!vm.hasGridView">
- <md-icon class="md-icon ">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.label' | translate}}</md-tooltip>
- <i class="fa fa-list viewIconPosition" aria-hidden="true"></i>
- </md-icon>
- </button>
- <button class="btn btnDefault gridViewType " aria-label="{{'module.marketplace.main.gridView.label' | translate}}" ng-click="vm.changeView('grid')" ng-disabled="vm.hasGridView">
- <md-icon class="md-icon">
- <md-tooltip md-direction="top">{{'module.marketplace.main.gridView.label' | translate}}</md-tooltip>
- <i class="fa fa-th viewIconPosition" aria-hidden="true"></i>
- </md-icon>
- </button>
+ <button class="btn btnDefault gridViewType" aria-label="{{'module.marketplace.main.listView.label' | translate}}" ng-click="vm.changeView('list')"
+ ng-disabled="!vm.hasGridView">
+ <md-icon class="md-icon ">
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.label' | translate}}</md-tooltip>
+ <i class="fa fa-list viewIconPosition" aria-hidden="true"></i>
+ </md-icon>
+ </button>
+ <button class="btn btnDefault gridViewType " aria-label="{{'module.marketplace.main.gridView.label' | translate}}" ng-click="vm.changeView('grid')"
+ ng-disabled="vm.hasGridView">
+ <md-icon class="md-icon">
+ <md-tooltip md-direction="top">{{'module.marketplace.main.gridView.label' | translate}}</md-tooltip>
+ <i class="fa fa-th viewIconPosition" aria-hidden="true"></i>
+ </md-icon>
+ </button>
</div>
</span>
- <md-icon class="md-icon iconAlignment defaultColor" aria-label="{{'module.marketplace.main.refresh.label' | translate}}" ng-click="vm.getFeatureList()">
+ <md-icon class="md-icon iconAlignment defaultColor" aria-label="{{'module.marketplace.main.refresh.label' | translate}}"
+ ng-click="vm.getFeatureList()">
<md-tooltip md-direction="top">{{'module.marketplace.main.refresh.label' | translate}}</md-tooltip>
<i class="fa fa-refresh" ng-class="vm.SpinClass" aria-hidden="true"></i>
</md-icon>
@@ -75,13 +82,17 @@
</md-toolbar>
</md-card>
<div class="md-padding" layout-xs="column" layout="row" layout-wrap ng-if="vm.hasGridView && vm.services.length > 0" id="gridView">
- <md-card class="gridViewMargin md-padding tiles flex-md-100 flex-gt-md-30 flex-lt-md-100" ng-repeat="service in vm.services | filter: vm.filter.search| orderBy:sortBy" layout-wrap>
+ <md-card class="gridViewMargin md-padding tiles flex-md-100 flex-gt-md-30 flex-lt-md-100" ng-repeat="service in vm.services | filter: vm.filter.search| orderBy:sortBy"
+ layout-wrap>
<md-card-header class="nopadding">
<md-card-header-text>
<md-toolbar class="md-menu-toolbar gridToolbarHeight">
<div class="md-toolbar-tools nopadding gridTitleHeight">
- <span class="md-title fontSize gridServiceTitle"><md-tooltip md-direction="top">{{'common.message.viewDetails' | translate}} </md-tooltip> <a class="pointerClick" ng-click="vm.showDetails(service)">{{service.name}}</a></span>
- <span flex></span>
+ <span class="md-title fontSize gridServiceTitle">
+ <md-tooltip md-direction="top">{{'common.message.viewDetails' | translate}} </md-tooltip>
+ <a class="pointerClick" ng-click="vm.showDetails(service)">{{service.name}}</a>
+ </span>
+ <span flex></span>
</div>
</md-toolbar>
</md-card-header-text>
@@ -93,14 +104,14 @@
<md-toolbar class="md-menu-toolbar">
<div class="md-toolbar-tools nopadding">
<button class="btn btnDefault iconMargin" ng-click="vm.serviceUpload(false, service.csarId)">
- <md-tooltip md-direction="top">{{'common.actions.update' | translate}}</md-tooltip>
+ <md-tooltip md-direction="top">{{'common.actions.update' | translate}}</md-tooltip>
<i>
<img src="/onapui/vnfmarket/common/images/reupload.png" class="btnIconSpacing">
</i>
- {{'common.actions.update' | translate}}
+ {{'common.actions.update' | translate}}
</button>
<button class="btn btnDefault iconMargin deletebutton" ng-click="vm.serviceDelete(service)">
- <md-tooltip md-direction="top">{{'common.actions.delete' | translate}}</md-tooltip>
+ <md-tooltip md-direction="top">{{'common.actions.delete' | translate}}</md-tooltip>
<i>
<img src="/onapui/vnfmarket/common/images/delete.png" class="btnIconSpacing">
</i>
@@ -108,11 +119,11 @@
</button>
<span flex></span>
<button class="btn btnPrimary downloadIcon" ng-click="vm.downloadService(service.csarId)" ng-disabled="service.downloadCount == -1">
- <md-tooltip md-direction="top">{{'common.actions.download' | translate}} </md-tooltip>
+ <md-tooltip md-direction="top">{{'common.actions.download' | translate}} </md-tooltip>
<i>
<img src="/onapui/vnfmarket/common/images/download.png" class="btnIconSpacing">
</i>
- {{'common.actions.download' | translate}}
+ {{'common.actions.download' | translate}}
</button>
</div>
</md-toolbar>
@@ -120,9 +131,11 @@
<span class="gridUnderline"></span>
<md-toolbar class="md-menu-toolbar gridBottomeHeight">
<div class="md-toolbar-tools nopadding gridBottomeHeight">
- <span class="md-subhead gridBottomFonts"> {{'module.marketplace.main.gridView.serviceType.label' | translate}} : {{service.type }}</span>
- <span flex></span>
- <span class="md-subhead gridBottomFonts"> {{'module.marketplace.main.gridView.downloads.label' | translate}} : <span class="md-title fontSize ">{{service.downloadCount != -1 ?service.downloadCount : 0 }}</span></span>
+ <span class="md-subhead gridBottomFonts"> {{'module.marketplace.main.gridView.serviceType.label' | translate}} : {{service.type }}</span>
+ <span flex></span>
+ <span class="md-subhead gridBottomFonts"> {{'module.marketplace.main.gridView.downloads.label' | translate}} :
+ <span class="md-title fontSize ">{{service.downloadCount != -1 ?service.downloadCount : 0 }}</span>
+ </span>
</div>
</md-toolbar>
</md-card>
@@ -133,92 +146,110 @@
<thead md-head md-order="sortBy">
<tr md-row>
<th md-column class="text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.name' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.name' | translate}}
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.name' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.name'
+ | translate}}
</th>
<th md-column class="text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.provider' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.provider' | translate}}</th>
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.provider' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.provider'
+ | translate}}</th>
<th md-column class="text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.description' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.description' | translate}}</th>
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.description' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.description'
+ | translate}}</th>
<th md-column class="text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.type' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.type' | translate}}</th>
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.type' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.type'
+ | translate}}</th>
<th md-column class="text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.size' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.size' | translate}}</th>
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.size' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.size'
+ | translate}}</th>
<th md-column class="text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.createdAt' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.createdAt' | translate}}</th>
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.createdAt' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.createdAt'
+ | translate}}</th>
<th md-column class="text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.lastModified' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.lastModified' | translate}}</th>
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.lastModified' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.lastModified'
+ | translate}}</th>
<th md-column md-numeric class="text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.donwloads' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.donwloads' | translate}}</th>
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.donwloads' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.donwloads'
+ | translate}}</th>
<th md-column md-numeric class=" actionWidth text-center fontSize">
- <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.actions' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.actions' | translate}}</th>
+ <md-tooltip md-direction="top">{{'module.marketplace.main.listView.headers.actions' | translate}}</md-tooltip>{{'module.marketplace.main.listView.headers.actions'
+ | translate}}</th>
</tr>
</thead>
<tbody md-body>
<tr md-row md-select="dessert" md-select-id="name" md-auto-select ng-repeat="service in vm.services | filter: vm.filter.search | orderBy:sortBy | limitTo: vm.paginationQuery.limit: (vm.paginationQuery.page - 1) * vm.paginationQuery.limit">
<td md-cell class="text-center">
- <md-tooltip md-direction="top">{{service.name}}</md-tooltip>
- <a class="pointerClick" ng-click="vm.showDetails(service)">{{service.name}}</a></td>
+ <md-tooltip md-direction="top">{{service.name}}</md-tooltip>
+ <a class="pointerClick" ng-click="vm.showDetails(service)">{{service.name}}</a>
+ </td>
<td md-cell class="text-center">
- <md-tooltip md-direction="top">{{service.provider}}</md-tooltip>
- {{service.provider}}</td>
+ <md-tooltip md-direction="top">{{service.provider}}</md-tooltip>
+ {{service.provider}}</td>
<td md-cell class="text-center">
- <md-tooltip md-direction="top">{{service.shortDesc}}</md-tooltip>
- {{service.shortDesc | limitTo:50 }}<span ng-if="service.shortDesc.length > 50">...<span></td>
+ <md-tooltip md-direction="top">{{service.shortDesc}}</md-tooltip>
+ {{service.shortDesc | limitTo:50 }}
+ <span ng-if="service.shortDesc.length > 50">...
+ <span>
+ </td>
<td md-cell class="text-center">
- <md-tooltip md-direction="top">{{service.type}}</md-tooltip>
- {{service.type}}</td>
+ <md-tooltip md-direction="top">{{service.type}}</md-tooltip>
+ {{service.type}}</td>
<td md-cell class="text-center">
- <md-tooltip md-direction="top">{{service.size}}</md-tooltip>
- {{service.size}}</td>
+ <md-tooltip md-direction="top">{{service.size}}</md-tooltip>
+ {{service.size}}</td>
<td md-cell class="text-center">
- <md-tooltip md-direction="top">{{service.createTime | date:'yyyy-MM-dd h:mm a'}}</md-tooltip>
- {{service.createTime | date:'yyyy-MM-dd h:mm a'}}</td>
+ <md-tooltip md-direction="top">{{service.createTime | date:'yyyy-MM-dd h:mm a'}}</md-tooltip>
+ {{service.createTime | date:'yyyy-MM-dd h:mm a'}}</td>
<td md-cell class="text-center">
- <md-tooltip md-direction="top">{{service.modifyTime | date:'yyyy-MM-dd h:mm a'}}</md-tooltip>
- {{service.modifyTime | date:'yyyy-MM-dd h:mm a'}}</td>
+ <md-tooltip md-direction="top">{{service.modifyTime | date:'yyyy-MM-dd h:mm a'}}</md-tooltip>
+ {{service.modifyTime | date:'yyyy-MM-dd h:mm a'}}</td>
<td md-cell class="text-center">
- <md-tooltip md-direction="top" >{{service.downloadCount ?service.downloadCount : 0 }}</md-tooltip>
- {{service.downloadCount != -1?service.downloadCount : 0 }}</td>
+ <md-tooltip md-direction="top">{{service.downloadCount ?service.downloadCount : 0 }}</md-tooltip>
+ {{service.downloadCount != -1?service.downloadCount : 0 }}</td>
<td md-cell>
<span class="pull-right">
<md-icon class="md-icon" aria-label="{{'common.actions.update' | translate}}" ng-click="vm.serviceUpload(false, service.csarId)">
- <md-tooltip md-direction="top">{{'common.actions.update' | translate}}</md-tooltip>
- <i>
- <img src="/onapui/vnfmarket/common/images/reupload.png" class="btnIconSpacing">
- </i>
+ <md-tooltip md-direction="top">{{'common.actions.update' | translate}}</md-tooltip>
+ <i>
+ <img src="/onapui/vnfmarket/common/images/reupload.png" class="btnIconSpacing">
+ </i>
<!-- <i class="material-icons materialIconAdjustment" aria-hidden="true">{{'common.actions.fileUpload' | translate}}</i> -->
</md-icon>
- <md-icon class="md-icon" aria-label="{{'common.actions.download' | translate}}" ng-click="vm.downloadService(service.csarId)" ng-if="service.downloadCount != -1">
- <md-tooltip md-direction="top">{{'common.actions.download' | translate}}</md-tooltip>
+ <md-icon class="md-icon" aria-label="{{'common.actions.download' | translate}}" ng-click="vm.downloadService(service.csarId)"
+ ng-if="service.downloadCount != -1">
+ <md-tooltip md-direction="top">{{'common.actions.download' | translate}}</md-tooltip>
<!-- <i class="material-icons materialIconAdjustment" aria-hidden="true">{{'common.actions.getApp' | translate}}</i> -->
<i>
- <img src="/onapui/vnfmarket/common/images/download.png" class="btnIconSpacing primaryColor">
- </i>
+ <img src="/onapui/vnfmarket/common/images/download.png" class="btnIconSpacing primaryColor">
+ </i>
</md-icon>
- <md-icon class="md-icon" aria-label="{{'common.actions.delete' | translate}}" ng-click="vm.serviceDelete(service)">
- <md-tooltip md-direction="top">{{'common.actions.delete' | translate}}</md-tooltip>
- <i>
- <img src="/onapui/vnfmarket/common/images/delete.png" class="btnIconSpacing">
- </i>
+ <md-icon class="md-icon" aria-label="{{'common.actions.delete' | translate}}" ng-click="vm.serviceDelete(service)">
+ <md-tooltip md-direction="top">{{'common.actions.delete' | translate}}</md-tooltip>
+ <i>
+ <img src="/onapui/vnfmarket/common/images/delete.png" class="btnIconSpacing">
+ </i>
<!-- <i class="fa fa-trash-o icon-red fa-sm" aria-hidden="true"></i> -->
</md-icon>
- <md-icon class="md-icon" aria-label="Delete service" >
+ <md-icon class="md-icon" aria-label="Delete service">
</span>
</td>
</tr>
</tbody>
</table>
</md-table-container>
- <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page" md-total="{{vm.services.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink" md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
+ <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page"
+ md-total="{{vm.services.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink"
+ md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
</md-card>
<div ng-if="vm.services.length == 0">
- <div class="content emptyPage">
- <div class="imageContainer">
- <img src="/onapui/vnfmarket/common/images/empty.png" class="btnIconSpacing">
+ <div class="content emptyPage">
+ <div class="imageContainer">
+ <img src="/onapui/vnfmarket/common/images/empty.png" class="btnIconSpacing">
+ </div>
+ <h3>{{'module.marketplace.main.emptyList.label' | translate}}
+ <a ng-click="vm.serviceUpload(true)">{{'module.marketplace.main.emptyList.anchor' | translate}}</a> {{'module.marketplace.main.emptyList.labelContinued'
+ | translate}}</h3>
</div>
- <h3>{{'module.marketplace.main.emptyList.label' | translate}} <a ng-click="vm.serviceUpload(true)">{{'module.marketplace.main.emptyList.anchor' | translate}}</a> {{'module.marketplace.main.emptyList.labelContinued' | translate}}</h3>
</div>
</div>
-</div>
</div> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete-test.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete-test.js
index 2fb828a1..05bb3664 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete-test.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete-test.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -23,39 +23,39 @@
* # homeTest
* Test of the app
*/
- angular
- .module('vnfmarket')
- .constant("serviceDetails", {
- "csarId": "26b4d6c4-a157-43c0-8ebc-9d6af1d6c40c",
- "name": "clearwater_vnf",
- "downloadUri": "null/files/catalog-http/NFAR/Canonical/clearwater_vnf/v1.0/clearwater_vnf.csar",
- "report": "/Demo/reports/b3232e0c-3843-4df8-88e7-734cf2d7a97c/report.html",
- "size": "1.8 MB",
- "version": "v1.0",
- "provider": "Canonical",
- "type": "NFAR",
- "format": "yaml",
- "deletionPending": false,
- "createTime": "2017-02-22 08:59:06",
- "modifyTime": "2017-02-22 08:59:06",
- "shortDesc": "",
- "details": "",
- "remarks": ""
- })
+ angular
+ .module('vnfmarket')
+ .constant("serviceDetails", {
+ "csarId": "26b4d6c4-a157-43c0-8ebc-9d6af1d6c40c",
+ "name": "clearwater_vnf",
+ "downloadUri": "null/files/catalog-http/NFAR/Canonical/clearwater_vnf/v1.0/clearwater_vnf.csar",
+ "report": "/Demo/reports/b3232e0c-3843-4df8-88e7-734cf2d7a97c/report.html",
+ "size": "1.8 MB",
+ "version": "v1.0",
+ "provider": "Canonical",
+ "type": "NFAR",
+ "format": "yaml",
+ "deletionPending": false,
+ "createTime": "2017-02-22 08:59:06",
+ "modifyTime": "2017-02-22 08:59:06",
+ "shortDesc": "",
+ "details": "",
+ "remarks": ""
+ })
- describe('Home - serviceDeleteCtrl', function() {
+ describe('Home - serviceDeleteCtrl', function () {
var controller = null,
$scope = null,
$location, service, httpBackend, config, state, blah;
- beforeEach(function() {
+ beforeEach(function () {
module('vnfmarket');
});
beforeEach(module('ui.router'));
beforeEach(module('md.data.table'));
beforeEach(module('pascalprecht.translate'));
- beforeEach(inject(function($controller, $rootScope, serviceDeleteService, $httpBackend, vnfConfig, serviceDetails) {
+ beforeEach(inject(function ($controller, $rootScope, serviceDeleteService, $httpBackend, vnfConfig, serviceDetails) {
$scope = $rootScope.$new();
service = serviceDeleteService;
httpBackend = $httpBackend;
@@ -66,11 +66,11 @@
});
}));
- it('Should serviceDeleteCtrl must be defined', function() {
+ it('Should serviceDeleteCtrl must be defined', function () {
expect(controller).toBeDefined();
});
- it('Delete service for a valid scenario', function() {
+ it('Delete service for a valid scenario', function () {
var csarId = "26b4d6c4-a157-43c0-8ebc-9d6af1d6c40c", url = config.common.baseUrl + config.api.home.serviceDelete.url;
url = url.replace(":csarId", csarId);
httpBackend.whenDELETE(url).respond(200, {});
@@ -78,7 +78,7 @@
var returnData = {};
httpBackend.expectDELETE(url).respond(returnData);
- service.serviceDelete(csarId).then(function(response) {
+ service.serviceDelete(csarId).then(function (response) {
expect(response.status).toBeDefined();
expect(response.status).toBe(200);
});
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete.html
index 29e27823..aede2b0e 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDelete.html
@@ -27,12 +27,13 @@
<md-dialog-content>
<div class="md-dialog-content">
- <div class="fullWidth center">
- <div class="row">
- <div class="col-xs-2 col-sm-2 col-md-1 col-lg-1 deleteIconSize glyphicon glyphicon-warning-sign icon_warning"></div>
- <div class="msg col-xs-10 col-sm-10 col-md-11 col-lg-11" style="text-align:left;vertical-align: middle;">{{'module.marketplace.serviceDelete.confirmationMesaage' | translate}} "{{ vm.serviceDetails.name }}"?</div>
- </div>
+ <div class="fullWidth center">
+ <div class="row">
+ <div class="col-xs-2 col-sm-2 col-md-1 col-lg-1 deleteIconSize glyphicon glyphicon-warning-sign icon_warning"></div>
+ <div class="msg col-xs-10 col-sm-10 col-md-11 col-lg-11" style="text-align:left;vertical-align: middle;">{{'module.marketplace.serviceDelete.confirmationMesaage' | translate}} "{{ vm.serviceDetails.name
+ }}"?</div>
</div>
+ </div>
</md-dialog-content>
<md-dialog-actions layout="row" class="row deleteAction">
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteCtrl.js
index 5eafe9e8..3fd1a295 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -40,24 +40,24 @@
var vm = this;
vm.serviceDetails = serviceDetails;
- vm.hide = function() {
+ vm.hide = function () {
$mdDialog.hide();
};
- vm.cancel = function() {
+ vm.cancel = function () {
$mdDialog.cancel();
};
- vm.answer = function(answer) {
+ vm.answer = function (answer) {
serviceDeleteService.serviceDelete(vm.serviceDetails.csarId)
- .then(function(response) {
+ .then(function (response) {
$mdDialog.hide(response);
$mdToast.show(
$mdToast.simple()
- .textContent('Service deleted successfully')
- .position("bottom right")
- .action('Ok')
- .theme('success-toast')
+ .textContent('Service deleted successfully')
+ .position("bottom right")
+ .action('Ok')
+ .theme('success-toast')
);
});
};
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteService.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteService.js
index cf58d8a5..3d12cb0b 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteService.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDelete/serviceDeleteService.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -40,9 +40,9 @@
url = url.replace(":csarId", csarId)
var defer = $q.defer()
httpService.apiRequest(url, method)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestCtrl.js
index ec08f3df..fc49d111 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -28,7 +28,7 @@
.module('vnfmarket')
.controller('functionalTestCtrl', functionalTest);
- functionalTest.$inject = [ 'vnfConfig', 'baseUrlConfig', 'functionalTestService', '$stateParams'];
+ functionalTest.$inject = ['vnfConfig', 'baseUrlConfig', 'functionalTestService', '$stateParams'];
/*
* recommend
@@ -36,10 +36,10 @@
* and bindable members up top.
*/
- function functionalTest(vnfConfig, baseUrlConfig, functionalTestService,$stateParams) {
+ function functionalTest(vnfConfig, baseUrlConfig, functionalTestService, $stateParams) {
var vm = this;
vm.validations = [];
- vm.csarId = $stateParams.csarId;
+ vm.csarId = $stateParams.csarId;
console.log("functionalTest")
vm.filter = {
"search": '',
@@ -52,7 +52,7 @@
vm.pagination = [5, 10, 15, {
label: 'All',
- value: function() {
+ value: function () {
return vm.validations.length ? vm.validations.length : 0;
}
}];
@@ -74,16 +74,16 @@
limitSelect: true,
pageSelect: true
};
- vm.getvalidations = function(){
+ vm.getvalidations = function () {
console.log(vm.functionalTests)
}
-
- vm.getFunctionTestDetails = function() {
- functionalTestService.getFunctionTestDetails(vm.csarId).then(function(response){
- vm.validations = response.data;
- })
- }
-
- vm.getFunctionTestDetails();
+
+ vm.getFunctionTestDetails = function () {
+ functionalTestService.getFunctionTestDetails(vm.csarId).then(function (response) {
+ vm.validations = response.data;
+ })
+ }
+
+ vm.getFunctionTestDetails();
}
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestService.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestService.js
index 1c66de0e..e0c5ad7f 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestService.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/functionalTest/functionalTestService.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -42,9 +42,9 @@
var defer = $q.defer()
httpService.apiRequest(url, method)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/lifeCycleCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/lifeCycleCtrl.js
index 2a313938..af6c960b 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/lifeCycleCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/lifeCycleCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -28,7 +28,7 @@
.module('vnfmarket')
.controller('lifeCycleCtrl', lifeCycle);
- lifeCycle.$inject = [ 'vnfConfig', 'baseUrlConfig'];
+ lifeCycle.$inject = ['vnfConfig', 'baseUrlConfig'];
/*
* recommend
@@ -51,7 +51,7 @@
vm.pagination = [5, 10, 15, {
label: 'All',
- value: function() {
+ value: function () {
return vm.lifeCycleTests.length ? vm.lifeCycleTests.length : 0;
}
}];
@@ -73,23 +73,23 @@
limitSelect: true,
pageSelect: true
};
- vm.getTests = function(){
+ vm.getTests = function () {
console.log(vm.lifeCycleTests)
}
- vm.lifeCycleTests = [{
- "step" : "Lifecycle step-1",
- "parameter" : "Lifecycle Parameter1",
- "result" : "pass"
- },
- {
- "step" : "Lifecycle step-2",
- "parameter" : "Lifecycle Parameter2",
- "result" : "pass"
- },{
- "step" : "Lifecycle step-3",
- "parameter" : "Parameter3",
- "result" : "pass"
- }]
+ vm.lifeCycleTests = [{
+ "step": "Lifecycle step-1",
+ "parameter": "Lifecycle Parameter1",
+ "result": "pass"
+ },
+ {
+ "step": "Lifecycle step-2",
+ "parameter": "Lifecycle Parameter2",
+ "result": "pass"
+ }, {
+ "step": "Lifecycle step-3",
+ "parameter": "Parameter3",
+ "result": "pass"
+ }]
}
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/view.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/view.html
index 5759ceb0..c767a05b 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/view.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/lifeCycle/view.html
@@ -1,42 +1,44 @@
<div class="">
-<md-card flex="100" class="nomargin">
+ <md-card flex="100" class="nomargin">
<md-table-container>
<table md-table>
<thead md-head md-order="vm.filter.name" md-on-reorder="vm.getTests">
<tr md-row>
- <th md-column class="fontSize" md-order-by="step">
- <md-tooltip md-direction="top">{{'common.tabs.validation.stepTHead' | translate}}</md-tooltip>
+ <th md-column class="fontSize" md-order-by="step">
+ <md-tooltip md-direction="top">{{'common.tabs.validation.stepTHead' | translate}}</md-tooltip>
{{'common.tabs.validation.stepTHead' | translate}}
</th>
- <th md-column class="fontSize" md-order-by="parameter">
- <md-tooltip md-direction="top">{{'common.tabs.validation.ParamTHead' | translate}}</md-tooltip>
+ <th md-column class="fontSize" md-order-by="parameter">
+ <md-tooltip md-direction="top">{{'common.tabs.validation.ParamTHead' | translate}}</md-tooltip>
{{'common.tabs.validation.ParamTHead' | translate}}
</th>
- <th md-column class="fontSize" md-order-by="result">
- <md-tooltip md-direction="top">{{'common.tabs.validation.ResultTHead' | translate}}</md-tooltip>
+ <th md-column class="fontSize" md-order-by="result">
+ <md-tooltip md-direction="top">{{'common.tabs.validation.ResultTHead' | translate}}</md-tooltip>
{{'common.tabs.validation.ResultTHead' | translate}}
</th>
-
+
</tr>
</thead>
<tbody md-body>
<tr md-row md-select="dessert" md-select-id="name" md-auto-select ng-repeat="test in vm.lifeCycleTests | orderBy: vm.filter.name |
limitTo: vm.paginationQuery.limit: (vm.paginationQuery.page - 1) * vm.paginationQuery.limit track by $index">
<td md-cell>
- <md-tooltip md-direction="top">{{test.step}}</md-tooltip>{{test.step}}
+ <md-tooltip md-direction="top">{{test.step}}</md-tooltip>{{test.step}}
</td>
<td md-cell>
- <md-tooltip md-direction="top">{{test.parameter}}</md-tooltip>{{test.parameter}}
+ <md-tooltip md-direction="top">{{test.parameter}}</md-tooltip>{{test.parameter}}
</td>
<td md-cell>
- <md-tooltip md-direction="top">{{test.result}}</md-tooltip>{{test.result}}
+ <md-tooltip md-direction="top">{{test.result}}</md-tooltip>{{test.result}}
</td>
-
+
</tr>
</tbody>
</table>
</md-table-container>
- <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page" md-total="{{vm.lifeCycleTests.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink" md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
-</md-card>
-</div>
+ <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page"
+ md-total="{{vm.lifeCycleTests.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink"
+ md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
+ </md-card>
+</div> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails-test.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails-test.js
index 0c6edc27..d5c0038d 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails-test.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails-test.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -24,7 +24,7 @@
* Test of the app
*/
- describe('Home - serviceDetailsCtrl', function() {
+ describe('Home - serviceDetailsCtrl', function () {
var controller = null,
$scope = null,
$location, stateParams, httpBackend, config, state, blah;
@@ -46,14 +46,14 @@
"remarks": ""
};
- beforeEach(function() {
+ beforeEach(function () {
module('vnfmarket');
});
beforeEach(module('ui.router'));
beforeEach(module('md.data.table'));
beforeEach(module('pascalprecht.translate'));
- beforeEach(inject(function($controller, $rootScope, $stateParams, $httpBackend, vnfConfig) {
+ beforeEach(inject(function ($controller, $rootScope, $stateParams, $httpBackend, vnfConfig) {
$scope = $rootScope.$new();
stateParams = $stateParams;
httpBackend = $httpBackend;
@@ -64,26 +64,26 @@
});
}));
- it('Should serviceDetailsCtrl must be defined', function() {
+ it('Should serviceDetailsCtrl must be defined', function () {
expect(controller).toBeDefined();
});
- it('Receving state param service details', function() {
- expect(stateParams.serviceDetails.csarId).toBeDefined();
- expect(stateParams.serviceDetails.name).toBeDefined();
- expect(stateParams.serviceDetails.downloadUri).toBeDefined();
- expect(stateParams.serviceDetails.report).toBeDefined();
- expect(stateParams.serviceDetails.size).toBeDefined();
- expect(stateParams.serviceDetails.version).toBeDefined();
- expect(stateParams.serviceDetails.provider).toBeDefined();
- expect(stateParams.serviceDetails.type).toBeDefined();
- expect(stateParams.serviceDetails.format).toBeDefined();
- expect(stateParams.serviceDetails.deletionPending).toBeDefined();
- expect(stateParams.serviceDetails.createTime).toBeDefined();
- expect(stateParams.serviceDetails.modifyTime).toBeDefined();
- expect(stateParams.serviceDetails.shortDesc).toBeDefined();
- expect(stateParams.serviceDetails.details).toBeDefined();
- expect(stateParams.serviceDetails.remarks).toBeDefined();
+ it('Receving state param service details', function () {
+ expect(stateParams.serviceDetails.csarId).toBeDefined();
+ expect(stateParams.serviceDetails.name).toBeDefined();
+ expect(stateParams.serviceDetails.downloadUri).toBeDefined();
+ expect(stateParams.serviceDetails.report).toBeDefined();
+ expect(stateParams.serviceDetails.size).toBeDefined();
+ expect(stateParams.serviceDetails.version).toBeDefined();
+ expect(stateParams.serviceDetails.provider).toBeDefined();
+ expect(stateParams.serviceDetails.type).toBeDefined();
+ expect(stateParams.serviceDetails.format).toBeDefined();
+ expect(stateParams.serviceDetails.deletionPending).toBeDefined();
+ expect(stateParams.serviceDetails.createTime).toBeDefined();
+ expect(stateParams.serviceDetails.modifyTime).toBeDefined();
+ expect(stateParams.serviceDetails.shortDesc).toBeDefined();
+ expect(stateParams.serviceDetails.details).toBeDefined();
+ expect(stateParams.serviceDetails.remarks).toBeDefined();
});
});
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails.html
index e44dfbef..e21c3cd8 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetails.html
@@ -19,23 +19,29 @@
<div class=" md-padding layout-row">
<div class="flex-50">
<div class="md-title fontSize md-padding gridServiceTitle">{{vm.service.name}}</div>
- <div class="md-padding">{{vm.service.details}}</div>
+ <div class="md-padding">{{vm.service.details}}</div>
</div>
- <div class="flex-50">
- <div class=" md-padding layout-row" id="rightFlex">
- <div class="flex-70" id="childLeftFlex">
- <span class="md-subhead gridBottomFonts ng-binding">{{'module.marketplace.serviceDetails.info.typeLbl' | translate}} :</span><br>
- <span class="md-subhead gridBottomFonts ng-binding">{{'module.marketplace.serviceDetails.info.createLbl' | translate}} :</span><br>
- <span class="md-subhead gridBottomFonts ng-binding">{{'module.marketplace.serviceDetails.info.modLbl' | translate}} :</span><br>
- </div>
- <div class="flex-30" id="childRightFlex">
- <span class="md-padding">{{vm.service.type}}</span><br>
- <span class="md-padding">{{vm.service.createTime | date:'yyyy-MM-dd h:mm a'}}</span><br>
- <span class="md-padding">{{vm.service.modifyTime | date:'yyyy-MM-dd h:mm a'}}</span><br>
- </div>
+ <div class="flex-50">
+ <div class=" md-padding layout-row" id="rightFlex">
+ <div class="flex-70" id="childLeftFlex">
+ <span class="md-subhead gridBottomFonts ng-binding">{{'module.marketplace.serviceDetails.info.typeLbl' | translate}} :</span>
+ <br>
+ <span class="md-subhead gridBottomFonts ng-binding">{{'module.marketplace.serviceDetails.info.createLbl' | translate}} :</span>
+ <br>
+ <span class="md-subhead gridBottomFonts ng-binding">{{'module.marketplace.serviceDetails.info.modLbl' | translate}} :</span>
+ <br>
+ </div>
+ <div class="flex-30" id="childRightFlex">
+ <span class="md-padding">{{vm.service.type}}</span>
+ <br>
+ <span class="md-padding">{{vm.service.createTime | date:'yyyy-MM-dd h:mm a'}}</span>
+ <br>
+ <span class="md-padding">{{vm.service.modifyTime | date:'yyyy-MM-dd h:mm a'}}</span>
+ <br>
</div>
</div>
+ </div>
</div>
<div class="md-toolbar-tools flex-md-50 flex-sm-100" id="buttonsbar">
@@ -69,18 +75,20 @@
</main>
<md-content class="md-padding backgroundWhite">
- <div class="md-padding">
- <div class="md-title fontSize paddingBottom">{{'module.marketplace.serviceDetails.info.reportTitle' | translate}}</div>
- <nav class="navbar nomargin" id="detailsTabs">
- <div class="container-fluid nopadding">
- <ul class="nav navbar-nav">
- <li ui-sref-active="active " class="fontSize md-title" ng-class="vm.active == 'validation'? 'active' : ''"><a ng-click="vm.navigateValidation()">{{'module.marketplace.serviceDetails.tabs.validationTabTitle' | translate}}</a></li>
- <!--<li ui-sref-active="active " class=" fontSize md-title" ng-class="vm.active == 'lifeCycle'? 'active' : ''"><a ng-click="vm.navigateLifecycle()">{{'module.marketplace.serviceDetails.tabs.lifecycleTabTitle' | translate}}</a></li>
+ <div class="md-padding">
+ <div class="md-title fontSize paddingBottom">{{'module.marketplace.serviceDetails.info.reportTitle' | translate}}</div>
+ <nav class="navbar nomargin" id="detailsTabs">
+ <div class="container-fluid nopadding">
+ <ul class="nav navbar-nav">
+ <li ui-sref-active="active " class="fontSize md-title" ng-class="vm.active == 'validation'? 'active' : ''">
+ <a ng-click="vm.navigateValidation()">{{'module.marketplace.serviceDetails.tabs.validationTabTitle' | translate}}</a>
+ </li>
+ <!--<li ui-sref-active="active " class=" fontSize md-title" ng-class="vm.active == 'lifeCycle'? 'active' : ''"><a ng-click="vm.navigateLifecycle()">{{'module.marketplace.serviceDetails.tabs.lifecycleTabTitle' | translate}}</a></li>
<li ui-sref-active="active " class=" fontSize md-title" ng-class="vm.active == 'functionalTest'? 'active' : ''"><a ng-click="vm.navigationFunctionalTest()">{{'module.marketplace.serviceDetails.tabs.functionalTabTitle' | translate}}</a></li>-->
- </ul>
- </div>
- </nav>
- <ui-view></ui-view>
- </div>
+ </ul>
+ </div>
+ </nav>
+ <ui-view></ui-view>
+ </div>
</md-content>
</md-card> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsCtrl.js
index 466ab412..2a739a04 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -39,68 +39,68 @@
function ServiceDetail(serviceDetailsService, $state, $stateParams, vnfConfig, homeService, baseUrlConfig) {
var vm = this;
vm.index = 0;
- vm.active = 'validation';
+ vm.active = 'validation';
if (!$stateParams.serviceDetails) {
$state.go('home.marketplace');
return;
}
vm.service = $stateParams.serviceDetails;
- //ses vm.service.funcTestReportUrl = baseUrlConfig.common.ip + ":" + baseUrlConfig.common.port + vm.service.report;
- vm.service.funcTestReportUrl = vm.service.report;
+ //ses vm.service.funcTestReportUrl = baseUrlConfig.common.ip + ":" + baseUrlConfig.common.port + vm.service.report;
+ vm.service.funcTestReportUrl = vm.service.report;
- vm.downloadService = function(csarId) {
- homeService.updateDownloadCount(csarId).then(function(response){
+ vm.downloadService = function (csarId) {
+ homeService.updateDownloadCount(csarId).then(function (response) {
homeService.downloadServiceFile(csarId);
})
}
- vm.onDeleteCompletion = function() {
+ vm.onDeleteCompletion = function () {
$state.go('home.marketplace', {}, {
reload: true
});
}
- vm.serviceDelete = function(serviceDetails) {
+ vm.serviceDelete = function (serviceDetails) {
homeService.openDeleteDialog(serviceDetails, vm.onDeleteCompletion);
};
-
- vm.navigateValidation = function() {
- vm.active = 'validation';
+
+ vm.navigateValidation = function () {
+ vm.active = 'validation';
$state.go('home.serviceDetails.validation');
};
-
- vm.navigateLifecycle = function() {
- vm.active = 'lifeCycle';
+
+ vm.navigateLifecycle = function () {
+ vm.active = 'lifeCycle';
$state.go('home.serviceDetails.lifeCycle');
};
-
- vm.navigationFunctionalTest = function() {
- vm.active = 'functionTest';
+
+ vm.navigationFunctionalTest = function () {
+ vm.active = 'functionTest';
$state.go('home.serviceDetails.functionTest', {
- csarId: vm.service.csarId
- });
+ csarId: vm.service.csarId
+ });
};
- vm.navigateTab = function(sref, index) {
+ vm.navigateTab = function (sref, index) {
$state.go(sref);
vm.index = index;
};
-
- vm.reupload = function(isUpload, csarId){
- homeService.openUploadDialog(null, isUpload, csarId);
- }
- if(!$state.current.name.startsWith("home.serviceDetails.")){
- $state.go('home.serviceDetails.validation');
- } else {
- if($state.current.name.endsWith("validation")){
- vm.active = 'validation';
- } else if ($state.current.name.endsWith("lifeCycle")){
- vm.active = 'lifeCycle';
- } else if($state.current.name.endsWith("functionTest")){
- vm.active = 'functionalTest';
- }
- }
+ vm.reupload = function (isUpload, csarId) {
+ homeService.openUploadDialog(null, isUpload, csarId);
+ }
+
+ if (!$state.current.name.startsWith("home.serviceDetails.")) {
+ $state.go('home.serviceDetails.validation');
+ } else {
+ if ($state.current.name.endsWith("validation")) {
+ vm.active = 'validation';
+ } else if ($state.current.name.endsWith("lifeCycle")) {
+ vm.active = 'lifeCycle';
+ } else if ($state.current.name.endsWith("functionTest")) {
+ vm.active = 'functionalTest';
+ }
+ }
}
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsService.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsService.js
index e59ef49b..a0ee1d2e 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsService.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/serviceDetailsService.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -42,9 +42,9 @@
var defer = $q.defer()
httpService.apiRequest(url, method)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/validationCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/validationCtrl.js
index 978e6aed..04839161 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/validationCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/validationCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -28,7 +28,7 @@
.module('vnfmarket')
.controller('validationCtrl', validation);
- validation.$inject = [ 'vnfConfig', 'baseUrlConfig'];
+ validation.$inject = ['vnfConfig', 'baseUrlConfig'];
/*
* recommend
@@ -51,7 +51,7 @@
vm.pagination = [5, 10, 15, {
label: 'All',
- value: function() {
+ value: function () {
return vm.validations.length ? vm.validations.length : 0;
}
}];
@@ -73,23 +73,23 @@
limitSelect: true,
pageSelect: true
};
- vm.getValidations = function(){
+ vm.getValidations = function () {
console.log(vm.validations)
}
- vm.validations = [{
- "step" : "Validation step-1",
- "parameter" : "Validation Parameter1",
- "result" : "pass"
- },
- {
- "step" : "Validation step-2",
- "parameter" : "Validation Parameter2",
- "result" : "pass"
- },{
- "step" : "Validation step-3",
- "parameter" : "Validation Parameter3",
- "result" : "pass"
- }];
+ vm.validations = [{
+ "step": "Validation step-1",
+ "parameter": "Validation Parameter1",
+ "result": "pass"
+ },
+ {
+ "step": "Validation step-2",
+ "parameter": "Validation Parameter2",
+ "result": "pass"
+ }, {
+ "step": "Validation step-3",
+ "parameter": "Validation Parameter3",
+ "result": "pass"
+ }];
}
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/view.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/view.html
index a90e1113..5a3d45ff 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/view.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceDetails/validation/view.html
@@ -1,42 +1,44 @@
<div class="">
-<md-card flex="100" class="nomargin">
+ <md-card flex="100" class="nomargin">
<md-table-container>
<table md-table>
<thead md-head md-order="vm.filter.name" md-on-reorder="vm.getValidations">
<tr md-row>
- <th md-column class="fontSize" md-order-by="step">
+ <th md-column class="fontSize" md-order-by="step">
<md-tooltip md-direction="top">{{'common.tabs.validation.stepTHead' | translate}}</md-tooltip>
{{'common.tabs.validation.stepTHead' | translate}}
</th>
- <th md-column class="fontSize" md-order-by="parameter">
+ <th md-column class="fontSize" md-order-by="parameter">
<md-tooltip md-direction="top">{{'common.tabs.validation.ParamTHead' | translate}}</md-tooltip>
{{'common.tabs.validation.ParamTHead' | translate}}
</th>
- <th md-column class="fontSize" md-order-by="result">
+ <th md-column class="fontSize" md-order-by="result">
<md-tooltip md-direction="top">{{'common.tabs.validation.ResultTHead' | translate}}</md-tooltip>
{{'common.tabs.validation.ResultTHead' | translate}}
</th>
-
+
</tr>
</thead>
<tbody md-body>
<tr md-row md-select="dessert" md-select-id="name" md-auto-select ng-repeat="validation in vm.validations | orderBy: vm.filter.name |
limitTo: vm.paginationQuery.limit: (vm.paginationQuery.page - 1) * vm.paginationQuery.limit track by $index">
<td md-cell>
- <md-tooltip md-direction="top">{{validation.step}}</md-tooltip>{{validation.step}}
+ <md-tooltip md-direction="top">{{validation.step}}</md-tooltip>{{validation.step}}
</td>
<td md-cell>
- <md-tooltip md-direction="top">{{validation.parameter}}</md-tooltip>{{validation.parameter}}
+ <md-tooltip md-direction="top">{{validation.parameter}}</md-tooltip>{{validation.parameter}}
</td>
<td md-cell>
- <md-tooltip md-direction="top">{{validation.result}}</md-tooltip>{{validation.result}}
+ <md-tooltip md-direction="top">{{validation.result}}</md-tooltip>{{validation.result}}
</td>
-
+
</tr>
</tbody>
</table>
</md-table-container>
- <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page" md-total="{{vm.validations.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink" md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
-</md-card>
-</div>
+ <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page"
+ md-total="{{vm.validations.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink"
+ md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
+ </md-card>
+</div> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/functionalTestCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/functionalTestCtrl.js
index a9d12db3..709ceb2c 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/functionalTestCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/functionalTestCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -24,11 +24,9 @@
* Controller of the app
*/
- angular
- .module('vnfmarket')
- .controller('functionalTestOnboardingCtrl', functionalTest);
+ angular.module('vnfmarket').controller('functionalTestOnboardingCtrl', functionalTest);
- functionalTest.$inject = [ 'vnfConfig', 'baseUrlConfig', '$mdDialog', 'functionalTestService', '$stateParams'];
+ functionalTest.$inject = ['vnfConfig', 'baseUrlConfig', '$mdDialog', 'functionalTestService', '$stateParams'];
/*
* recommend
@@ -36,9 +34,9 @@
* and bindable members up top.
*/
- function functionalTest(vnfConfig, baseUrlConfig, $mdDialog, functionalTestService,$stateParams) {
+ function functionalTest(vnfConfig, baseUrlConfig, $mdDialog, functionalTestService, $stateParams) {
var vm = this;
- vm.csarId = $stateParams.csarId;
+ vm.csarId = $stateParams.csarId;
console.log("functionalTest")
vm.filter = {
"search": '',
@@ -51,7 +49,7 @@
vm.pagination = [5, 10, 15, {
label: 'All',
- value: function() {
+ value: function () {
return vm.validations.length ? vm.validations.length : 0;
}
}];
@@ -73,26 +71,26 @@
limitSelect: true,
pageSelect: true
};
- vm.getvalidations = function(){
+ vm.getvalidations = function () {
console.log(vm.functionalTests)
}
-
-
- vm.hide = function(answer) {
+
+
+ vm.hide = function (answer) {
$mdDialog.hide(answer);
};
-
-
- vm.getFunctionTestDetails = function() {
- functionalTestService.getFunctionTestDetails(vm.csarId).then(function(response){
- vm.validations = response.data;
- })
- }
-
- vm.getFunctionTestDetails();
-
- vm.cancel = function() {
+
+
+ vm.getFunctionTestDetails = function () {
+ functionalTestService.getFunctionTestDetails(vm.csarId).then(function (response) {
+ vm.validations = response.data;
+ })
+ }
+
+ vm.getFunctionTestDetails();
+
+ vm.cancel = function () {
$mdDialog.cancel();
};
}
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/view.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/view.html
index 7a626ff6..b251f2ab 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/view.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/functionalTest/view.html
@@ -4,24 +4,24 @@
<h2>{{'common.tabs.functionTest.title' | translate}}</h2>
<span flex></span>
<button class="btnTransparency" ng-click="vm.cancel()">
- <i class="fa fa-close fa-sm" aria-hidden="true"></i>
+ <i class="fa fa-close fa-sm" aria-hidden="true"></i>
</button>
</div>
</md-toolbar>
<br>
<div>
- <!-- <img src="../../../../../common/images/floating-layer-function.png">-->
+ <!-- <img src="../../../../../common/images/floating-layer-function.png">-->
<img src="/onapui/vnfmarket/common/images/floating_layer_function.png" width="100%" height="40%">
</div>
<br>
-<md-card flex="100" class="nomargin md-padding">
+ <md-card flex="100" class="nomargin md-padding">
<md-table-container>
<table md-table>
<thead md-head md-order="vm.filter.name" md-on-reorder="vm.getValidations">
<tr md-row>
- <th md-column class="fontSize" md-order-by="testCase">
+ <th md-column class="fontSize" md-order-by="testCase">
<md-tooltip md-direction="top">{{'common.tabs.functionTest.testTHead' | translate}} </md-tooltip>
{{'common.tabs.functionTest.testTHead' | translate}}
</th>
@@ -29,15 +29,15 @@
<md-tooltip md-direction="top">{{'common.tabs.functionTest.descTHead' | translate}} </md-tooltip>
{{'common.tabs.functionTest.descTHead' | translate}}
</th>
- <th md-column class="fontSize" md-order-by="testResult">
+ <th md-column class="fontSize" md-order-by="testResult">
<md-tooltip md-direction="top">{{'common.tabs.functionTest.resultTHead' | translate}} </md-tooltip>
{{'common.tabs.functionTest.resultTHead' | translate}}
</th>
-
+
</tr>
</thead>
<tbody md-body>
- <tr md-row ng-repeat="validation in vm.validations | orderBy: vm.filter.name |
+ <tr md-row ng-repeat="validation in vm.validations | orderBy: vm.filter.name |
limitTo: vm.paginationQuery.limit: (vm.paginationQuery.page - 1) * vm.paginationQuery.limit track by $index">
<td md-cell class="">
<md-tooltip md-direction="top">{{validation.name}}</md-tooltip>{{validation.name}}
@@ -49,11 +49,13 @@
<td md-cell class="">
<md-tooltip md-direction="top">{{validation.status}}</md-tooltip>{{validation.status}}
</td>
-
+
</tr>
</tbody>
</table>
</md-table-container>
- <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page" md-total="{{vm.validations.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink" md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
-</md-card>
+ <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page"
+ md-total="{{vm.validations.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink"
+ md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
+ </md-card>
</md-dialog> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/lifeCycleCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/lifeCycleCtrl.js
index 60f9e3fd..715ca31b 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/lifeCycleCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/lifeCycleCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -28,7 +28,7 @@
.module('vnfmarket')
.controller('lifeCycleOnboardingCtrl', lifeCycle);
- lifeCycle.$inject = [ 'vnfConfig', 'baseUrlConfig', '$mdDialog'];
+ lifeCycle.$inject = ['vnfConfig', 'baseUrlConfig', '$mdDialog'];
/*
* recommend
@@ -36,7 +36,7 @@
* and bindable members up top.
*/
- function lifeCycle(vnfConfig, baseUrlConfig,$mdDialog) {
+ function lifeCycle(vnfConfig, baseUrlConfig, $mdDialog) {
var vm = this;
console.log("functionalTest")
vm.filter = {
@@ -50,7 +50,7 @@
vm.pagination = [5, 10, 15, {
label: 'All',
- value: function() {
+ value: function () {
return vm.lifeCycleTests.length ? vm.lifeCycleTests.length : 0;
}
}];
@@ -72,32 +72,32 @@
limitSelect: true,
pageSelect: true
};
- vm.getTests = function(){
+ vm.getTests = function () {
console.log(vm.lifeCycleTests)
}
-
-
- vm.hide = function(answer) {
+
+
+ vm.hide = function (answer) {
$mdDialog.hide(answer);
};
- vm.cancel = function() {
+ vm.cancel = function () {
$mdDialog.cancel();
};
- vm.lifeCycleTests = [{
- "step" : "Lifecycle step-1",
- "parameter" : "Lifecycle Parameter1",
- "result" : "pass"
- },
- {
- "step" : "Lifecycle step-2",
- "parameter" : "Lifecycle Parameter2",
- "result" : "pass"
- },{
- "step" : "Lifecycle step-3",
- "parameter" : "Parameter3",
- "result" : "pass"
- }]
+ vm.lifeCycleTests = [{
+ "step": "Lifecycle step-1",
+ "parameter": "Lifecycle Parameter1",
+ "result": "pass"
+ },
+ {
+ "step": "Lifecycle step-2",
+ "parameter": "Lifecycle Parameter2",
+ "result": "pass"
+ }, {
+ "step": "Lifecycle step-3",
+ "parameter": "Parameter3",
+ "result": "pass"
+ }]
}
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/view.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/view.html
index e74436f3..692e78e5 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/view.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/lifeCycle/view.html
@@ -4,48 +4,50 @@
<h2>{{'common.tabs.lifeCycle.title' | translate}}</h2>
<span flex></span>
<button class="btnTransparency" ng-click="vm.cancel()">
- <i class="fa fa-close fa-sm" aria-hidden="true"></i>
+ <i class="fa fa-close fa-sm" aria-hidden="true"></i>
</button>
</div>
</md-toolbar>
-
-<md-card flex="100" class="nomargin md-padding">
+
+ <md-card flex="100" class="nomargin md-padding">
<md-table-container>
<table md-table>
<thead md-head md-order="vm.filter.name" md-on-reorder="vm.getTests">
<tr md-row>
- <th md-column class="fontSize" md-order-by="step">
- <md-tooltip md-direction="top">{{'common.tabs.lifeCycle.stepTHead' | translate}}</md-tooltip>
+ <th md-column class="fontSize" md-order-by="step">
+ <md-tooltip md-direction="top">{{'common.tabs.lifeCycle.stepTHead' | translate}}</md-tooltip>
{{'common.tabs.lifeCycle.stepTHead' | translate}}
</th>
- <th md-column class="fontSize" md-order-by="parameter">
- <md-tooltip md-direction="top">{{'common.tabs.lifeCycle.ParamTHead' | translate}}</md-tooltip>
+ <th md-column class="fontSize" md-order-by="parameter">
+ <md-tooltip md-direction="top">{{'common.tabs.lifeCycle.ParamTHead' | translate}}</md-tooltip>
{{'common.tabs.lifeCycle.ParamTHead' | translate}}
</th>
- <th md-column class="fontSize" md-order-by="result">
- <md-tooltip md-direction="top">{{'common.tabs.lifeCycle.ResultTHead' | translate}}</md-tooltip>
+ <th md-column class="fontSize" md-order-by="result">
+ <md-tooltip md-direction="top">{{'common.tabs.lifeCycle.ResultTHead' | translate}}</md-tooltip>
{{'common.tabs.lifeCycle.ResultTHead' | translate}}
</th>
-
+
</tr>
</thead>
<tbody md-body>
<tr md-row md-select="dessert" md-select-id="name" md-auto-select ng-repeat="test in vm.lifeCycleTests | orderBy: vm.filter.name |
limitTo: vm.paginationQuery.limit: (vm.paginationQuery.page - 1) * vm.paginationQuery.limit track by $index">
<td md-cell>
- <md-tooltip md-direction="top">{{test.step}}</md-tooltip>{{test.step}}
+ <md-tooltip md-direction="top">{{test.step}}</md-tooltip>{{test.step}}
</td>
<td md-cell>
- <md-tooltip md-direction="top">{{test.parameter}}</md-tooltip>{{test.parameter}}
+ <md-tooltip md-direction="top">{{test.parameter}}</md-tooltip>{{test.parameter}}
</td>
<td md-cell>
- <md-tooltip md-direction="top">{{test.result}}</md-tooltip>{{test.result}}
+ <md-tooltip md-direction="top">{{test.result}}</md-tooltip>{{test.result}}
</td>
-
+
</tr>
</tbody>
</table>
</md-table-container>
- <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page" md-total="{{vm.lifeCycleTests.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink" md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
-</md-card>
+ <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page"
+ md-total="{{vm.lifeCycleTests.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink"
+ md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
+ </md-card>
</md-dialog> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onBoardingService.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onBoardingService.js
index b73cd5a7..abc788c3 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onBoardingService.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onBoardingService.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -40,8 +40,8 @@
method = vnfConfig.api.home.getFunctionalList.method;
url = url.replace(":csarId", csarId);
- url += "?operTypeId="+operTypeId;
- url += "&operId="+operId;
+ url += "?operTypeId=" + operTypeId;
+ url += "&operId=" + operId;
/*var response =
@@ -73,9 +73,9 @@
//defer.resolve(response);
httpService.apiRequest(url, method)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
@@ -144,9 +144,9 @@
httpService.apiRequest(url, method)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.html
index 57e65451..040b2e45 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.html
@@ -7,7 +7,9 @@
<div class="layout-row onboardProgress">
<div class="flex-100 progress1">
<div class="progressDiv"></div>
- <div class="roundProg"><span>1</span></div>
+ <div class="roundProg">
+ <span>1</span>
+ </div>
</div>
<!-- <div class="flex-33 progress2">
<div class="progressDiv"></div>
@@ -23,7 +25,7 @@
<div class="onbdContent">
<div class="onboarddiv">
<div class="btnOuter">
- <div class="onboardBtn btnImage1" type="button" aria-label="Eat cake" ng-click="vm.displayValidationDialog()">
+ <div class="onboardBtn btnImage1" type="button" aria-label="Eat cake" ng-click="vm.displayValidationDialog()">
</div>
</div>
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.js
index c2c735be..1d690847 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboarding.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -28,7 +28,7 @@
.module('vnfmarket')
.controller('onBoardingCtrl', onBoarding);
- onBoarding.$inject = [ 'vnfConfig', 'baseUrlConfig', '$interval', '$timeout', '$state', '$mdDialog', '$stateParams', 'onBoardingService'];
+ onBoarding.$inject = ['vnfConfig', 'baseUrlConfig', '$interval', '$timeout', '$state', '$mdDialog', '$stateParams', 'onBoardingService'];
/*
* recommend
@@ -50,36 +50,36 @@
$(".onboardProgress .progress3 .progressDiv").removeClass("progressed");
$(".onboardProgress .progress3 .roundProg").removeClass("progressed");
- var fileName = $stateParams.csarName
-
- vm.mainTitle = fileName.slice(0, fileName.lastIndexOf("."));
+ var fileName = $stateParams.csarName;
+
+ vm.mainTitle = fileName ? fileName.slice(0, fileName.lastIndexOf(".")) : '';
//vm.mainTitle = $stateParams.csarName;//"clearwater_ns";
var csarId = $stateParams.csarId;
- if(!csarId) {
+ if (!csarId) {
$state.go("home.marketplace", {});
- return;
+ return;
}
/*onBoardingService.getFunctionalList(csarId).then(function(response) {
vm.functionalDataList = response.data;
});*/
- vm.getIconClass = function(status) {
+ vm.getIconClass = function (status) {
var classIcon = "";
- if(status == undefined || status == 1) {
+ if (status == undefined || status == 1) {
//classIcon = "fa fa-clock-o";
classIcon = "clock-icon";
}
- else if(status == 2) {
+ else if (status == 2) {
//classIcon = "fa fa-spinner fa-spin";
classIcon = "progress-icon fa-spin";
}
- else if(status == 0) {
+ else if (status == 0) {
//classIcon = "fa fa-check-circle";
classIcon = "success-icon";
}
- else if(status == -1) {
+ else if (status == -1) {
classIcon = "failed-icon fa fa-exclamation";
}
return classIcon;
@@ -90,11 +90,11 @@
vm.functional = [];
var currentIteration = {};
- onBoardingService.getOnBoardingSteps().then(function(response) {
+ onBoardingService.getOnBoardingSteps().then(function (response) {
var operTypeList = response.data.operTypeList;
- for(var i = 0; i < operTypeList.length; i++) {
-
+ for (var i = 0; i < operTypeList.length; i++) {
+
switch (operTypeList[i].operTypeId) {
case "validation":
vm.validation = operTypeList[i];
@@ -110,13 +110,13 @@
break;
}
}
- currentIteration = {"list":vm.validation, "item":0};
+ currentIteration = { "list": vm.validation, "item": 0 };
updateStepStatus();
});
function addDefaultStatus(listArr) {
- for(var index = 0; index < listArr.oper.length; index++) {
+ for (var index = 0; index < listArr.oper.length; index++) {
listArr.oper[index].status = 1;
}
}
@@ -132,7 +132,7 @@
var operTypeId = currentIteration.list["operTypeId"];
var operId = currentIteration.list.oper[currentIteration.item].operId;
- if(operTypeId == "validation" || operTypeId == "lifecycletest") {
+ if (operTypeId == "validation" || operTypeId == "lifecycletest") {
updateView(0);
}
else {
@@ -150,15 +150,15 @@
function updateView(stepStatus) {
var listIterFinished = false;
- if(stepStatus == 0) {
+ if (stepStatus == 0) {
currentIteration.list.oper[currentIteration.item].status = stepStatus;
//Success, go to next step
- if(currentIteration.list.oper.length - 1 > currentIteration.item) {
+ if (currentIteration.list.oper.length - 1 > currentIteration.item) {
currentIteration.item++;
}
else {
//Choose next list
- if(currentIteration.list == vm.validation){
+ if (currentIteration.list == vm.validation) {
//First list is completed
$(".onboardProgress .progress1 .progressDiv").addClass("progressed");
$(".onboardProgress .progress1 .roundProg").addClass("progressed");
@@ -166,7 +166,7 @@
currentIteration.item = 0*/
listIterFinished = true;
- $state.go('home.onboardingSuccess', {"csarId": csarId});
+ $state.go('home.onboardingSuccess', { "csarId": csarId });
}
/*else if(currentIteration.list == vm.lifeCycle){
//Second list is completed
@@ -185,55 +185,55 @@
}*/
}
}
- else if(stepStatus == -1) {
+ else if (stepStatus == -1) {
//Failed case
currentIteration.list.oper[currentIteration.item].status = stepStatus;
listIterFinished = true;
}
- if(!listIterFinished) {
+ if (!listIterFinished) {
updateStepStatus();
}
}
- vm.displayValidationDialog = function(){
- $mdDialog.show({
- controller: 'validationOnboardingCtrl',
- templateUrl: vnfConfig.modulePath.home + '/serviceUpload/onboarding/validation/view.html',
- controllerAs: 'vm'
- })
- .then(function(answer) {
- vm.getFeatureList();
- // vm.status = 'You said the information was "' + answer + '".';
- }, function() {
- // vm.status = 'You cancelled the dialog.';
- });
- }
- vm.displayLifecycleDialog = function(){
- $mdDialog.show({
- controller: 'lifeCycleOnboardingCtrl',
- templateUrl: vnfConfig.modulePath.home + '/serviceUpload/onboarding/lifeCycle/view.html',
- controllerAs: 'vm'
- })
- .then(function(answer) {
- vm.getFeatureList();
- // vm.status = 'You said the information was "' + answer + '".';
- }, function() {
- // vm.status = 'You cancelled the dialog.';
- });
- }
- vm.displayFunctionalTestDialog = function(){
- $mdDialog.show({
- controller: 'functionalTestOnboardingCtrl',
- templateUrl: vnfConfig.modulePath.home + '/serviceUpload/onboarding/functionalTest/view.html',
- controllerAs: 'vm'
- })
- .then(function(answer) {
- vm.getFeatureList();
- // vm.status = 'You said the information was "' + answer + '".';
- }, function() {
- // vm.status = 'You cancelled the dialog.';
- });
- }
+ vm.displayValidationDialog = function () {
+ $mdDialog.show({
+ controller: 'validationOnboardingCtrl',
+ templateUrl: vnfConfig.modulePath.home + '/serviceUpload/onboarding/validation/view.html',
+ controllerAs: 'vm'
+ })
+ .then(function (answer) {
+ vm.getFeatureList();
+ // vm.status = 'You said the information was "' + answer + '".';
+ }, function () {
+ // vm.status = 'You cancelled the dialog.';
+ });
+ }
+ vm.displayLifecycleDialog = function () {
+ $mdDialog.show({
+ controller: 'lifeCycleOnboardingCtrl',
+ templateUrl: vnfConfig.modulePath.home + '/serviceUpload/onboarding/lifeCycle/view.html',
+ controllerAs: 'vm'
+ })
+ .then(function (answer) {
+ vm.getFeatureList();
+ // vm.status = 'You said the information was "' + answer + '".';
+ }, function () {
+ // vm.status = 'You cancelled the dialog.';
+ });
+ }
+ vm.displayFunctionalTestDialog = function () {
+ $mdDialog.show({
+ controller: 'functionalTestOnboardingCtrl',
+ templateUrl: vnfConfig.modulePath.home + '/serviceUpload/onboarding/functionalTest/view.html',
+ controllerAs: 'vm'
+ })
+ .then(function (answer) {
+ vm.getFeatureList();
+ // vm.status = 'You said the information was "' + answer + '".';
+ }, function () {
+ // vm.status = 'You cancelled the dialog.';
+ });
+ }
}
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.html
index 0769f5b9..92fc87ee 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.html
@@ -15,7 +15,7 @@
</button>
</div>
<div>
- <a class="backLink" ng-click="vm.return()">{{'common.actions.backToList' | translate}}</a>
+ <a class="vnflink" ng-click="vm.return()">{{'common.actions.backToList' | translate}}</a>
</div>
</div>
</div> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.js
index 584237fc..47414995 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/onboardingSuccess.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -28,7 +28,7 @@
.module('vnfmarket')
.controller('onBoardingSuccessCtrl', onBoardingSuccess);
- onBoardingSuccess.$inject = [ 'vnfConfig', 'baseUrlConfig', 'homeService', '$state', '$stateParams'];
+ onBoardingSuccess.$inject = ['vnfConfig', 'baseUrlConfig', 'homeService', '$state', '$stateParams'];
/*
* recommend
@@ -39,36 +39,36 @@
function onBoardingSuccess(vnfConfig, baseUrlConfig, homeService, $state, $stateParams) {
var vm = this;
console.log("onBoardingSuccess");
- vm.services= [], vm.serviceDetails;
+ vm.services = [], vm.serviceDetails;
var csarId = $stateParams.csarId;
- if(!csarId) {
+ if (!csarId) {
$state.go("home.marketplace", {});
- return;
+ return;
}
- vm.return = function() {
+ vm.return = function () {
$state.go('home.marketplace', {}, {
reload: true
});
}
- vm.showDetailPage = function() {
- homeService.getFeaturesList().then(function(response) {
+ vm.showDetailPage = function () {
+ homeService.getFeaturesList().then(function (response) {
for (var i = 0; i < response.data.length; i++) {
response.data[i].createTime = new Date(response.data[i].createTime);
response.data[i].modifyTime = new Date(response.data[i].modifyTime);
}
vm.services = response.data;
- for(var j = 0; j < response.data.length; j++) {
- if(response.data[j].csarId == csarId) {
+ for (var j = 0; j < response.data.length; j++) {
+ if (response.data[j].csarId == csarId) {
vm.serviceDetails = response.data[j];
break;
}
}
$state.go("home.serviceDetails.validation", {
- serviceDetails : vm.serviceDetails
+ serviceDetails: vm.serviceDetails
});
});
}
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/validationCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/validationCtrl.js
index 6eb746e2..6937239f 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/validationCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/validationCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -28,7 +28,7 @@
.module('vnfmarket')
.controller('validationOnboardingCtrl', validation);
- validation.$inject = [ 'vnfConfig', 'baseUrlConfig', '$mdDialog'];
+ validation.$inject = ['vnfConfig', 'baseUrlConfig', '$mdDialog'];
/*
* recommend
@@ -50,7 +50,7 @@
vm.pagination = [5, 10, 15, {
label: 'All',
- value: function() {
+ value: function () {
return vm.validations.length ? vm.validations.length : 0;
}
}];
@@ -72,32 +72,32 @@
limitSelect: true,
pageSelect: true
};
- vm.getValidations = function(){
+ vm.getValidations = function () {
console.log(vm.validations)
}
-
-
- vm.hide = function(answer) {
+
+
+ vm.hide = function (answer) {
$mdDialog.hide(answer);
};
- vm.cancel = function() {
+ vm.cancel = function () {
$mdDialog.cancel();
};
- vm.validations = [{
- "step" : "Validation step-1",
- "parameter" : "Validation Parameter1",
- "result" : "pass"
- },
- {
- "step" : "Validation step-2",
- "parameter" : "Validation Parameter2",
- "result" : "pass"
- },{
- "step" : "Validation step-3",
- "parameter" : "Validation Parameter3",
- "result" : "pass"
- }];
+ vm.validations = [{
+ "step": "Validation step-1",
+ "parameter": "Validation Parameter1",
+ "result": "pass"
+ },
+ {
+ "step": "Validation step-2",
+ "parameter": "Validation Parameter2",
+ "result": "pass"
+ }, {
+ "step": "Validation step-3",
+ "parameter": "Validation Parameter3",
+ "result": "pass"
+ }];
}
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/view.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/view.html
index 0411b076..6cc2c75a 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/view.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/onboarding/validation/view.html
@@ -1,51 +1,53 @@
<md-dialog aria-label="Upload Service dialog" flex="80" id="uploadDialog" ng-cloak>
- <md-toolbar class="md-hue-3 dialogHeader">
- <div class="md-toolbar-tools">
- <h2>{{'common.tabs.validation.title' | translate}}</h2>
- <span flex></span>
- <button class="btnTransparency" ng-click="vm.cancel()">
- <i class="fa fa-close fa-sm" aria-hidden="true"></i>
- </button>
- </div>
- </md-toolbar>
+ <md-toolbar class="md-hue-3 dialogHeader">
+ <div class="md-toolbar-tools">
+ <h2>{{'common.tabs.validation.title' | translate}}</h2>
+ <span flex></span>
+ <button class="btnTransparency" ng-click="vm.cancel()">
+ <i class="fa fa-close fa-sm" aria-hidden="true"></i>
+ </button>
+ </div>
+ </md-toolbar>
<md-card flex="100" class="nomargin md-padding">
- <md-table-container>
- <table md-table>
- <thead md-head md-order="vm.filter.name" md-on-reorder="vm.getValidations">
- <tr md-row>
- <th md-column class="fontSize" md-order-by="step">
- <md-tooltip md-direction="top">{{'common.tabs.validation.stepTHead' | translate}}</md-tooltip>
- {{'common.tabs.validation.stepTHead' | translate}}
- </th>
- <th md-column class="fontSize" md-order-by="parameter">
- <md-tooltip md-direction="top">{{'common.tabs.validation.ParamTHead' | translate}}</md-tooltip>
- {{'common.tabs.validation.ParamTHead' | translate}}
- </th>
- <th md-column class="fontSize" md-order-by="result">
- <md-tooltip md-direction="top">{{'common.tabs.validation.ResultTHead' | translate}}</md-tooltip>
- {{'common.tabs.validation.ResultTHead' | translate}}
- </th>
-
- </tr>
- </thead>
- <tbody md-body>
- <tr md-row md-select="dessert" md-select-id="name" md-auto-select ng-repeat="validation in vm.validations | orderBy: vm.filter.name |
+ <md-table-container>
+ <table md-table>
+ <thead md-head md-order="vm.filter.name" md-on-reorder="vm.getValidations">
+ <tr md-row>
+ <th md-column class="fontSize" md-order-by="step">
+ <md-tooltip md-direction="top">{{'common.tabs.validation.stepTHead' | translate}}</md-tooltip>
+ {{'common.tabs.validation.stepTHead' | translate}}
+ </th>
+ <th md-column class="fontSize" md-order-by="parameter">
+ <md-tooltip md-direction="top">{{'common.tabs.validation.ParamTHead' | translate}}</md-tooltip>
+ {{'common.tabs.validation.ParamTHead' | translate}}
+ </th>
+ <th md-column class="fontSize" md-order-by="result">
+ <md-tooltip md-direction="top">{{'common.tabs.validation.ResultTHead' | translate}}</md-tooltip>
+ {{'common.tabs.validation.ResultTHead' | translate}}
+ </th>
+
+ </tr>
+ </thead>
+ <tbody md-body>
+ <tr md-row md-select="dessert" md-select-id="name" md-auto-select ng-repeat="validation in vm.validations | orderBy: vm.filter.name |
limitTo: vm.paginationQuery.limit: (vm.paginationQuery.page - 1) * vm.paginationQuery.limit track by $index">
- <td md-cell>
- <md-tooltip md-direction="top">{{validation.step}}</md-tooltip>{{validation.step}}
- </td>
- <td md-cell>
- <md-tooltip md-direction="top">{{validation.parameter}}</md-tooltip>{{validation.parameter}}
- </td>
- <td md-cell>
- <md-tooltip md-direction="top">{{validation.result}}</md-tooltip>{{validation.result}}
- </td>
-
- </tr>
- </tbody>
- </table>
- </md-table-container>
- <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page" md-total="{{vm.validations.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink" md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
+ <td md-cell>
+ <md-tooltip md-direction="top">{{validation.step}}</md-tooltip>{{validation.step}}
+ </td>
+ <td md-cell>
+ <md-tooltip md-direction="top">{{validation.parameter}}</md-tooltip>{{validation.parameter}}
+ </td>
+ <td md-cell>
+ <md-tooltip md-direction="top">{{validation.result}}</md-tooltip>{{validation.result}}
+ </td>
+
+ </tr>
+ </tbody>
+ </table>
+ </md-table-container>
+ <md-table-pagination class="pagination-class" md-limit="vm.paginationQuery.limit" md-limit-options="vm.pagination" md-page="vm.paginationQuery.page"
+ md-total="{{vm.validations.length}}" md-page-select="vm.paginationOptions.pageSelect" md-boundary-links="vm.paginationOptions.boundaryLink"
+ md-label="{ page : 'Page', RowPerPage:'row per page', of:'of'}"></md-table-pagination>
</md-card>
</md-dialog> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUpload.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUpload.html
index 2c813fb3..9c864f03 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUpload.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUpload.html
@@ -17,11 +17,11 @@
<md-toolbar class="md-hue-3 dialogHeader">
<div class="md-toolbar-tools" id="uploadStyle">
- <h2 ng-if="vm.isUpload" >{{'module.marketplace.serviceUpload.title' | translate}}</h2>
- <h2 ng-if="!vm.isUpload" >{{'module.marketplace.serviceUpload.updateTitle' | translate}}</h2>
+ <h2 ng-if="vm.isUpload">{{'module.marketplace.serviceUpload.title' | translate}}</h2>
+ <h2 ng-if="!vm.isUpload">{{'module.marketplace.serviceUpload.updateTitle' | translate}}</h2>
<span flex></span>
<button class="btnTransparency" ng-click="vm.cancel()" ng-hide="vm.status == 'progress'">
- <i class="fa fa-close fa-sm" aria-hidden="true"></i>
+ <i class="fa fa-close fa-sm" aria-hidden="true"></i>
</button>
</div>
</md-toolbar>
@@ -35,7 +35,7 @@
<label for="file" class="btn btnDefault"> {{'common.actions.add' | translate}} </label>
<label>
<span ng-if="!vm.service.file"> {{'module.marketplace.serviceUpload.fields.fileUpload.noFileSelected' | translate}}</span>
- <span ng-if="vm.service.file"> {{ vm.service.file.name}}</span>
+ <span ng-if="vm.service.file"> {{ vm.service.file.name}}</span>
</label>
</div>
<input class="hidden" id="file" type="file" file-upload="vm.service.file" md-asterisk accept=".csar">
@@ -43,18 +43,18 @@
</div>
<div>
- <label for="shortDesc" class="labels">{{'module.marketplace.serviceUpload.fields.shortDescription.placeholder' | translate}}</label>
- <input ng-model="vm.service.shortDesc" type="text" id="shortDesc" name="shortDesc">
+ <label for="shortDesc" class="labels">{{'module.marketplace.serviceUpload.fields.shortDescription.placeholder' | translate}}</label>
+ <input ng-model="vm.service.shortDesc" type="text" id="shortDesc" name="shortDesc">
</div>
<div>
-
- <label class="labels">{{'module.marketplace.serviceUpload.fields.details.placeholder' | translate}}</label>
- <textarea name="details" ng-model="vm.service.details" maxlength="150" rows="3" md-select-on-focus></textarea>
+
+ <label class="labels">{{'module.marketplace.serviceUpload.fields.details.placeholder' | translate}}</label>
+ <textarea name="details" ng-model="vm.service.details" maxlength="150" rows="3" md-select-on-focus></textarea>
</div>
<div>
-
- <label for="remarks" class="labels">{{'module.marketplace.serviceUpload.fields.remarks.placeholder' | translate}}</label>
- <input ng-model="vm.service.remarks" type="text" id="remarks" name="remarks">
+
+ <label for="remarks" class="labels">{{'module.marketplace.serviceUpload.fields.remarks.placeholder' | translate}}</label>
+ <input ng-model="vm.service.remarks" type="text" id="remarks" name="remarks">
</div>
</div>
</md-dialog-content>
@@ -76,7 +76,10 @@
</div>
<md-progress-linear md-mode="determinate" value="{{vm.apiInfo}}"></md-progress-linear>
<h4 class="text-center"> {{vm.apiInfo}} % </h4>
- <span class="text-center" ng-if="vm.status == 'success'">{{'module.marketplace.serviceUpload.fields.funcTestReport.label' | translate}} <a href="{{vm.funcTestReportUrl}}" target="_blank">{{'common.actions.clickHere' | translate}}</a></span>
+ <span class="text-center" ng-if="vm.status == 'success'">{{'module.marketplace.serviceUpload.fields.funcTestReport.label' | translate}}
+ <a href="{{vm.funcTestReportUrl}}"
+ target="_blank">{{'common.actions.clickHere' | translate}}</a>
+ </span>
</div>
<div flex="25" layout="column">
</div>
@@ -88,19 +91,21 @@
<md-dialog-actions layout="row" ng-show="vm.status == 'Idle'" class="marginAuto">
<!-- <span flex></span> -->
-
- <button ng-if="!vm.isUpload" class="md-raised btn btnPrimary btnPrimaryPadding btnSpacing" ng-click="vm.answer('Uploaded')" ng-disabled="!vm.service.file">
+
+ <button ng-if="!vm.isUpload" class="md-raised btn btnPrimary btnPrimaryPadding btnSpacing" ng-click="vm.answer('Uploaded')"
+ ng-disabled="!vm.service.file">
{{'common.actions.update' | translate}}
</button>
-
- <button ng-if="vm.isUpload" class="md-raised btn btnPrimary btnPrimaryPadding btnSpacing" ng-click="vm.answer('Uploaded')" ng-disabled="!vm.service.file">
+
+ <button ng-if="vm.isUpload" class="md-raised btn btnPrimary btnPrimaryPadding btnSpacing" ng-click="vm.answer('Uploaded')"
+ ng-disabled="!vm.service.file">
{{'common.actions.upload' | translate}}
</button>
<button class="md-raised btn btnDefault btnPrimaryPadding btnSpacing" ng-click="vm.cancel()">
{{'common.actions.close' | translate}}
</button>
-
+
</md-dialog-actions>
<md-dialog-actions class="marginAuto" layout="row" ng-show="vm.status == 'success'">
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadCtrl.js
index 7a2fdaaa..6d141ce1 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -36,24 +36,24 @@
* and bindable members up top.
*/
- function ServiceUpload(serviceUploadService, $scope, vnfConfig, $mdDialog, $mdToast, $rootScope, $interval, baseUrlConfig,$state, isUpload, csarId) {
+ function ServiceUpload(serviceUploadService, $scope, vnfConfig, $mdDialog, $mdToast, $rootScope, $interval, baseUrlConfig, $state, isUpload, csarId) {
var vm = this;
- vm.isUpload = isUpload;
- vm.csarId = csarId
+ vm.isUpload = isUpload;
+ vm.csarId = csarId
vm.apiInfo = 0;
vm.status = "Idle";
vm.promise = null;
vm.service = {};
- vm.hide = function(answer) {
+ vm.hide = function (answer) {
$mdDialog.hide(answer);
};
- vm.cancel = function() {
+ vm.cancel = function () {
$mdDialog.cancel();
};
- vm.answer = function(answer) {
+ vm.answer = function (answer) {
vm.status = "progress";
var dataObj = vm.service,
file = vm.service.file,
@@ -70,31 +70,31 @@
"Content-Type": undefined
}
- vm.promise = $interval(function() {
+ vm.promise = $interval(function () {
if ($rootScope.progressBar >= 80 && vm.status !== "success") {
vm.apiInfo = 80;
} else {
vm.apiInfo = parseInt($rootScope.progressBar, 10);
}
}, 500);
-
- if(vm.isUpload){
- var filename = vm.service.file.name;
- serviceUploadService.postServiceUpload(fd, headers)
- .then(function(response) {
- vm.hide("Uploading")
- $state.go('home.onboarding', {"csarId": response.data.csarId, "csarName": filename});
- });
- } else {
- serviceUploadService.repostServiceUpload(fd, headers, vm.csarId)
- .then(function(response) {
- vm.hide("Uploading")
- $state.go('home.onboarding', {"csarId": response.data.csarId, "csarName": filename});
- });
- }
+
+ if (vm.isUpload) {
+ var filename = vm.service.file.name;
+ serviceUploadService.postServiceUpload(fd, headers)
+ .then(function (response) {
+ vm.hide("Uploading")
+ $state.go('home.onboarding', { "csarId": response.data.csarId, "csarName": filename });
+ });
+ } else {
+ serviceUploadService.repostServiceUpload(fd, headers, vm.csarId)
+ .then(function (response) {
+ vm.hide("Uploading")
+ $state.go('home.onboarding', { "csarId": response.data.csarId, "csarName": filename });
+ });
+ }
};
- $scope.$on("$destroy", function() {
+ $scope.$on("$destroy", function () {
if (vm.promise) {
$interval.cancel(vm.promise);
}
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadService.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadService.js
index a938c097..458a98b6 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadService.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/home/serviceUpload/serviceUploadService.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -32,7 +32,7 @@
function serviceUpload($q, vnfConfig, httpService) {
return {
postServiceUpload: postServiceUpload,
- repostServiceUpload: repostServiceUpload
+ repostServiceUpload: repostServiceUpload
};
function postServiceUpload(data, headers) {
@@ -42,25 +42,25 @@
var defer = $q.defer()
httpService.apiRequestWithProgress(url, method, apiData, headers)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
}
-
- function repostServiceUpload(data, headers, csarId) {
+
+ function repostServiceUpload(data, headers, csarId) {
var url = vnfConfig.api.home.repostServiceUpload.url,
method = vnfConfig.api.home.repostServiceUpload.method,
apiData = data;
- url = url.replace(":csarId", csarId)
+ url = url.replace(":csarId", csarId)
var defer = $q.defer()
httpService.apiRequestWithProgress(url, method, apiData, headers)
- .then(function(response) {
+ .then(function (response) {
defer.resolve(response);
- }, function(error) {
+ }, function (error) {
defer.reject(error);
});
return defer.promise;
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/main-page.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/main-page.html
index 57920a10..4821524d 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/main-page.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/main-page.html
@@ -13,64 +13,64 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
- <md-toolbar ng-show="!showSearch">
- <div class="md-toolbar-tools">
- <md-button ng-click="layout.toggleSidenav('left')" hide-gt-md aria-label="Menu">
- <ng-md-icon icon="menu"></ng-md-icon>
+<md-toolbar ng-show="!showSearch">
+ <div class="md-toolbar-tools">
+ <md-button ng-click="layout.toggleSidenav('left')" hide-gt-md aria-label="Menu">
+ <ng-md-icon icon="menu"></ng-md-icon>
+ </md-button>
+ <h3>
+ <a href="/">vnfmarket</a>
+ </h3>
+ <span flex></span>
+ <md-button aria-label="Search" ng-click="showSearch = !showSearch">
+ <ng-md-icon icon="search"></ng-md-icon>
+ </md-button>
+ <md-menu>
+ <md-button aria-label="Open Settings" ng-click="layout.openMenu($mdOpenMenu, $event)">
+ <md-icon> more_vert </md-icon>
</md-button>
- <h3>
- <a href="/">vnfmarket</a>
- </h3>
- <span flex></span>
- <md-button aria-label="Search" ng-click="showSearch = !showSearch">
- <ng-md-icon icon="search"></ng-md-icon>
- </md-button>
- <md-menu>
- <md-button aria-label="Open Settings" ng-click="layout.openMenu($mdOpenMenu, $event)">
- <md-icon> more_vert </md-icon>
- </md-button>
- <md-menu-content width="4">
- <md-menu-item>
- <md-button ng-click="layout.changeProfile($event)">
- <md-icon>face</md-icon>
- Profile
- </md-button>
- </md-menu-item>
- <md-menu-item>
- <md-button ng-click="layout.changePassword()">
- <md-icon>lock</md-icon>
- Password
- </md-button>
- </md-menu-item>
- <md-menu-divider></md-menu-divider>
- <md-menu-item>
- <md-button ng-click="layout.logOut()">
- <md-icon>power_settings_new</md-icon>
- Logout
- </md-button>
- </md-menu-item>
- </md-menu-content>
- </md-menu>
- </div>
- </md-toolbar>
- <md-toolbar class="md-hue-1" ng-show="showSearch">
- <div class="md-toolbar-tools">
- <md-button ng-click="showSearch = !showSearch" aria-label="Back">
- <ng-md-icon icon="arrow_back"></ng-md-icon>
- </md-button>
- <h3 flex="10">
- Back
- </h3>
- <md-input-container md-theme="input" flex>
- <label>&nbsp;</label>
- <input ng-model="search.who" placeholder="Search ...">
- </md-input-container>
+ <md-menu-content width="4">
+ <md-menu-item>
+ <md-button ng-click="layout.changeProfile($event)">
+ <md-icon>face</md-icon>
+ Profile
+ </md-button>
+ </md-menu-item>
+ <md-menu-item>
+ <md-button ng-click="layout.changePassword()">
+ <md-icon>lock</md-icon>
+ Password
+ </md-button>
+ </md-menu-item>
+ <md-menu-divider></md-menu-divider>
+ <md-menu-item>
+ <md-button ng-click="layout.logOut()">
+ <md-icon>power_settings_new</md-icon>
+ Logout
+ </md-button>
+ </md-menu-item>
+ </md-menu-content>
+ </md-menu>
+ </div>
+</md-toolbar>
+<md-toolbar class="md-hue-1" ng-show="showSearch">
+ <div class="md-toolbar-tools">
+ <md-button ng-click="showSearch = !showSearch" aria-label="Back">
+ <ng-md-icon icon="arrow_back"></ng-md-icon>
+ </md-button>
+ <h3 flex="10">
+ Back
+ </h3>
+ <md-input-container md-theme="input" flex>
+ <label>&nbsp;</label>
+ <input ng-model="search.who" placeholder="Search ...">
+ </md-input-container>
- </div>
- </md-toolbar>
- <md-content class="md-blue-grey-theme" flex md-scroll-y>
- <ui-view layout="column" layout-fill layout-padding>
+ </div>
+</md-toolbar>
+<md-content class="md-blue-grey-theme" flex md-scroll-y>
+ <ui-view layout="column" layout-fill layout-padding>
- </ui-view>
- </md-content>
+ </ui-view>
+</md-content> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/mainPageCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/mainPageCtrl.js
index c1430ffb..d82ce460 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/mainPageCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/main-page/mainPageCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
- (function () {
+(function () {
'use strict';
/**
@@ -36,7 +36,7 @@
* and bindable members up top.
*/
- function Layout($mdSidenav, $cookies, $state, $mdToast, $mdDialog ) {
+ function Layout($mdSidenav, $cookies, $state, $mdToast, $mdDialog) {
/*jshint validthis: true */
var vm = this;
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenav.html b/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenav.html
index 36aebb6e..99c3032c 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenav.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenav.html
@@ -13,34 +13,32 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
- <md-toolbar class="md-tall md-hue-2">
- <div layout="column" class="md-toolbar-tools-bottom inset">
- <div layout="row">
- <div flex="20">
- <img style="width: 36px; height: 36px; border-radius: 50%"
- actual-src="data:image/jpeg;base64,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"
- showloader="" loader-class="preload" loader-src="app/assets/images/loader.gif"
- src="data:image/jpeg;base64,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">
- </div>
- <div flex="80" style="margin-top: 10px;font-size: 1em;">
- <div></div>
- </div>
- </div>
+<md-toolbar class="md-tall md-hue-2">
+ <div layout="column" class="md-toolbar-tools-bottom inset">
+ <div layout="row">
+ <div flex="20">
+ <img style="width: 36px; height: 36px; border-radius: 50%" actual-src="data:image/jpeg;base64,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"
+ showloader="" loader-class="preload" loader-src="app/assets/images/loader.gif" src="data:image/jpeg;base64,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">
</div>
- </md-toolbar>
- <md-list>
- <md-list-item ng-repeat="item in vm.menu" ng-click="vm.navigateTo(item.link)" >
- <div class="inset" ng-show="item.icon">
- <ng-md-icon icon="{{item.icon}}"></ng-md-icon>
- </div>
- <p> {{ item.name }}</p>
- </md-list-item>
- <md-divider></md-divider>
- <md-subheader></md-subheader>
- <md-list-item ng-repeat="item in vm.admin" ng-click="vm.showSettingsBottom($event)" >
- <div class="inset">
- <ng-md-icon icon="{{item.icon}}"></ng-md-icon>
- </div>
- <p> {{ item.title }}</p>
- </md-list-item>
- </md-list>
+ <div flex="80" style="margin-top: 10px;font-size: 1em;">
+ <div></div>
+ </div>
+ </div>
+ </div>
+</md-toolbar>
+<md-list>
+ <md-list-item ng-repeat="item in vm.menu" ng-click="vm.navigateTo(item.link)">
+ <div class="inset" ng-show="item.icon">
+ <ng-md-icon icon="{{item.icon}}"></ng-md-icon>
+ </div>
+ <p> {{ item.name }}</p>
+ </md-list-item>
+ <md-divider></md-divider>
+ <md-subheader></md-subheader>
+ <md-list-item ng-repeat="item in vm.admin" ng-click="vm.showSettingsBottom($event)">
+ <div class="inset">
+ <ng-md-icon icon="{{item.icon}}"></ng-md-icon>
+ </div>
+ <p> {{ item.title }}</p>
+ </md-list-item>
+</md-list> \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenavCtrl.js b/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenavCtrl.js
index 59bd9fae..5e17b5af 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenavCtrl.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/app/modules/layouts/side-nav/sidenavCtrl.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
- (function () {
+(function () {
'use strict';
/**
@@ -26,7 +26,7 @@
angular
.module('vnfmarket')
.controller('SidenavCtrl', SidenavCtrl)
- // .controller('SettingsCtrl', SettingsCtrl);
+ // .controller('SettingsCtrl', SettingsCtrl);
// Injecting Denpendencies
@@ -47,7 +47,7 @@
$mdSidenav(menuId).toggle();
};
- vm.closeSidenav = function() {
+ vm.closeSidenav = function () {
$mdSidenav('left').close();
};
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/config/baseUrlConfig.js b/vnfmarket/src/main/webapp/vnfmarket/common/config/baseUrlConfig.js
index 72b9f5a9..4b14d978 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/common/config/baseUrlConfig.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/common/config/baseUrlConfig.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -28,8 +28,8 @@
.module('vnfmarket')
.constant("baseUrlConfig", {
"common": {
- "ip" : "", //ses
- "port" : "" //ses
+ "ip": "", //ses
+ "port": "" //ses
}
})
})(); \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/config/configuration.js b/vnfmarket/src/main/webapp/vnfmarket/common/config/configuration.js
index 33faa97f..2adcc020 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/common/config/configuration.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/common/config/configuration.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -33,7 +33,7 @@
"url": "/onapapi/vnfsdk-marketplace/v1/PackageResource/csars",
"method": "POST"
},
- "repostServiceUpload": {
+ "repostServiceUpload": {
"url": "/onapapi/vnfsdk-marketplace/v1/PackageResource/csars/:csarId/reupload",
"method": "POST"
},
@@ -53,15 +53,15 @@
"url": "/onapapi/vnfsdk-marketplace/v1/PackageResource/csars/:csarId",
"method": "GET"
},
- "getFunctionTestDetails" : {
- "url" : "/onapapi/vnfsdk-marketplace/v1/PackageResource/csars/:csarId/operresult?operTypeId=functiontest",
- "method" : "GET"
- },
- "updateDownloadCount" :{
- "url" : "/onapapi/vnfsdk-marketplace/v1/PackageResource/csars/:csarId/downloaded",
- "method" : "GET"
- },
- "getOnBoardingSteps": {
+ "getFunctionTestDetails": {
+ "url": "/onapapi/vnfsdk-marketplace/v1/PackageResource/csars/:csarId/operresult?operTypeId=functiontest",
+ "method": "GET"
+ },
+ "updateDownloadCount": {
+ "url": "/onapapi/vnfsdk-marketplace/v1/PackageResource/csars/:csarId/downloaded",
+ "method": "GET"
+ },
+ "getOnBoardingSteps": {
"url": "/onapapi/vnfsdk-marketplace/v1/PackageResource/csars/onboardsteps",
"method": "GET"
},
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/css/home.css b/vnfmarket/src/main/webapp/vnfmarket/common/css/home.css
index 820d46a8..69e662c7 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/common/css/home.css
+++ b/vnfmarket/src/main/webapp/vnfmarket/common/css/home.css
@@ -13,68 +13,81 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-#searchField {
- position: relative;
- top: 13px;
- border-bottom-color:whitesmoke;
- background-color:#858CA8;
- height:33px;
+
+#searchField,
+#searchField:focus {
+ position: relative;
+ top: 11px !important;
+ border-bottom-color: whitesmoke;
+ background-color: #858ca8;
+ height: 31px !important;
+ line-height: 29px !important;
+ padding: 2px 2px 1px 2px !important;
+ border-bottom-width: 1px !important;
}
-.contentBackground{
- background: white;
+
+#searchIcon,
+#cancelSearch {
+ background-color: #858ca8;
+ height: 29px;
+ position: relative;
+ top: -1.5px;
+ margin: 0px;
}
-#homeToolbar form{
- height: 33px;
- /*background-color: lightgray;*/
- margin: 0px;
+.hidden {
+ display: none;
}
-#searchFieldContainer{
- padding-right:0;
- top: -31px;
+.contentBackground {
+ background: white;
}
-
-.noMargin{
- margin:0
+#homeToolbar form {
+ height: 33px;
+ /*background-color: lightgray;*/
+ margin: 0px;
}
-.iconMargin{
- margin-right:8px;
+#searchFieldContainer {
+ padding-right: 0;
+ top: -31px;
}
-@media (min-width : 600px) {
- #gridView .layout-xs-column{
- margin-bottom: 10px !important;
- }
+.noMargin {
+ margin: 0;
}
-
-@media (max-width : 600px) {
- #gridView .layout-xs-column .iconMargin:not(.deletebutton){
- margin-right:0px;
- margin-bottom: 6px;
- }
-
- #gridView .layout-xs-column .downloadIcon{
- margin-top: 6px;
- margin-bottom: 6px;
- }
+.iconMargin {
+ margin-right: 8px;
}
+@media (min-width: 600px) {
+ #gridView .layout-xs-column {
+ margin-bottom: 10px !important;
+ }
+}
+@media (max-width: 600px) {
+ #gridView .layout-xs-column .iconMargin:not(.deletebutton) {
+ margin-right: 0px;
+ margin-bottom: 6px;
+ }
-.iconAlignment{
- position: relative;
- bottom: 4px;
+ #gridView .layout-xs-column .downloadIcon {
+ margin-top: 6px;
+ margin-bottom: 6px;
+ }
}
+.iconAlignment {
+ position: relative;
+ bottom: 4px;
+}
-.gridViewMargin{
+.gridViewMargin {
margin: 0 1.6% 1% 1.6%;
- padding: 0px 16px 0px 16px;
+ padding: 0px 16px 0px 16px;
}
-
/*.mdl-color-text--white {
color: rgb(255,255,255) !important;
}
@@ -102,7 +115,7 @@
}*/
.service-detail-tags .material-icons {
- font-size: 16px !important;
+ font-size: 16px !important;
}
/*
@@ -161,845 +174,831 @@
.mdl-chip--contact {
padding-left: 0; }*/
- .no-padding {
- padding: 0 !important;
+.no-padding {
+ padding: 0 !important;
}
.mdl-card__title {
- -webkit-align-items: center;
- -ms-flex-align: center;
- align-items: center;
- color: rgb(0,0,0);
- display: block;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-justify-content: stretch;
- -ms-flex-pack: stretch;
- justify-content: stretch;
- line-height: normal;
- padding: 16px 16px;
- -webkit-perspective-origin: 165px 56px;
- perspective-origin: 165px 56px;
- -webkit-transform-origin: 165px 56px;
- transform-origin: 165px 56px;
- box-sizing: border-box;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+ color: rgb(0, 0, 0);
+ display: block;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-justify-content: stretch;
+ -ms-flex-pack: stretch;
+ justify-content: stretch;
+ line-height: normal;
+ padding: 16px 16px;
+ -webkit-perspective-origin: 165px 56px;
+ perspective-origin: 165px 56px;
+ -webkit-transform-origin: 165px 56px;
+ transform-origin: 165px 56px;
+ box-sizing: border-box;
}
.mdl-card__title-text {
- -webkit-align-self: flex-end;
- -ms-flex-item-align: end;
- align-self: flex-end;
- color: inherit;
- display: block;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- font-size: 24px;
- font-weight: 300;
- line-height: normal;
- overflow: hidden;
- -webkit-transform-origin: 149px 48px;
- transform-origin: 149px 48px;
- margin: 0;
+ -webkit-align-self: flex-end;
+ -ms-flex-item-align: end;
+ align-self: flex-end;
+ color: inherit;
+ display: block;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ font-size: 24px;
+ font-weight: 300;
+ line-height: normal;
+ overflow: hidden;
+ -webkit-transform-origin: 149px 48px;
+ transform-origin: 149px 48px;
+ margin: 0;
}
.mdl-button--primary.mdl-button--primary {
- color: rgb(33,150,243);
+ color: rgb(33, 150, 243);
}
.mdl-button {
- background: transparent;
- border: none;
- border-radius: 2px;
- color: rgb(0,0,0);
- position: relative;
- height: 36px;
- margin: 0;
- min-width: 64px;
- padding: 0 16px;
- display: inline-block;
- font-family: "Roboto", "Helvetica", "Arial", sans-serif;
- font-size: 14px;
- font-weight: 500;
- text-transform: uppercase;
- line-height: 1;
- letter-spacing: 0;
- overflow: hidden;
- will-change: box-shadow;
- transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
- outline: none;
- cursor: pointer;
- text-decoration: none;
- text-align: center;
- line-height: 36px;
- vertical-align: middle;
+ background: transparent;
+ border: none;
+ border-radius: 2px;
+ color: rgb(0, 0, 0);
+ position: relative;
+ height: 36px;
+ margin: 0;
+ min-width: 64px;
+ padding: 0 16px;
+ display: inline-block;
+ font-family: "Roboto", "Helvetica", "Arial", sans-serif;
+ font-size: 14px;
+ font-weight: 500;
+ text-transform: uppercase;
+ line-height: 1;
+ letter-spacing: 0;
+ overflow: hidden;
+ will-change: box-shadow;
+ transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1),
+ background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1),
+ color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
+ outline: none;
+ cursor: pointer;
+ text-decoration: none;
+ text-align: center;
+ line-height: 36px;
+ vertical-align: middle;
}
.mdl-layout-spacer {
- -webkit-flex-grow: 1;
- -ms-flex-positive: 1;
- flex-grow: 1;
+ -webkit-flex-grow: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
}
.mdl-button--primary.mdl-button--primary {
- color: rgb(33,150,243);
+ color: rgb(33, 150, 243);
}
.mdl-button {
- background: transparent;
- border: none;
- border-radius: 2px;
- color: rgb(0,0,0);
- position: relative;
- height: 36px;
- margin: 0;
- min-width: 64px;
- padding: 0 16px;
- display: inline-block;
- font-family: "Roboto", "Helvetica", "Arial", sans-serif;
- font-size: 14px;
- font-weight: 500;
- text-transform: uppercase;
- line-height: 1;
- letter-spacing: 0;
- overflow: hidden;
- will-change: box-shadow;
- transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
- outline: none;
- cursor: pointer;
- text-decoration: none;
- text-align: center;
- line-height: 36px;
- vertical-align: middle;
+ background: transparent;
+ border: none;
+ border-radius: 2px;
+ color: rgb(0, 0, 0);
+ position: relative;
+ height: 36px;
+ margin: 0;
+ min-width: 64px;
+ padding: 0 16px;
+ display: inline-block;
+ font-family: "Roboto", "Helvetica", "Arial", sans-serif;
+ font-size: 14px;
+ font-weight: 500;
+ text-transform: uppercase;
+ line-height: 1;
+ letter-spacing: 0;
+ overflow: hidden;
+ will-change: box-shadow;
+ transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1),
+ background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1),
+ color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
+ outline: none;
+ cursor: pointer;
+ text-decoration: none;
+ text-align: center;
+ line-height: 36px;
+ vertical-align: middle;
}
.mdl-button .material-icons {
- vertical-align: middle;
+ vertical-align: middle;
}
.mdl-button .material-icons {
- vertical-align: middle;
+ vertical-align: middle;
}
#emptyList {
- padding: 30px;
+ padding: 30px;
}
.mdl-card__actions.service-actions {
- border-top: 1px solid rgba(0, 0, 0, 0.12);
- margin: 0;
+ border-top: 1px solid rgba(0, 0, 0, 0.12);
+ margin: 0;
}
.mdl-card__supporting-text.service-desc {
- display: -webkit-box;
- -webkit-line-clamp: 3;
- -webkit-box-orient: vertical;
- overflow: hidden;
- /* text-overflow: ellipsis; */
- margin-bottom: 14px;
- height: 60px;
+ display: -webkit-box;
+ -webkit-line-clamp: 3;
+ -webkit-box-orient: vertical;
+ overflow: hidden;
+ /* text-overflow: ellipsis; */
+ margin-bottom: 14px;
+ height: 60px;
}
-
.pagination-class .label {
- color: rgba(0, 0, 0, 0.54) !important;
+ color: rgba(0, 0, 0, 0.54) !important;
}
-md-card-header{
- padding: 16px 0 16px 0 !important;
+md-card-header {
+ padding: 16px 0 16px 0 !important;
}
-#service-type-name{
- margin-right: 6px;
+#service-type-name {
+ margin-right: 6px;
}
-.icon-red{
- color: red;
+.icon-red {
+ color: red;
}
-#homeToolbar, .dialogHeader {
- min-height: 40px;
- height: 40px;
+#homeToolbar,
+.dialogHeader {
+ min-height: 40px;
+ height: 40px;
}
-.fontSize{
- font-size:18px;
+.fontSize {
+ font-size: 18px;
}
-md-option.fontSize{
- font-size:16px;
+md-option.fontSize {
+ font-size: 16px;
}
-th.fontSize{
- font-size:15px !important;
+th.fontSize {
+ font-size: 15px !important;
}
-.pointerClick{
- cursor: pointer;
+.pointerClick {
+ cursor: pointer;
}
-.actionIcon{
- position: relative;
- top: 4px;
+.actionIcon {
+ position: relative;
+ top: 4px;
}
-#sideNav{
- background-color : #f5f5f5 !important;
-
+#sideNav {
+ background-color: #f5f5f5 !important;
}
-#sideNav.md-locked-open{
+#sideNav.md-locked-open {
z-index: 0;
}
.btnDefault {
- border-radius: 6px;
- /* height: 24px; */
- font-size: 12px;
- font-family: "Microsoft Yahei",Arial,Tahoma,Verdana,SimSun;
- line-height: 24px;
- color: #000;
- border: 1px solid #d3d3d3;
- text-align: center;
- box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
- -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
- background: linear-gradient(to bottom, #fff, #fafafa);
- padding: 0 10px;
+ border-radius: 6px;
+ /* height: 24px; */
+ font-size: 12px;
+ font-family: "Microsoft Yahei", Arial, Tahoma, Verdana, SimSun;
+ line-height: 24px;
+ color: #000;
+ border: 1px solid #d3d3d3;
+ text-align: center;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ background: linear-gradient(to bottom, #fff, #fafafa);
+ padding: 0 10px;
}
.btnDefault:hover {
- border-color: #4ac9ff;
- color: #009ae7;
+ border-color: #4ac9ff;
+ color: #009ae7;
}
-.actionBtnHeight{
- height:22px;
+.actionBtnHeight {
+ height: 22px;
}
-#gridView .actionBtnHeight > .materialIconAdjustment{
- font-size: 16px;
- position: relative;
- top: 2px;
+#gridView .actionBtnHeight > .materialIconAdjustment {
+ font-size: 16px;
+ position: relative;
+ top: 2px;
}
-#listView .materialIconAdjustment{
- position: relative;
- top: 4px;
+#listView .materialIconAdjustment {
+ position: relative;
+ top: 4px;
}
-.btnTransparency{
- background-color: transparent;
- border:none;
+.btnTransparency {
+ background-color: transparent;
+ border: none;
}
-.btnSpacing{
- margin-right: 5px;
+.btnSpacing {
+ margin-right: 5px;
}
.btn-danger {
- border-radius: 6px;
- font-size: 12px;
- font-family: "Microsoft Yahei",Arial,Tahoma,Verdana,SimSun;
- line-height: 24px;
- text-align: center;
- box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
- -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
- padding: 0 10px;
- color: #fff;
- background: #d43f3a;
+ border-radius: 6px;
+ font-size: 12px;
+ font-family: "Microsoft Yahei", Arial, Tahoma, Verdana, SimSun;
+ line-height: 24px;
+ text-align: center;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ padding: 0 10px;
+ color: #fff;
+ background: #d43f3a;
}
.btn-primary {
- border-radius: 6px;
- font-size: 12px;
- font-family: "Microsoft Yahei",Arial,Tahoma,Verdana,SimSun;
- line-height: 24px;
- text-align: center;
- box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
- -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
- padding: 0 10px;
-}
-.btn-danger:hover{
- border: 1px solid #d43f3a;
- background: linear-gradient(to bottom, #fff, #fafafa);
- color:#d43f3a;
- background: #fafafa !important;
-}
-.msg{
- text-align: left;
- vertical-align: middle;
- vertical-align: middle;
- position: absolute;
- top: 47%;
- -webkit-transform: translateY(-50%);
- -ms-transform: translateY(-50%);
- transform: translateY(-50%);
- padding-left: 70px;
- white-space: normal;
-}
-.deleteIconSize{
- font-size: 37px;
-}
-.fullWidth{
- width:100%;
-}
-
-.deleteAction{
- margin: auto;
- display: block;
- text-align: center;
- position: relative;
- top: 15px;
-}
-.deleteBtn{
- margin: 5px 5px 5px 0px;
-}
- .icon_info {
- color: green;
+ border-radius: 6px;
+ font-size: 12px;
+ font-family: "Microsoft Yahei", Arial, Tahoma, Verdana, SimSun;
+ line-height: 24px;
+ text-align: center;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ padding: 0 10px;
+}
+.btn-danger:hover {
+ border: 1px solid #d43f3a;
+ background: linear-gradient(to bottom, #fff, #fafafa);
+ color: #d43f3a;
+ background: #fafafa !important;
+}
+.msg {
+ text-align: left;
+ vertical-align: middle;
+ vertical-align: middle;
+ position: absolute;
+ top: 47%;
+ -webkit-transform: translateY(-50%);
+ -ms-transform: translateY(-50%);
+ transform: translateY(-50%);
+ padding-left: 70px;
+ white-space: normal;
+}
+.deleteIconSize {
+ font-size: 37px;
+}
+
+/* if display block then button and text is getting overlapped */
+.fullWidth {
+ width: 100%;
+ display: inline-block;
+}
+
+.deleteAction {
+ margin: auto;
+ display: block;
+ text-align: center;
+ position: relative;
+ top: 15px;
+}
+.deleteBtn {
+ margin: 5px 5px 5px 0px;
+}
+.icon_info {
+ color: green;
}
.icon_warning {
- color: orange;
+ color: orange;
}
-.btn[disabled]{
- background: lightgray !important;
+.btn[disabled] {
+ background: lightgray !important;
}
-.serviceDelete{
- font-size: 22px;
- padding-right: 4px;
- position: relative;
- top: 3px;
- color: red;
- right: 3px;
+.serviceDelete {
+ font-size: 22px;
+ padding-right: 4px;
+ position: relative;
+ top: 3px;
+ color: red;
+ right: 3px;
}
-#description{
- list-style-type: disc;
+#description {
+ list-style-type: disc;
}
.icon_error {
- color: red;
+ color: red;
}
-table tbody tr:nth-child(even)>td {
- background-color:#fafafa;
+table tbody tr:nth-child(even) > td {
+ background-color: #fafafa;
}
-table tbody tr:nth-child(odd)>td {
- background-color:#f7f7f7
+table tbody tr:nth-child(odd) > td {
+ background-color: #f7f7f7;
}
table tbody tr:hover td {
- background-color: #e6fbe0 !important;
+ background-color: #e6fbe0 !important;
}
-#serviceUpload{
- box-shadow: 1px 2px 4px -1px #858CA8;
+#serviceUpload {
+ box-shadow: 1px 2px 4px -1px #858ca8;
}
table tr {
- height:33px !important;
+ height: 33px !important;
}
-table thead{
- text-align: left;
- font-size: 14px;
- background-color: #E1E4E5;
+table thead {
+ text-align: left;
+ font-size: 14px;
+ background-color: #e1e4e5;
}
table tr {
- border-color: grey;
+ border-color: grey;
}
-
-#uploadDialog .msg{
- position: relative;
- top: 9px;
+#uploadDialog .msg {
+ position: relative;
+ top: 9px;
}
-.nopadding{
- padding:0 !important;
+.nopadding {
+ padding: 0 !important;
}
-.nomargin{
- margin:0 !important;
+.nomargin {
+ margin: 0 !important;
}
-#serviceName{
- position: relative;
- left: 14px;
- background-color: #efefef;
- color:rgb(148,148,148);
- text-align:center;
- width:100px;
- border-radius: 3px;
+#serviceName {
+ position: relative;
+ left: 14px;
+ background-color: #efefef;
+ color: rgb(148, 148, 148);
+ text-align: center;
+ width: 100px;
+ border-radius: 3px;
}
-.gridTitleHeight{
- height:46px !important;
- min-height:46px !important;
+.gridTitleHeight {
+ height: 46px !important;
+ min-height: 46px !important;
}
-.gridToolbarHeight{
- min-height: 54px;
- height: 54px;
+.gridToolbarHeight {
+ min-height: 54px;
+ height: 54px;
}
-.gridBottomeHeight{
- height:46px !important;
- min-height:46px !important;
+.gridBottomeHeight {
+ height: 46px !important;
+ min-height: 46px !important;
}
-.gridUnderline{
- border-bottom: 1px solid black;
- border-bottom-style: dashed;
+.gridUnderline {
+ border-bottom: 1px solid black;
+ border-bottom-style: dashed;
}
-.gridBottomFonts{
- color: rgb(148,148,148);
- font-size: 12px;
+.gridBottomFonts {
+ color: rgb(148, 148, 148);
+ font-size: 12px;
}
-.marginAuto{
- margin:auto;
+.marginAuto {
+ margin: auto;
}
-.selectLblAlignment{
- padding-right: 10px;
+.selectLblAlignment {
+ padding-right: 10px;
}
-.viewIconPosition{
- position: relative;
- top: -2px;
+.viewIconPosition {
+ position: relative;
+ top: -2px;
}
-#searchIcon{
- background-color: #858CA8;
- height: 31px;
- position: relative;
- top: 1.5px;
-}
-#cancelSearch{
- background-color: #858CA8;
- height: 31px;
- position: relative;
- top: 1.5px;
-}
-.searchIconColor{
- color:rgb(234,234,234);
+.searchIconColor {
+ color: rgb(234, 234, 234);
}
-.tabContentBorder{
- border:1px solid #e7e7e7;
+.tabContentBorder {
+ border: 1px solid #e7e7e7;
}
-.nav.navbar-nav .active a{
- color: #3399FF !important;
- height: calc(41px - 1px);
+.nav.navbar-nav .active a {
+ color: #3399ff !important;
+ height: calc(41px - 1px);
}
-.nav.navbar-nav a{
- padding:16px 16px 4px 16px !important;
- color: rgba(0, 0, 0, 0.87) !important;
+.nav.navbar-nav a {
+ padding: 16px 16px 4px 16px !important;
+ color: rgba(0, 0, 0, 0.87) !important;
}
-.nav.navbar-nav a:hover{
- background:transparent;
+.nav.navbar-nav a:hover {
+ background: transparent;
}
-.nav.navbar-nav li:not(.active){
- border-right: 1px solid dimgray !important;
- cursor:pointer;
+.nav.navbar-nav li:not(.active) {
+ border-right: 1px solid dimgray !important;
+ cursor: pointer;
}
.nav.navbar-nav li {
- background-color:#eee;
- border: 2px solid lightgray;
-
+ background-color: #eee;
+ border: 2px solid lightgray;
}
.nav.navbar-nav li.active {
- background-color:white;
- /*box-shadow: -1px 5px 10px -1px lightslategrey;*/
- border-top:3px solid #3399FF;
+ background-color: white;
+ /*box-shadow: -1px 5px 10px -1px lightslategrey;*/
+ border-top: 3px solid #3399ff;
}
-.borderBottom{
- border-bottom:1px solid black;
+.borderBottom {
+ border-bottom: 1px solid black;
}
-.backgroundWhite{
- background-color: transparent;
+.backgroundWhite {
+ background-color: transparent;
}
-.paddingBottom{
- padding-bottom: 16px;
+.paddingBottom {
+ padding-bottom: 16px;
}
.onboardProgress {
- margin-bottom: 90px;
+ margin-bottom: 90px;
}
.processLabel {
- margin-top: 40px;
+ margin-top: 40px;
}
-#onBoardingContent, #onBoardingSuccessContent {
- background-color: #fff;
- padding: 30px;
+#onBoardingContent,
+#onBoardingSuccessContent {
+ background-color: #fff;
+ padding: 30px;
}
.onboarddiv {
- margin: auto;
- text-align: center;
- top: -59px;
- position: relative;
+ margin: auto;
+ text-align: center;
+ top: -59px;
+ position: relative;
}
.progressDiv {
- width: 100%;
- height: 4px;
- /*border: 2px solid #3DCCA6;*/
- background-color: #E2E2E2;
- position: relative;
- top: 18px;
- margin: auto;
+ width: 100%;
+ height: 4px;
+ /*border: 2px solid #3DCCA6;*/
+ background-color: #e2e2e2;
+ position: relative;
+ top: 18px;
+ margin: auto;
}
.roundProg {
- border-radius: 15px;
- width: 30px;
- height: 30px;
- background-color: #E2E2E2;
- z-index: 1;
- text-align: center;
- margin: auto;
- line-height: 28px;
- position: relative;
+ border-radius: 15px;
+ width: 30px;
+ height: 30px;
+ background-color: #e2e2e2;
+ z-index: 1;
+ text-align: center;
+ margin: auto;
+ line-height: 28px;
+ position: relative;
}
.progressed {
- background-color: #3DCCA6;
- color: #fff;
+ background-color: #3dcca6;
+ color: #fff;
}
.bg-grey {
- background-color: #F6F7F7;
+ background-color: #f6f7f7;
}
.onboardBtn {
- width: 120px !important;
- height: 120px !important;
- background-color: #E0EDFA;
- background-repeat: no-repeat;
- background-size: initial;
- margin: auto;
- border: 1px solid transparent;
- border-radius: 66px;
+ width: 120px !important;
+ height: 120px !important;
+ background-color: #e0edfa;
+ background-repeat: no-repeat;
+ background-size: initial;
+ margin: auto;
+ border: 1px solid transparent;
+ border-radius: 66px;
}
.onboardBtn.btnImage1 {
- background-image: url("../images/Validtion.png");
- background-position: 20px 19px;
+ background-image: url("../images/Validtion.png");
+ background-position: 20px 19px;
}
.onboardBtn.btnImage2 {
- background-image: url("../images/Lifecycle-Test.png");
- background-position: 23px 20px;
+ background-image: url("../images/Lifecycle-Test.png");
+ background-position: 23px 20px;
}
.onboardBtn.btnImage3 {
- background-image: url("../images/Function-Test.png");
- background-position: 25px 13px;
+ background-image: url("../images/Function-Test.png");
+ background-position: 25px 13px;
}
.btnOuter {
- margin: auto;
- border-radius: 70px;
- /*border: 1px solid transparent;*/
- background-color: #F6F7F7;
- background-size: initial;
- width: 140px;
- height: 140px;
- padding: 10px;
+ margin: auto;
+ border-radius: 70px;
+ /*border: 1px solid transparent;*/
+ background-color: #f6f7f7;
+ background-size: initial;
+ width: 140px;
+ height: 140px;
+ padding: 10px;
}
.listItems {
- position: relative;
- top: -60px;
+ position: relative;
+ top: -60px;
}
.onbdContent span.statusIcon {
- font-size: 22px;
- color: #3DCCA6;
- margin-right: 8px;
- display: inline-block;
- width: 21px;
- height: 21px;
- margin-bottom: -6px;
+ font-size: 22px;
+ color: #3dcca6;
+ margin-right: 8px;
+ display: inline-block;
+ width: 21px;
+ height: 21px;
+ margin-bottom: -6px;
}
.onbdContent .md-padding div {
- margin: 14px;
+ margin: 14px;
}
.clock-icon {
- background-image: url("../images/03.png");
+ background-image: url("../images/03.png");
}
.progress-icon {
- background-image: url("../images/02.png");
+ background-image: url("../images/02.png");
}
.success-icon {
- background-image: url("../images/01.png");
+ background-image: url("../images/01.png");
}
.failed-icon {
- /*background-image: url("../images/01.png");*/
+ /*background-image: url("../images/01.png");*/
- /*TODO Remove code after getting proper image*/
+ /*TODO Remove code after getting proper image*/
- color: red !important;
- padding-left: 6px;
+ color: red !important;
+ padding-left: 6px;
}
-.iconColor{
- color:#3399FF;
+.iconColor {
+ color: #3399ff;
}
-.downiconColor{
- color:white;
+.downiconColor {
+ color: white;
}
-.delButton{
- margin-left:10px;
+.delButton {
+ margin-left: 10px;
}
-.downloadButton{
- background:#3399FF;
-
-
+.downloadButton {
+ background: #3399ff;
}
-.reloadButton{
- padding:0 10px 0 0;
+.reloadButton {
+ padding: 0 10px 0 0;
}
-
.downloadButton:hover {
- color:black;
+ color: black;
}
-
-.btnPrimary{
- border-radius: 3px;
- /* height: 24px; */
- font-size: 12px;
- font-family: "Microsoft Yahei",Arial,Tahoma,Verdana,SimSun;
- line-height: 24px;
- color: white;
- border: 1px solid #d3d3d3;
- text-align: center;
- box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
- -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
- background: linear-gradient(to bottom, #fff, #fafafa);
- padding: 0 6px;
- background: #3399FF;
-
+.btnPrimary {
+ border-radius: 3px;
+ /* height: 24px; */
+ font-size: 12px;
+ font-family: "Microsoft Yahei", Arial, Tahoma, Verdana, SimSun;
+ line-height: 24px;
+ color: white;
+ border: 1px solid #d3d3d3;
+ text-align: center;
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
+ background: linear-gradient(to bottom, #fff, #fafafa);
+ padding: 0 6px;
+ background: #3399ff;
}
-.tiles{
- border: 1px solid #e5e5e5;
+.tiles {
+ border: 1px solid #e5e5e5;
}
-#banner{
- background-image: url("../images/productioncardtype.png") ;
+#banner {
+ background-image: url("../images/productioncardtype.png");
}
-.toolContainer{
- position: absolute;
+.toolContainer {
+ position: absolute;
}
-.contentContainer{
- background-color: #DCDCDC;
- position: absolute;
- top: 49px;
- z-index: 2;
+.contentContainer {
+ background-color: #dcdcdc;
+ position: absolute;
+ top: 49px;
+ z-index: 2;
}
-.sortbar{
- margin-top: 24px;
- margin-left: 40px;
- margin-right: 48px;
- margin-bottom: 8px;
+.sortbar {
+ margin-top: 24px;
+ margin-left: 40px;
+ margin-right: 48px;
+ margin-bottom: 8px;
}
-#rightFlex{
- padding-top:55px;
+#rightFlex {
+ padding-top: 55px;
}
-#childLeftFlex{
- text-align: right;
+#childLeftFlex {
+ text-align: right;
}
-#childRightFlex{
- text-align: right;
- line-height: 24px;
+#childRightFlex {
+ text-align: right;
+ line-height: 24px;
}
-#buttonsbar{
- padding-left: 35px;
+#buttonsbar {
+ padding-left: 35px;
}
-
.reloadButton {
- padding:0 10px 0 0;
- margin-left:65px;
+ padding: 0 10px 0 0;
+ margin-left: 65px;
}
-.verticalBar{
- z-index:50;
+.verticalBar {
+ z-index: 50;
}
-.marketplaceSize{
- font-size:11px;
+.marketplaceSize {
+ font-size: 11px;
}
-.image{
- max-height: 101px;
- max-width: 17%;
- position: relative;
- top: 8px;
- bottom: 0;
- left: -66px;
- right: 0;
- margin: auto;
+.image {
+ max-height: 101px;
+ max-width: 17%;
+ position: relative;
+ top: 8px;
+ bottom: 0;
+ left: -66px;
+ right: 0;
+ margin: auto;
}
-.divheight{
- line-height:0px !important;
+.divheight {
+ line-height: 0px !important;
}
-.headTitle{
- color:#858CA8;
+.headTitle {
+ color: #858ca8;
}
-.btnPrimaryPadding
-{
- padding: 0 19px !important;
+.btnPrimaryPadding {
+ padding: 0 19px !important;
}
-.gridViewType{
- color:#3399FF;
+.gridViewType {
+ color: #3399ff;
}
-.gridViewType[disabled] > i{
- color:white;
+.gridViewType[disabled] > i {
+ color: white;
}
-.gridViewType[disabled]{
- background:#3399FF !important;
+.gridViewType[disabled] {
+ background: #3399ff !important;
}
-.gridViewType[disabled] i{
- color:white;
+.gridViewType[disabled] i {
+ color: white;
}
#onBoardingSuccessContent {
- /*min-height: 500px;*/
- height: 100%;
- width: 100%;
+ /*min-height: 500px;*/
+ height: 100%;
+ width: 100%;
}
#onBoardingSuccessContent #returnBtn {
- position: relative;
- left: -30px;
- border: none;
- border-radius: 0 13px 13px 0;
- width: 130px;
- color: #9D9D9D;
- background: #F2F2F2;
+ position: relative;
+ left: -30px;
+ border: none;
+ border-radius: 0 13px 13px 0;
+ width: 130px;
+ color: #9d9d9d;
+ background: #f2f2f2;
}
#onBoardingSuccessContent #returnBtn:hover {
- color: #333;
+ color: #333;
}
#onBoardingSuccessContent #returnBtn span {
- font-size: 15px;
- margin-right: 10px;
+ font-size: 15px;
+ margin-right: 10px;
}
.content {
- text-align: center;
- margin-top: 200px;
+ text-align: center;
+ margin-top: 200px;
}
.content.emptyPage {
- text-align: center;
- margin-top: 100px;
+ text-align: center;
+ margin-top: 100px;
}
.content div {
- text-align: center;
- margin: 10px;
+ text-align: center;
+ margin: 10px;
}
.content .imageContainer {
- width: 300px;
- height: 150px;
- /*background-color: #f8f8f8;*/
- margin: 0 auto;
+ width: 300px;
+ height: 150px;
+ /*background-color: #f8f8f8;*/
+ margin: 0 auto;
}
.content .imageContainer img {
- height: 100%;
+ height: 100%;
}
-.content .backLink {
- text-decoration: none;
- color: #9D9D9D;
+.content .vnfLink {
+ color: #007bff !important;
}
-.content .backLink:hover {
- color: #333;
+
+.content .vnfLink:hover {
+ text-decoration: underline !important;
+ cursor: pointer;
}
textarea {
- width: 100%;
- height: 150px;
- box-sizing: border-box;
- border: 2px solid #ccc;
- border-radius: 4px;
- background-color: white;
- font-size: 16px;
- resize: none;
+ width: 100%;
+ height: 150px;
+ box-sizing: border-box;
+ border: 2px solid #ccc;
+ border-radius: 4px;
+ background-color: white;
+ font-size: 16px;
+ resize: none;
}
input {
- width: 100%;
+ width: 100%;
}
-.labels{
- padding-top:20px;
+.labels {
+ padding-top: 20px;
}
-#uploadStyle{
- /*padding-top: 25px;*/
- padding-left: 25px;
+#uploadStyle {
+ /*padding-top: 25px;*/
+ padding-left: 25px;
}
-.PageIndicator{
- position: absolute;
- background-color: #00b3ee;
- top: 11%;
- padding-left: 5px;
- margin: -6px;
- height: 30px;
- width: 6px;
- z-index: 45;
+.PageIndicator {
+ position: absolute;
+ background-color: #00b3ee;
+ top: 11%;
+ padding-left: 5px;
+ margin: -6px;
+ height: 30px;
+ width: 6px;
+ z-index: 45;
}
-.UploadPageIndicator{
- position: absolute;
- background-color: #00b3ee;
- top: 11%;
- padding-left: 5px;
- margin: -5px;
- height: 30px;
- width:10px;
+.UploadPageIndicator {
+ position: absolute;
+ background-color: #00b3ee;
+ top: 11%;
+ padding-left: 5px;
+ margin: -5px;
+ height: 30px;
+ width: 10px;
}
-.btnIconSpacing{
- position: relative;
- top: -2px;
- left: -3px;
+.btnIconSpacing {
+ position: relative;
+ top: -2px;
+ left: -3px;
}
-#listView .btnIconSpacing{
- top: -6px !important;
- position: relative;
- /*top: -2px;*/
- left: -3px;
+#listView .btnIconSpacing {
+ top: 0px !important;
+ position: relative;
+ left: -3px;
}
-.gridServiceTitle{
- color:#337ab7 !important;
+.gridServiceTitle {
+ color: #337ab7 !important;
}
-.actionWidth{
- min-width: 150px;
+.actionWidth {
+ min-width: 150px;
}
-.primaryColor{
- background-color:#3399FF;
+.primaryColor {
+ background-color: #3399ff;
}
-.nav.navbar-nav a{
- padding: 10.5px !important;
- color: dimgray;
+.nav.navbar-nav a {
+ padding: 10.5px !important;
+ color: dimgray;
}
#detailsTabs .fontSize {
- font-size: 15px;
- font-weight:bold;
+ font-size: 15px;
+ font-weight: bold;
+}
+.navbar {
+ min-height: 43px;
}
-.navbar{
- min-height:43px;
-} \ No newline at end of file
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/directives/autofocus/autofocusDirective.js b/vnfmarket/src/main/webapp/vnfmarket/common/directives/autofocus/autofocusDirective.js
index 50b63dc7..9eeae641 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/common/directives/autofocus/autofocusDirective.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/common/directives/autofocus/autofocusDirective.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/directives/fileupload/fileuploadDirective.js b/vnfmarket/src/main/webapp/vnfmarket/common/directives/fileupload/fileuploadDirective.js
index 2a1748e5..3f64841d 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/common/directives/fileupload/fileuploadDirective.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/common/directives/fileupload/fileuploadDirective.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -41,8 +41,8 @@
return directive;
function link(scope, element, attrs) {
- element.bind("change", function(changeEvent) {
- scope.$apply(function() {
+ element.bind("change", function (changeEvent) {
+ scope.$apply(function () {
scope.fileUpload = changeEvent.target.files[0];
});
});
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/locale/locale-en.json b/vnfmarket/src/main/webapp/vnfmarket/common/locale/locale-en.json
index d4be95e9..d086b9ac 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/common/locale/locale-en.json
+++ b/vnfmarket/src/main/webapp/vnfmarket/common/locale/locale-en.json
@@ -1,193 +1,188 @@
- {
- "common" : {
- "actions" : {
- "save" : "Save",
- "upload":"Upload",
- "delete" : "Delete",
- "close" : "Close",
- "search" : "Search",
- "download" :"Download",
- "yes" : "Yes",
- "no" : "No",
- "update" :"Re Upload",
- "clickHere" : "Click Here",
- "getApp" : "get_app",
- "fileUpload" : "file_upload",
- "ok" : "Ok",
- "return" : "Return",
- "detail" : "See Details",
- "backToList" : "Back to List",
- "add" : "Add file"
+{
+ "common": {
+ "actions": {
+ "save": "Save",
+ "upload": "Upload",
+ "delete": "Delete",
+ "close": "Close",
+ "search": "Search",
+ "download": "Download",
+ "yes": "Yes",
+ "no": "No",
+ "update": "Re Upload",
+ "clickHere": "Click Here",
+ "getApp": "get_app",
+ "fileUpload": "file_upload",
+ "ok": "Ok",
+ "return": "Return",
+ "detail": "See Details",
+ "backToList": "Back to List",
+ "add": "Add file"
},
- "message" : {
- "statusTitle" : "Status : ",
- "statusText" : "Status text : ",
- "viewDetails" : "Click here to view details"
+ "message": {
+ "statusTitle": "Status : ",
+ "statusText": "Status text : ",
+ "viewDetails": "Click here to view details"
},
- "tabs" : {
- "validation" :{
- "title" : "Validation",
- "stepTHead" : "Step",
- "ParamTHead" : "Parameter",
- "ResultTHead" : "Result"
- },
- "lifeCycle" : {
- "title" : "Lifecycle Test",
- "stepTHead" : "Step",
- "ParamTHead" : "Parameter",
- "ResultTHead" : "Result"
- },
- "functionTest": {
- "title" : "Functional Test",
- "testTHead" : "Test case",
- "descTHead" : "Description",
- "resultTHead" : "Test Result"
- }
- }
+ "tabs": {
+ "validation": {
+ "title": "Validation",
+ "stepTHead": "Step",
+ "ParamTHead": "Parameter",
+ "ResultTHead": "Result"
+ },
+ "lifeCycle": {
+ "title": "Lifecycle Test",
+ "stepTHead": "Step",
+ "ParamTHead": "Parameter",
+ "ResultTHead": "Result"
+ },
+ "functionTest": {
+ "title": "Functional Test",
+ "testTHead": "Test case",
+ "descTHead": "Description",
+ "resultTHead": "Test Result"
+ }
+ }
},
- "module" : {
- "marketplace" : {
- "serviceDelete" : {
- "title" : "Delete Service",
- "confirmationMesaage" : "Are you sure that you want to delete "
-
+ "module": {
+ "marketplace": {
+ "serviceDelete": {
+ "title": "Delete Service",
+ "confirmationMesaage": "Are you sure that you want to delete "
},
- "serviceUpload" : {
- "title" : "Upload Service",
- "updateTitle" : "Re Upload",
- "fields" : {
- "fileUpload" : {
- "label" : "Select File",
- "noFileSelected" : "No file selected"
+ "serviceUpload": {
+ "title": "Upload Service",
+ "updateTitle": "Re Upload",
+ "fields": {
+ "fileUpload": {
+ "label": "Select File",
+ "noFileSelected": "No file selected"
},
- "shortDescription" : {
- "placeholder" : "Short Description"
+ "shortDescription": {
+ "placeholder": "Short Description"
},
- "details" : {
- "placeholder" : "Details"
+ "details": {
+ "placeholder": "Details"
},
- "remarks" : {
- "placeholder" : "Remarks"
+ "remarks": {
+ "placeholder": "Remarks"
},
- "funcTestReport" : {
- "label":"Function Test Report: "
+ "funcTestReport": {
+ "label": "Function Test Report: "
}
},
- "messages" : {
- "onUploading" : "Please wait, Upload is in progress",
- "onSuccessful" : "Service upload successful"
+ "messages": {
+ "onUploading": "Please wait, Upload is in progress",
+ "onSuccessful": "Service upload successful"
},
- "onBoarding" : {
- "onBoardProcessTitle" : "Onboarding Process"
- },
- "onBoardingSuccess" : {
- "successTitle" : "Onboarding is successful"
- }
-
+ "onBoarding": {
+ "onBoardProcessTitle": "Onboarding Process"
+ },
+ "onBoardingSuccess": {
+ "successTitle": "Onboarding is successful"
+ }
},
- "serviceDetails" : {
- "title" : "Service Name : ",
- "info" : {
- "details" : "Details",
- "remarks" : "Remarks",
- "provider" : "Provider",
- "serviceType" : "Service Type",
- "csarId" : "CSAR Id",
- "fileSize" : "File Size",
- "funcTestReport" :"Function Test Report",
- "reportTitle" : "Onboarding Report",
- "typeLbl" : "Type",
- "createLbl" : "Created At",
- "modLbl" : "Last Modfied at"
-
+ "serviceDetails": {
+ "title": "Service Name : ",
+ "info": {
+ "details": "Details",
+ "remarks": "Remarks",
+ "provider": "Provider",
+ "serviceType": "Service Type",
+ "csarId": "CSAR Id",
+ "fileSize": "File Size",
+ "funcTestReport": "Function Test Report",
+ "reportTitle": "Onboarding Report",
+ "typeLbl": "Type",
+ "createLbl": "Created At",
+ "modLbl": "Last Modfied at"
},
- "tabs" : {
- "validationTabTitle" : "Validation",
- "lifecycleTabTitle" : "Lifecycle Test",
- "functionalTabTitle" : "Function Test"
- }
-
-
+ "tabs": {
+ "validationTabTitle": "Validation",
+ "lifecycleTabTitle": "Lifecycle Test",
+ "functionalTabTitle": "Function Test"
+ }
},
- "sideNav" : {
- "title" : "VNF Repository",
- "marketplaceNav" : "VNF Repository"
+ "sideNav": {
+ "title": "VNF Repository",
+ "marketplaceNav": "VNF Repository"
},
- "main" : {
- "headerTitle" : "Welcome to VNF Repository",
- "description" : "Market place for VNF-SDK does the following task:",
- "pointOne" : "Upload and download of VNF products and offerings",
- "pointTwo" : "Show the interface about other component in VNF-SDK",
- "sortBy" : {
- "title" : "Please select",
- "label" : "Sort by ",
- "options" : {
- "name" : {
- "key" :"Name",
- "value" :"name"
+ "main": {
+ "headerTitle": "Welcome to VNF Repository",
+ "description": "Market place for VNF-SDK does the following task:",
+ "pointOne": "Upload and download of VNF products and offerings",
+ "pointTwo": "Show the interface about other component in VNF-SDK",
+ "sortBy": {
+ "title": "Please select",
+ "label": "Sort by ",
+ "options": {
+ "name": {
+ "key": "Name",
+ "value": "name"
},
- "dateModified" : {
- "key" :"Data Modified",
- "value" : "date"
+ "dateModified": {
+ "key": "Data Modified",
+ "value": "date"
},
- "downloads" : {
- "key":"Downloads",
- "value" : "downloads"
+ "downloads": {
+ "key": "Downloads",
+ "value": "downloads"
}
}
},
- "search" :{
- "label" : "Search",
- "placeholder" : "Search keyword",
- "close" : "Close"
+ "search": {
+ "label": "Search",
+ "placeholder": "Search keyword",
+ "close": "Close"
},
- "upload" : {
- "label" : "Upload"
+ "upload": {
+ "label": "Upload"
},
- "gridView" : {
- "label" : "Grid View",
- "serviceType" : {
- "label" : "Type",
+ "gridView": {
+ "label": "Grid View",
+ "serviceType": {
+ "label": "Type",
"value": "description"
},
- "downloads" : {
- "label" : "Downloads",
- "value":"get_app",
- "tooltip" : "Download history",
- "buttonLabel" :"Downloads"
+ "downloads": {
+ "label": "Downloads",
+ "value": "get_app",
+ "tooltip": "Download history",
+ "buttonLabel": "Downloads"
},
- "upload" : {
- "tooltip" : "Uploads history",
- "buttonLabel" : "Uploads"
+ "upload": {
+ "tooltip": "Uploads history",
+ "buttonLabel": "Uploads"
},
- "moreDetails" : {
- "label" : "More details"
+ "moreDetails": {
+ "label": "More details"
},
- "title" : {
- "label" : "Title"
+ "title": {
+ "label": "Title"
}
},
- "listView" : {
- "label" : "List View",
- "headers" : {
- "name" : "Name",
- "provider" : "Provider",
- "description" : "Description",
- "type" : "Type",
- "size" : "Size",
- "createdAt" : "Created at",
- "lastModified" : "Last Modified at",
- "donwloads" : "Downloads",
- "actions" : "Actions"
+ "listView": {
+ "label": "List View",
+ "headers": {
+ "name": "Name",
+ "provider": "Provider",
+ "description": "Description",
+ "type": "Type",
+ "size": "Size",
+ "createdAt": "Created at",
+ "lastModified": "Last Modified at",
+ "donwloads": "Downloads",
+ "actions": "Actions"
}
},
- "refresh" : {
- "label" : "Refresh"
+ "refresh": {
+ "label": "Refresh"
},
- "emptyList" : {
- "label" : "Service list is empty. Would you like to upload one? If yes,",
- "anchor" : "Click here",
- "labelContinued" : "to upload a new service"
+ "emptyList": {
+ "label": "Service list is empty. Would you like to upload one? If yes,",
+ "anchor": "Click here",
+ "labelContinued": "to upload a new service"
}
}
}
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/services/httpService.js b/vnfmarket/src/main/webapp/vnfmarket/common/services/httpService.js
index bc077a10..dd9dda64 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/common/services/httpService.js
+++ b/vnfmarket/src/main/webapp/vnfmarket/common/services/httpService.js
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-(function() {
+(function () {
'use strict';
/**
@@ -39,8 +39,8 @@
var defer = $q.defer()
$http({
method: method,
- //ses url: baseUrlConfig.common.ip + ":" + baseUrlConfig.common.port + url,
- url:url,
+ //ses url: baseUrlConfig.common.ip + ":" + baseUrlConfig.common.port + url,
+ url: url,
data: data,
headers: headers
}).then(function successCallback(response) {
@@ -50,15 +50,15 @@
}, function errorCallback(error) {
var parentEl = angular.element(document.body);
$mdDialog.show({
- parent:parentEl,
- templateUrl:'/onapui/vnfmarket/common/templates/serverError.html',
- locals:{
- error:error
+ parent: parentEl,
+ templateUrl: '/onapui/vnfmarket/common/templates/serverError.html',
+ locals: {
+ error: error
},
- skipHide:true,
- controller:function($scope, $mdDialog, error){
+ skipHide: true,
+ controller: function ($scope, $mdDialog, error) {
$scope.error = error;
- $scope.closeDialog= function(){
+ $scope.closeDialog = function () {
$mdDialog.hide();
}
}
@@ -74,13 +74,13 @@
var defer = $q.defer()
$http({
method: method,
- //ses url: baseUrlConfig.common.ip + ":" + baseUrlConfig.common.port + url,
- url:url,
+ //ses url: baseUrlConfig.common.ip + ":" + baseUrlConfig.common.port + url,
+ url: url,
data: data,
headers: headers,
transformRequest: angular.identity,
uploadEventHandlers: {
- progress: function(e) {
+ progress: function (e) {
if (e.lengthComputable) {
$rootScope.progressBar = (e.loaded / e.total) * 100;
}
@@ -93,15 +93,15 @@
}, function errorCallback(error) {
var parentEl = angular.element(document.body);
$mdDialog.show({
- parent:parentEl,
- templateUrl:'/onapui/vnfmarket/common/templates/serverError.html',
- locals:{
- error:error
+ parent: parentEl,
+ templateUrl: '/onapui/vnfmarket/common/templates/serverError.html',
+ locals: {
+ error: error
},
- skipHide:true,
- controller:function($scope, $mdDialog, error){
+ skipHide: true,
+ controller: function ($scope, $mdDialog, error) {
$scope.error = error;
- $scope.closeDialog= function(){
+ $scope.closeDialog = function () {
$mdDialog.hide();
}
}
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/templates/serverError.html b/vnfmarket/src/main/webapp/vnfmarket/common/templates/serverError.html
index 6d402765..9b8a540a 100644
--- a/vnfmarket/src/main/webapp/vnfmarket/common/templates/serverError.html
+++ b/vnfmarket/src/main/webapp/vnfmarket/common/templates/serverError.html
@@ -27,15 +27,21 @@
<md-dialog-content>
<div class="md-dialog-content">
- <div class="fullWidth center">
- <div class="row">
- <div class="col-xs-2 col-sm-2 col-md-1 col-lg-1 icon glyphicon glyphicon-exclamation-sign icon_error deleteIconSize"></div>
- <div class="msg col-xs-10 col-sm-10 col-md-11 col-lg-11" style="text-align:left;vertical-align: middle;">
- <div> <span>{{'common.message.statusTitle' | translate }} </span> <span>{{error.status}}</span> </div>
- <div> <span>{{'common.message.statusText' | translate }} </span> <span>{{error.statusText}}</span></div>
+ <div class="fullWidth center">
+ <div class="row">
+ <div class="col-xs-2 col-sm-2 col-md-1 col-lg-1 icon glyphicon glyphicon-exclamation-sign icon_error deleteIconSize"></div>
+ <div class="msg col-xs-10 col-sm-10 col-md-11 col-lg-11" style="text-align:left;vertical-align: middle;">
+ <div>
+ <span>{{'common.message.statusTitle' | translate }} </span>
+ <span>{{error.status}}</span>
+ </div>
+ <div>
+ <span>{{'common.message.statusText' | translate }} </span>
+ <span>{{error.statusText}}</span>
</div>
</div>
</div>
+ </div>
</md-dialog-content>
<md-dialog-actions layout="row" class="row deleteAction">
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/alert.js b/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/alert.js
deleted file mode 100644
index db97f3b0..00000000
--- a/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/alert.js
+++ /dev/null
@@ -1,94 +0,0 @@
-/* ========================================================================
- * Bootstrap: alert.js v3.3.7
- * http://getbootstrap.com/javascript/#alerts
- * ========================================================================
- * Copyright 2011-2016 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- * ======================================================================== */
-
-
-+function ($) {
- 'use strict';
-
- // ALERT CLASS DEFINITION
- // ======================
-
- var dismiss = '[data-dismiss="alert"]'
- var Alert = function (el) {
- $(el).on('click', dismiss, this.close)
- }
-
- Alert.VERSION = '3.3.7'
-
- Alert.TRANSITION_DURATION = 150
-
- Alert.prototype.close = function (e) {
- var $this = $(this)
- var selector = $this.attr('data-target')
-
- if (!selector) {
- selector = $this.attr('href')
- selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
- }
-
- var $parent = $(selector === '#' ? [] : selector)
-
- if (e) e.preventDefault()
-
- if (!$parent.length) {
- $parent = $this.closest('.alert')
- }
-
- $parent.trigger(e = $.Event('close.bs.alert'))
-
- if (e.isDefaultPrevented()) return
-
- $parent.removeClass('in')
-
- function removeElement() {
- // detach from parent, fire event then clean up data
- $parent.detach().trigger('closed.bs.alert').remove()
- }
-
- $.support.transition && $parent.hasClass('fade') ?
- $parent
- .one('bsTransitionEnd', removeElement)
- .emulateTransitionEnd(Alert.TRANSITION_DURATION) :
- removeElement()
- }
-
-
- // ALERT PLUGIN DEFINITION
- // =======================
-
- function Plugin(option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.alert')
-
- if (!data) $this.data('bs.alert', (data = new Alert(this)))
- if (typeof option == 'string') data[option].call($this)
- })
- }
-
- var old = $.fn.alert
-
- $.fn.alert = Plugin
- $.fn.alert.Constructor = Alert
-
-
- // ALERT NO CONFLICT
- // =================
-
- $.fn.alert.noConflict = function () {
- $.fn.alert = old
- return this
- }
-
-
- // ALERT DATA-API
- // ==============
-
- $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)
-
-}(jQuery);
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/carousel.js b/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/carousel.js
deleted file mode 100644
index 6ff954c9..00000000
--- a/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/carousel.js
+++ /dev/null
@@ -1,237 +0,0 @@
-/* ========================================================================
- * Bootstrap: carousel.js v3.3.7
- * http://getbootstrap.com/javascript/#carousel
- * ========================================================================
- * Copyright 2011-2016 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- * ======================================================================== */
-
-
-+function ($) {
- 'use strict';
-
- // CAROUSEL CLASS DEFINITION
- // =========================
-
- var Carousel = function (element, options) {
- this.$element = $(element)
- this.$indicators = this.$element.find('.carousel-indicators')
- this.options = options
- this.paused = null
- this.sliding = null
- this.interval = null
- this.$active = null
- this.$items = null
-
- this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this))
-
- this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element
- .on('mouseenter.bs.carousel', $.proxy(this.pause, this))
- .on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
- }
-
- Carousel.VERSION = '3.3.7'
-
- Carousel.TRANSITION_DURATION = 600
-
- Carousel.DEFAULTS = {
- interval: 5000,
- pause: 'hover',
- wrap: true,
- keyboard: true
- }
-
- Carousel.prototype.keydown = function (e) {
- if (/input|textarea/i.test(e.target.tagName)) return
- switch (e.which) {
- case 37: this.prev(); break
- case 39: this.next(); break
- default: return
- }
-
- e.preventDefault()
- }
-
- Carousel.prototype.cycle = function (e) {
- e || (this.paused = false)
-
- this.interval && clearInterval(this.interval)
-
- this.options.interval
- && !this.paused
- && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
-
- return this
- }
-
- Carousel.prototype.getItemIndex = function (item) {
- this.$items = item.parent().children('.item')
- return this.$items.index(item || this.$active)
- }
-
- Carousel.prototype.getItemForDirection = function (direction, active) {
- var activeIndex = this.getItemIndex(active)
- var willWrap = (direction == 'prev' && activeIndex === 0)
- || (direction == 'next' && activeIndex == (this.$items.length - 1))
- if (willWrap && !this.options.wrap) return active
- var delta = direction == 'prev' ? -1 : 1
- var itemIndex = (activeIndex + delta) % this.$items.length
- return this.$items.eq(itemIndex)
- }
-
- Carousel.prototype.to = function (pos) {
- var that = this
- var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active'))
-
- if (pos > (this.$items.length - 1) || pos < 0) return
-
- if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid"
- if (activeIndex == pos) return this.pause().cycle()
-
- return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos))
- }
-
- Carousel.prototype.pause = function (e) {
- e || (this.paused = true)
-
- if (this.$element.find('.next, .prev').length && $.support.transition) {
- this.$element.trigger($.support.transition.end)
- this.cycle(true)
- }
-
- this.interval = clearInterval(this.interval)
-
- return this
- }
-
- Carousel.prototype.next = function () {
- if (this.sliding) return
- return this.slide('next')
- }
-
- Carousel.prototype.prev = function () {
- if (this.sliding) return
- return this.slide('prev')
- }
-
- Carousel.prototype.slide = function (type, next) {
- var $active = this.$element.find('.item.active')
- var $next = next || this.getItemForDirection(type, $active)
- var isCycling = this.interval
- var direction = type == 'next' ? 'left' : 'right'
- var that = this
-
- if ($next.hasClass('active')) return (this.sliding = false)
-
- var relatedTarget = $next[0]
- var slideEvent = $.Event('slide.bs.carousel', {
- relatedTarget: relatedTarget,
- direction: direction
- })
- this.$element.trigger(slideEvent)
- if (slideEvent.isDefaultPrevented()) return
-
- this.sliding = true
-
- isCycling && this.pause()
-
- if (this.$indicators.length) {
- this.$indicators.find('.active').removeClass('active')
- var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)])
- $nextIndicator && $nextIndicator.addClass('active')
- }
-
- var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid"
- if ($.support.transition && this.$element.hasClass('slide')) {
- $next.addClass(type)
- $next[0].offsetWidth // force reflow
- $active.addClass(direction)
- $next.addClass(direction)
- $active
- .one('bsTransitionEnd', function () {
- $next.removeClass([type, direction].join(' ')).addClass('active')
- $active.removeClass(['active', direction].join(' '))
- that.sliding = false
- setTimeout(function () {
- that.$element.trigger(slidEvent)
- }, 0)
- })
- .emulateTransitionEnd(Carousel.TRANSITION_DURATION)
- } else {
- $active.removeClass('active')
- $next.addClass('active')
- this.sliding = false
- this.$element.trigger(slidEvent)
- }
-
- isCycling && this.cycle()
-
- return this
- }
-
-
- // CAROUSEL PLUGIN DEFINITION
- // ==========================
-
- function Plugin(option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.carousel')
- var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option)
- var action = typeof option == 'string' ? option : options.slide
-
- if (!data) $this.data('bs.carousel', (data = new Carousel(this, options)))
- if (typeof option == 'number') data.to(option)
- else if (action) data[action]()
- else if (options.interval) data.pause().cycle()
- })
- }
-
- var old = $.fn.carousel
-
- $.fn.carousel = Plugin
- $.fn.carousel.Constructor = Carousel
-
-
- // CAROUSEL NO CONFLICT
- // ====================
-
- $.fn.carousel.noConflict = function () {
- $.fn.carousel = old
- return this
- }
-
-
- // CAROUSEL DATA-API
- // =================
-
- var clickHandler = function (e) {
- var href
- var $this = $(this)
- var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7
- if (!$target.hasClass('carousel')) return
- var options = $.extend({}, $target.data(), $this.data())
- var slideIndex = $this.attr('data-slide-to')
- if (slideIndex) options.interval = false
-
- Plugin.call($target, options)
-
- if (slideIndex) {
- $target.data('bs.carousel').to(slideIndex)
- }
-
- e.preventDefault()
- }
-
- $(document)
- .on('click.bs.carousel.data-api', '[data-slide]', clickHandler)
- .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler)
-
- $(window).on('load', function () {
- $('[data-ride="carousel"]').each(function () {
- var $carousel = $(this)
- Plugin.call($carousel, $carousel.data())
- })
- })
-
-}(jQuery);
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/collapse.js b/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/collapse.js
deleted file mode 100644
index 12038693..00000000
--- a/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/collapse.js
+++ /dev/null
@@ -1,212 +0,0 @@
-/* ========================================================================
- * Bootstrap: collapse.js v3.3.7
- * http://getbootstrap.com/javascript/#collapse
- * ========================================================================
- * Copyright 2011-2016 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- * ======================================================================== */
-
-/* jshint latedef: false */
-
-+function ($) {
- 'use strict';
-
- // COLLAPSE PUBLIC CLASS DEFINITION
- // ================================
-
- var Collapse = function (element, options) {
- this.$element = $(element)
- this.options = $.extend({}, Collapse.DEFAULTS, options)
- this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' +
- '[data-toggle="collapse"][data-target="#' + element.id + '"]')
- this.transitioning = null
-
- if (this.options.parent) {
- this.$parent = this.getParent()
- } else {
- this.addAriaAndCollapsedClass(this.$element, this.$trigger)
- }
-
- if (this.options.toggle) this.toggle()
- }
-
- Collapse.VERSION = '3.3.7'
-
- Collapse.TRANSITION_DURATION = 350
-
- Collapse.DEFAULTS = {
- toggle: true
- }
-
- Collapse.prototype.dimension = function () {
- var hasWidth = this.$element.hasClass('width')
- return hasWidth ? 'width' : 'height'
- }
-
- Collapse.prototype.show = function () {
- if (this.transitioning || this.$element.hasClass('in')) return
-
- var activesData
- var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing')
-
- if (actives && actives.length) {
- activesData = actives.data('bs.collapse')
- if (activesData && activesData.transitioning) return
- }
-
- var startEvent = $.Event('show.bs.collapse')
- this.$element.trigger(startEvent)
- if (startEvent.isDefaultPrevented()) return
-
- if (actives && actives.length) {
- Plugin.call(actives, 'hide')
- activesData || actives.data('bs.collapse', null)
- }
-
- var dimension = this.dimension()
-
- this.$element
- .removeClass('collapse')
- .addClass('collapsing')[dimension](0)
- .attr('aria-expanded', true)
-
- this.$trigger
- .removeClass('collapsed')
- .attr('aria-expanded', true)
-
- this.transitioning = 1
-
- var complete = function () {
- this.$element
- .removeClass('collapsing')
- .addClass('collapse in')[dimension]('')
- this.transitioning = 0
- this.$element
- .trigger('shown.bs.collapse')
- }
-
- if (!$.support.transition) return complete.call(this)
-
- var scrollSize = $.camelCase(['scroll', dimension].join('-'))
-
- this.$element
- .one('bsTransitionEnd', $.proxy(complete, this))
- .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize])
- }
-
- Collapse.prototype.hide = function () {
- if (this.transitioning || !this.$element.hasClass('in')) return
-
- var startEvent = $.Event('hide.bs.collapse')
- this.$element.trigger(startEvent)
- if (startEvent.isDefaultPrevented()) return
-
- var dimension = this.dimension()
-
- this.$element[dimension](this.$element[dimension]())[0].offsetHeight
-
- this.$element
- .addClass('collapsing')
- .removeClass('collapse in')
- .attr('aria-expanded', false)
-
- this.$trigger
- .addClass('collapsed')
- .attr('aria-expanded', false)
-
- this.transitioning = 1
-
- var complete = function () {
- this.transitioning = 0
- this.$element
- .removeClass('collapsing')
- .addClass('collapse')
- .trigger('hidden.bs.collapse')
- }
-
- if (!$.support.transition) return complete.call(this)
-
- this.$element
- [dimension](0)
- .one('bsTransitionEnd', $.proxy(complete, this))
- .emulateTransitionEnd(Collapse.TRANSITION_DURATION)
- }
-
- Collapse.prototype.toggle = function () {
- this[this.$element.hasClass('in') ? 'hide' : 'show']()
- }
-
- Collapse.prototype.getParent = function () {
- return $(this.options.parent)
- .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]')
- .each($.proxy(function (i, element) {
- var $element = $(element)
- this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element)
- }, this))
- .end()
- }
-
- Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) {
- var isOpen = $element.hasClass('in')
-
- $element.attr('aria-expanded', isOpen)
- $trigger
- .toggleClass('collapsed', !isOpen)
- .attr('aria-expanded', isOpen)
- }
-
- function getTargetFromTrigger($trigger) {
- var href
- var target = $trigger.attr('data-target')
- || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7
-
- return $(target)
- }
-
-
- // COLLAPSE PLUGIN DEFINITION
- // ==========================
-
- function Plugin(option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.collapse')
- var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)
-
- if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false
- if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))
- if (typeof option == 'string') data[option]()
- })
- }
-
- var old = $.fn.collapse
-
- $.fn.collapse = Plugin
- $.fn.collapse.Constructor = Collapse
-
-
- // COLLAPSE NO CONFLICT
- // ====================
-
- $.fn.collapse.noConflict = function () {
- $.fn.collapse = old
- return this
- }
-
-
- // COLLAPSE DATA-API
- // =================
-
- $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) {
- var $this = $(this)
-
- if (!$this.attr('data-target')) e.preventDefault()
-
- var $target = getTargetFromTrigger($this)
- var data = $target.data('bs.collapse')
- var option = data ? 'toggle' : $this.data()
-
- Plugin.call($target, option)
- })
-
-}(jQuery);
diff --git a/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/dropdown.js b/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/dropdown.js
deleted file mode 100644
index 04e9c2de..00000000
--- a/vnfmarket/src/main/webapp/vnfmarket/common/thirdparty/bootstrap/js/dropdown.js
+++ /dev/null
@@ -1,165 +0,0 @@
-/* ========================================================================
- * Bootstrap: dropdown.js v3.3.7
- * http://getbootstrap.com/javascript/#dropdowns
- * ========================================================================
- * Copyright 2011-2016 Twitter, Inc.
- * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
- * ======================================================================== */
-
-
-+function ($) {
- 'use strict';
-
- // DROPDOWN CLASS DEFINITION
- // =========================
-
- var backdrop = '.dropdown-backdrop'
- var toggle = '[data-toggle="dropdown"]'
- var Dropdown = function (element) {
- $(element).on('click.bs.dropdown', this.toggle)
- }
-
- Dropdown.VERSION = '3.3.7'
-
- function getParent($this) {
- var selector = $this.attr('data-target')
-
- if (!selector) {
- selector = $this.attr('href')
- selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
- }
-
- var $parent = selector && $(selector)
-
- return $parent && $parent.length ? $parent : $this.parent()
- }
-
- function clearMenus(e) {
- if (e && e.which === 3) return
- $(backdrop).remove()
- $(toggle).each(function () {
- var $this = $(this)
- var $parent = getParent($this)
- var relatedTarget = { relatedTarget: this }
-
- if (!$parent.hasClass('open')) return
-
- if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return
-
- $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))
-
- if (e.isDefaultPrevented()) return
-
- $this.attr('aria-expanded', 'false')
- $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))
- })
- }
-
- Dropdown.prototype.toggle = function (e) {
- var $this = $(this)
-
- if ($this.is('.disabled, :disabled')) return
-
- var $parent = getParent($this)
- var isActive = $parent.hasClass('open')
-
- clearMenus()
-
- if (!isActive) {
- if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
- // if mobile we use a backdrop because click events don't delegate
- $(document.createElement('div'))
- .addClass('dropdown-backdrop')
- .insertAfter($(this))
- .on('click', clearMenus)
- }
-
- var relatedTarget = { relatedTarget: this }
- $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))
-
- if (e.isDefaultPrevented()) return
-
- $this
- .trigger('focus')
- .attr('aria-expanded', 'true')
-
- $parent
- .toggleClass('open')
- .trigger($.Event('shown.bs.dropdown', relatedTarget))
- }
-
- return false
- }
-
- Dropdown.prototype.keydown = function (e) {
- if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return
-
- var $this = $(this)
-
- e.preventDefault()
- e.stopPropagation()
-
- if ($this.is('.disabled, :disabled')) return
-
- var $parent = getParent($this)
- var isActive = $parent.hasClass('open')
-
- if (!isActive && e.which != 27 || isActive && e.which == 27) {
- if (e.which == 27) $parent.find(toggle).trigger('focus')
- return $this.trigger('click')
- }
-
- var desc = ' li:not(.disabled):visible a'
- var $items = $parent.find('.dropdown-menu' + desc)
-
- if (!$items.length) return
-
- var index = $items.index(e.target)
-
- if (e.which == 38 && index > 0) index-- // up
- if (e.which == 40 && index < $items.length - 1) index++ // down
- if (!~index) index = 0
-
- $items.eq(index).trigger('focus')
- }
-
-
- // DROPDOWN PLUGIN DEFINITION
- // ==========================
-
- function Plugin(option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.dropdown')
-
- if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))
- if (typeof option == 'string') data[option].call($this)
- })
- }
-
- var old = $.fn.dropdown
-
- $.fn.dropdown = Plugin
- $.fn.dropdown.Constructor = Dropdown
-
-
- // DROPDOWN NO CONFLICT
- // ====================
-
- $.fn.dropdown.noConflict = function () {
- $.fn.dropdown = old
- return this
- }
-
-
- // APPLY TO STANDARD DROPDOWN ELEMENTS
- // ===================================
-
- $(document)
- .on('click.bs.dropdown.data-api', clearMenus)
- .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
- .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)
- .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)
- .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown)
-
-}(jQuery);