You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by an...@apache.org on 2015/05/29 08:57:12 UTC
[1/2] incubator-ignite git commit: # ignite-843 WIP.
Repository: incubator-ignite
Updated Branches:
refs/heads/ignite-843 33f3c9fd3 -> 6ce1c8aa5
# ignite-843 WIP.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/6c04de99
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/6c04de99
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/6c04de99
Branch: refs/heads/ignite-843
Commit: 6c04de99f7f542fd0f5a5bab53f23d560147dc52
Parents: 33f3c9f
Author: Andrey <an...@gridgain.com>
Authored: Thu May 28 18:28:20 2015 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Thu May 28 18:28:20 2015 +0700
----------------------------------------------------------------------
.../public/javascripts/controllers/clusters.js | 37 ++++++++++----------
modules/webconfig/nodejs/views/clusters.jade | 4 +--
2 files changed, 20 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6c04de99/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js b/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
index 8a041da..d864033 100644
--- a/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
+++ b/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
@@ -1,9 +1,9 @@
// Controller for clusters page.
configuratorModule.controller('clustersController', ['$scope', '$modal', '$http',
function($scope, $modal, $http) {
- $scope.editColumn = {};
+ $scope.selectedItem = {};
- $scope.editCluster = {};
+ $scope.backupItem = {};
$scope.templates = [
{value: {discovery: 'TcpDiscoveryVmIpFinder', addresses: ['127.0.0.1:47500..47510']}, label: 'Local'},
@@ -99,27 +99,26 @@ configuratorModule.controller('clustersController', ['$scope', '$modal', '$http'
multicastModal.$promise.then(multicastModal.show);
};
+ //function revertSelectedItem() {
+ // if ($scope.selectedItem) {
+ // //$scope.clusters[$scope.clusters.indexOf($scope.currentCluster)] = $scope.editCluster;
+ // //
+ // //$scope.currentCluster = undefined;
+ // //
+ // //$scope.editColumn = undefined;
+ // //
+ // //$scope.clustersTable.reload();
+ // }
+ //};
- $scope.beginEditCluster = function(column, cluster) {
- $scope.revertCluster();
-
- $scope.currentCluster = cluster;
-
- $scope.editColumn = column;
-
- $scope.editCluster = angular.copy(cluster);
- };
-
- $scope.revertCluster = function() {
- if ($scope.editColumn && $scope.currentCluster) {
- $scope.clusters[$scope.clusters.indexOf($scope.currentCluster)] = $scope.editCluster;
+ $scope.selectItem = function(item) {
+ console.log(item);
- $scope.currentCluster = undefined;
+ //revertSelectedItem();
- $scope.editColumn = undefined;
+ $scope.selectedItem = item;
- $scope.clustersTable.reload();
- }
+ //$scope.backupItem = angular.copy(item);
};
// Add new cluster.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6c04de99/modules/webconfig/nodejs/views/clusters.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/clusters.jade b/modules/webconfig/nodejs/views/clusters.jade
index f7c2fbc..0ffd5eb 100644
--- a/modules/webconfig/nodejs/views/clusters.jade
+++ b/modules/webconfig/nodejs/views/clusters.jade
@@ -32,7 +32,7 @@ block content
th(st-sort='name') Name
th.col-sm-1 Action
tbody
- tr(st-select-row='row' ng-click='cluster=row' st-select-mode='single' ng-repeat='row in rowCollection')
+ tr(st-select-row='row' ng-click='selectItem(row)' st-select-mode='single' ng-repeat='row in rowCollection')
td {{$index + 1}}
td {{row.name}}
td
@@ -53,4 +53,4 @@ block content
.form-group
label.control-label.col-sm-2 Cluster name
.col-sm-10
- input.form-control(type="text" ng-model='cluster.name')
\ No newline at end of file
+ input.form-control(type="text" ng-model='selectedItem.name')
\ No newline at end of file
[2/2] incubator-ignite git commit: # ignite-843 WIP.
Posted by an...@apache.org.
# ignite-843 WIP.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/6ce1c8aa
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/6ce1c8aa
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/6ce1c8aa
Branch: refs/heads/ignite-843
Commit: 6ce1c8aa5930cc69620936ec367df490ba53083b
Parents: 6c04de9
Author: Andrey <an...@gridgain.com>
Authored: Fri May 29 13:57:10 2015 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Fri May 29 13:57:10 2015 +0700
----------------------------------------------------------------------
modules/webconfig/nodejs/db.js | 10 +-
.../public/javascripts/controllers/clusters.js | 96 ++------------------
.../nodejs/public/stylesheets/style.css | 2 +-
.../nodejs/public/stylesheets/style.less | 11 ++-
modules/webconfig/nodejs/views/clusters.jade | 43 +++++++--
.../webconfig/nodejs/views/layout-sidebar.jade | 35 +++----
modules/webconfig/nodejs/views/login.jade | 16 ++++
7 files changed, 91 insertions(+), 122 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6ce1c8aa/modules/webconfig/nodejs/db.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/db.js b/modules/webconfig/nodejs/db.js
index 7b8e3a8..f6aa4c0 100644
--- a/modules/webconfig/nodejs/db.js
+++ b/modules/webconfig/nodejs/db.js
@@ -31,9 +31,13 @@ exports.Space = mongoose.model('Space', new Schema({
// Define cluster model.
exports.Cluster = mongoose.model('Cluster', new Schema({
space: { type: ObjectId, ref: 'Space' },
- name : String,
- discovery : { type: String, enum: ['TcpDiscoveryVmIpFinder', 'TcpDiscoveryMulticastIpFinder'] },
- addresses : [String]
+ name: String,
+ discovery: { type: String, enum: ['TcpDiscoveryVmIpFinder', 'TcpDiscoveryMulticastIpFinder'] },
+ addresses: [String],
+ pubPoolSize: Number,
+ sysPoolSize: Number,
+ mgmtPoolSize: Number,
+ p2pPoolSize: Number
}));
// Define cache model.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6ce1c8aa/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js b/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
index d864033..b435e6e 100644
--- a/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
+++ b/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
@@ -1,10 +1,6 @@
// Controller for clusters page.
configuratorModule.controller('clustersController', ['$scope', '$modal', '$http',
function($scope, $modal, $http) {
- $scope.selectedItem = {};
-
- $scope.backupItem = {};
-
$scope.templates = [
{value: {discovery: 'TcpDiscoveryVmIpFinder', addresses: ['127.0.0.1:47500..47510']}, label: 'Local'},
{value: {discovery: 'TcpDiscoveryMulticastIpFinder'}, label: 'Basic'}
@@ -34,91 +30,10 @@ configuratorModule.controller('clustersController', ['$scope', '$modal', '$http'
.success(function(data) {
$scope.spaces = data.spaces;
$scope.clusters = data.clusters;
-
- //$scope.clustersTable = new ngTableParams({
- // page: 1, // Show first page.
- // count: Number.MAX_VALUE, // Count per page.
- // sorting: {name: 'asc'} // Initial sorting.
- //}, {
- // total: $scope.clusters.length, // Length of data.
- // counts: [],
- // getData: function($defer, params) {
- // // Use build-in angular filter.
- // var orderedData = params.sorting() ?
- // $filter('orderBy')($scope.clusters, params.orderBy()) :
- // $scope.clusters;
- //
- // var page = params.page();
- // var cnt = params.count();
- //
- // $defer.resolve(orderedData.slice(page - 1 * cnt, page * cnt));
- // }
- //});
});
- // Create popup for tcpDiscoveryVmIpFinder advanced settings.
- var staticIpsModal = $modal({scope: $scope, template: '/staticIps', show: false});
-
- //$scope.editStaticIps = function(cluster) {
- // $scope.staticIpsTable = new ngTableParams({
- // page: 1, // Show first page.
- // count: Number.MAX_VALUE // Count per page.
- // }, {
- // total: cluster.addresses.length, // Length of data.
- // counts: [],
- // getData: function($defer, params) {
- // var addresses = cluster.addresses;
- //
- // var page = params.page();
- // var cnt = params.count();
- //
- // $defer.resolve(addresses.slice(page - 1 * cnt, page * cnt));
- // }
- // });
- //
- // staticIpsModal.$promise.then(staticIpsModal.show);
- //};
-
- // Add new cluster.
- $scope.addStaticIp = function(cluster) {
- cluster.push({space: $scope.spaces[0]._id, discovery: 'TcpDiscoveryVmIpFinder'});
-
- $scope.clustersTable.reload();
- };
-
- $scope.beginEditStaticIp = function(address) {
- $scope.revertStaticIp();
-
- $scope.editAddress = angular.copy(address);
- };
-
- // Create popup for tcpDiscoveryMulticastIpFinder advanced settings.
- var multicastModal = $modal({scope: $scope, template: '/staticIps', show: false});
-
- $scope.editMulticast = function(cluster) {
- multicastModal.$promise.then(multicastModal.show);
- };
-
- //function revertSelectedItem() {
- // if ($scope.selectedItem) {
- // //$scope.clusters[$scope.clusters.indexOf($scope.currentCluster)] = $scope.editCluster;
- // //
- // //$scope.currentCluster = undefined;
- // //
- // //$scope.editColumn = undefined;
- // //
- // //$scope.clustersTable.reload();
- // }
- //};
-
$scope.selectItem = function(item) {
- console.log(item);
-
- //revertSelectedItem();
-
- $scope.selectedItem = item;
-
- //$scope.backupItem = angular.copy(item);
+ $scope.backupItem = item.isSelected ? angular.copy(item) : undefined;
};
// Add new cluster.
@@ -130,7 +45,7 @@ configuratorModule.controller('clustersController', ['$scope', '$modal', '$http'
$scope.create = {};
- saveCluster(item);
+ $scope.saveCluster(item);
};
// Remove new cluster.
@@ -139,8 +54,6 @@ configuratorModule.controller('clustersController', ['$scope', '$modal', '$http'
.success(function(data) {
$scope.spaces = data.spaces;
$scope.clusters = data.clusters;
-
- $scope.clustersTable.reload();
})
.error(function(errorMessage) {
console.log('Error: ' + errorMessage);
@@ -148,11 +61,14 @@ configuratorModule.controller('clustersController', ['$scope', '$modal', '$http'
};
// Save cluster in db.
- function saveCluster(cluster) {
+ $scope.saveCluster = function (cluster) {
$http.post('/rest/clusters/save', cluster)
.success(function(data) {
$scope.spaces = data.spaces;
+
$scope.clusters = data.clusters;
+
+ $scope.backupItem = undefined;
})
.error(function(errorMessage) {
console.log('Error: ' + errorMessage);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6ce1c8aa/modules/webconfig/nodejs/public/stylesheets/style.css
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/stylesheets/style.css b/modules/webconfig/nodejs/public/stylesheets/style.css
index ea51de3..cf9c71a 100644
--- a/modules/webconfig/nodejs/public/stylesheets/style.css
+++ b/modules/webconfig/nodejs/public/stylesheets/style.css
@@ -1 +1 @@
-.main-header .logo{height:auto}.main-sidebar{padding-top:60px}.navbar-default .navbar-brand,.navbar-default .navbar-brand:hover{position:absolute;width:100%;left:0;text-align:center}.modal-backdrop.am-fade{opacity:.5;transition:opacity .15s linear}.modal-backdrop.am-fade.ng-enter{opacity:0}.modal-backdrop.am-fade.ng-enter.ng-enter-active{opacity:.5}.modal-backdrop.am-fade.ng-leave{opacity:.5}.modal-backdrop.am-fade.ng-leave.ng-leave-active{opacity:0}.modal.center .modal-dialog{position:fixed;top:40%;left:50%;min-width:320px;max-width:630px;width:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.ng-table th.text-right{text-align:right}.ng-table th.text-left{text-align:left}.ng-table th.text-center{text-align:center}.fa.fa-remove{color:red}.border-left{-webkit-box-shadow:1px 0 0px 0px #eee inset;box-shadow:1px 0 0px 0px #eee inset}.border-right{-webkit-box-shadow:1px 0 0px 0px #eee;box-shadow:1px 0 0px 0px #eee}.theme-line{background-
color:#f9f9f9}.theme-line header{background-color:#fff}.theme-line header .search-bar{width:90%;margin:30px auto 0;-webkit-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 0 0 5px rgba(0,0,0,0.1),0 0 0 1px rgba(0,0,0,0.1);box-shadow:0 0 0 5px rgba(0,0,0,0.1),0 0 0 1px rgba(0,0,0,0.1);position:relative}.theme-line header .search-bar.focus{-webkit-box-shadow:0 0 0 5px rgba(0,0,0,0.2),0 0 0 1px rgba(0,0,0,0.1);box-shadow:0 0 0 5px rgba(0,0,0,0.2),0 0 0 1px rgba(0,0,0,0.1)}.theme-line header .search-bar .fa{position:absolute;top:10px;left:14px;font-size:21px;color:#ccc;z-index:10}.theme-line header .search-bar .twitter-typeahead{width:100%}.theme-line header .search-bar input{-webkit-border-radius:5px;border-radius:5px;height:100%;border:0 none;-webkit-box-shadow:0 2px 2px rgba(0,0,0,0.1) inset;box-shadow:0 2px 2px rgba(0,0,0,0.1) inset;color:#444;width:100%;padding:13px 13px 13px 50px;font-size:14px}.theme-line header .search-bar input.tt-hint{color:#bbb}.theme-line header .sea
rch-bar input:active .theme-line header .search-bar input:focus{outline:0 none;-webkit-box-shadow:0 2px 2px rgba(0,0,0,0.2) inset;box-shadow:0 2px 2px rgba(0,0,0,0.2) inset}.theme-line header .search-bar .tt-dropdown-menu,.theme-solid header .search-bar .tt-dropdown-menu{width:100%;text-align:left}.theme-line header .search-bar .tt-dropdown-menu h3{padding:0 45px;color:#ccc;font-weight:bold;font-size:12px;margin:10px 0 4px;text-transform:uppercase}.theme-line header .search-bar .tt-dropdown-menu .tt-suggestions{display:block}.theme-line header .search-bar .tt-dropdown-menu .tt-suggestions .tt-suggestion{cursor:pointer;font-size:14px;padding:4px 45px}.theme-line header .search-bar .tt-dropdown-menu .tt-suggestions .tt-suggestion p{color:#333;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.theme-line header .search-bar .tt-cursor{background-color:#eee}.theme-line header .search-bar .tt-cursor p{color:#fff}.theme-line header a.btn{border:0 none;padd
ing:10px 25px;background-color:rgba(0,0,0,0.15)}.theme-line header a.btn:hover{background-color:rgba(0,0,0,0.25)}.theme-line header a.btn.btn-link{background:transparent;color:rgba(255,255,255,0.8)}.theme-line header a.btn.btn-link:hover{color:#fff;text-decoration:none}.theme-line .navbar-nav a{background-color:transparent}.theme-line .navbar-nav a:hover,.theme-line .navbar-nav a:active,.theme-line .navbar-nav a:focus{background-color:transparent}.theme-line .navbar-nav .active a{font-weight:bold}.theme-line .main-links{padding-top:50px}.theme-line .main-links h3{margin-top:0;font-size:17px}.theme-line .main-links .links a{color:#888}.theme-line .main-links .links a:hover{text-decoration:none}.theme-line #category-columns,.theme-solid #category-columns{margin:50px 30px 0}.theme-line #category-columns h4{text-transform:uppercase;font-weight:300;color:#999;font-size:14px}.theme-line #category-columns ul{list-style:none;padding:0;margin-bottom:15px}.theme-line #category-columns ul li a
{padding:4px 0;display:block;font-size:16px}.theme-line #category-columns ul .view-all{font-size:0.85em}.theme-line .docs-header{color:#999;overflow:hidden}.theme-line .docs-header h1{color:#444;margin-top:0;font-size:25px}.theme-line .btn-primary{border:0 none}.theme-line .main-content .nav-horizontal a{-webkit-box-shadow:0 0;box-shadow:0 0;border:0 none;background-color:#fff;-webkit-border-radius:0;border-radius:0;color:#aaa;padding:6px;margin:0 14px}.theme-line .main-content .nav-horizontal a:hover{color:#999;border-bottom:4px solid #ddd}.theme-line .main-content .nav-horizontal a.active{border-bottom:4px solid #888}.theme-line .sidebar-nav{color:#474a54;padding-bottom:30px}.theme-line .sidebar-nav ul{padding:0;list-style:none;font-size:13px;margin:3px 0 0}.theme-line .sidebar-nav ul li a{padding:3px 0;display:block;color:#666;position:relative;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.theme-line .sidebar-nav ul li a:before{top:0;content
:" ";display:block;width:6px;height:100%;position:absolute;left:-30px}.theme-line .sidebar-nav ul li a:hover{text-decoration:none}.theme-line .sidebar-nav ul li a.active{font-weight:bold}.theme-line .sidebar-nav ul li .subcategory{padding-left:15px}.theme-line .sidebar-nav h4{margin-top:2em;font-weight:normal;text-transform:uppercase;font-size:11px;margin-bottom:10px;color:#bbb}.theme-line .sidebar-nav h4:first-child{margin-top:0em}.theme-line .sidebar-nav .ask{width:100%;text-align:center;padding:10px}.theme-line .border-left .sidebar-nav{padding-left:15px}.theme-line .suggest{padding:4px;display:inline-block;font-size:12px}.header{padding:15px}.header .has-github{padding-right:136px}.header h1.navbar-brand{height:40px;width:200px;padding:0;margin:0;margin-top:5px;margin-right:15px}.header h1.navbar-brand a{text-indent:-99999px;background-position:center center;display:block;width:100%;height:100%;-webkit-background-size:contain;-moz-background-size:contain;background-size:contain;
background-repeat:no-repeat}.header .nav.navbar-nav.pull-right{position:relative;right:-30px}.header .nav.navbar-nav .not-link{padding:15px;display:inline-block}.header .nav.navbar-nav .stable,.header .nav.navbar-nav .beta,.header .nav.navbar-nav .private{font-size:9px;padding:3px 5px;display:inline-block;line-height:8px;-webkit-border-radius:3px;border-radius:3px;margin-left:6px;color:#fff;top:-2px;position:relative;opacity:0.6;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";filter:alpha(opacity=60)}.header .nav.navbar-nav a:hover>.stable,.header .nav.navbar-nav a:hover>.beta,.header .nav.navbar-nav a:hover>.private{opacity:1;-ms-filter:none;filter:none}.header .nav.navbar-nav .beta{background-color:#59c3d1}.header .nav.navbar-nav .stable{background-color:#41b841}.header .nav.navbar-nav .private{background-color:#333}.header #jumbotron{margin:55px 70px 50px;text-align:center}.header #jumbotron h2{margin-top:0;margin-bottom:20px}.header #jumbotron p{margin-bottom:0;
line-height:1.6em;font-size:16px}.header #jumbotron .btn{margin-top:20px}.header .searchbox{position:relative;margin-right:15px;top:9px}.header .searchbox .fa-search{position:absolute;top:8px;right:10px;color:#777;pointer-events:none}.header .searchbox .typeahead{line-height:1.25em;-webkit-transition:.3s ease-out;-moz-transition:.3s ease-out;-o-transition:.3s ease-out;-ms-transition:.3s ease-out;transition:.3s ease-out;background-color:rgba(0,0,0,0.05);-webkit-border-radius:5px;border-radius:5px;width:95px}.header .searchbox .typeahead:focus,.header .searchbox .typeahead:active{outline:0 none}.header .searchbox .tt-dropdown-menu{max-width:350px;margin-left:-100px}.header .searchbox .tt-dropdown-menu h3{width:100px;float:left;margin:0;padding:8px 0 6px 15px;font-size:13px;color:#bbb}.header .searchbox .tt-dropdown-menu .tt-suggestions{display:block;float:left;width:250px}.header .searchbox .tt-dropdown-menu .tt-suggestions .tt-suggestion{font-size:14px}.header .searchbox .tt-dropdown
-menu .tt-suggestions .tt-suggestion p{white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.header .searchbox .tt-cursor{background-color:#eee}.header .searchbox .tt-cursor p{color:#fff}.header .searchbox input{border:0 none;display:inline-block;font-size:14px;padding:6px 32px 6px 12px;margin:0}.header .searchbox input.tt-hint{height:auto}.header .searchbox.focus input{width:250px}.theme-line header{border-bottom:8px solid}.theme-line header h2{color:#aaa}.theme-line header p{color:#666}.theme-line .navbar-nav{color:#888}.theme-line .navbar-nav a{color:#bbb}.theme-line.lumosity-light .searchbox .tt-cursor p{color:rgba(0,0,0,0.7)}.theme-line header{border-bottom-color:#ec1c24}.theme-line header a.btn{background-color:#ec1c24}.theme-line header a.btn:hover{background-color:#950d12}.theme-line header .navbar-nav a:hover,.theme-line header .navbar-nav .open>a{color:#ec1c24}.theme-line header .navbar-nav .tt-cursor{background-color:#ec1c24}.theme-line .nav
bar-nav .active a{font-weight:bold;color:#ec1c24}.theme-line .navbar-nav .active a:hover{color:#950d12}.theme-line .main-links .links a:hover{color:#ec1c24}.theme-line .main-content a{color:#ec1c24}.theme-line .main-content a:hover{color:#950d12}.theme-line .sidebar-nav ul li a.active:before{background-color:#ec1c24}.theme-line .sidebar-nav ul li a.active{color:#ec1c24}.theme-line .sidebar-nav ul li a:hover,.theme-line .sidebar-nav ul li a.active:hover{color:#950d12}.theme-line .btn-primary{background-color:#ec1c24}.theme-line .btn-primary:hover{background-color:#950d12}.theme-line .main-content .nav-horizontal a.active{border-color:#ec1c24;color:#ec1c24}.theme-line .main-content .nav-horizontal a:hover{color:#950d12}.theme-line .main-content .nav-horizontal a.active:hover{border-color:#950d12}.theme-line header .navbar-nav a.active,.theme-line #versions-list li a:hover strong,.theme-line #versions-list li a.active .current,.theme-line #versions-list li a:active .current{color:#ec1c
24}.theme-line.body-threes .section-right .threes-nav .btn-default:hover,.theme-line.page-docs.body-threes .section-right .threes-nav .pull-right a:hover{color:#ec1c24;border-color:#ec1c24}.body-overlap .main-content{margin-top:30px}.body-box .main-content,.body-overlap .main-content{padding:30px;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.1);box-shadow:0 0 0 1px rgba(0,0,0,0.1);background-color:#fff}body{font-weight:400;font-family:Roboto Slab, serif}h1,h2,h3,h4,h5,h6{font-weight:700;font-family:Roboto Slab, serif}.submit-vote.submit-vote-parent.voted a.submit-vote-button,.submit-vote.submit-vote-parent a.submit-vote-button:hover{background-color:#ec1c24}div.submit-vote.submit-vote-parent.voted a.submit-vote-button:hover{background-color:#950d12}a,.link .title{color:#ec1c24}a:hover,.link:hover .title{color:#950d12}.header h1.navbar-brand a{background-image:url("https://www.filepicker.io/api/file/QagunjDGRFul2JgNCAli")}.header h1.navbar-brand{width:96px}.block-edit-parameters{text-ali
gn:right;padding-bottom:5px}.ng-table-pager{display:none}.container-footer{margin-top:20px}.vcenter{vertical-align:middle}.modal{display:block;overflow:hidden}.modal .close{position:absolute;top:24px;right:24px;float:none}.modal .modal-dialog{width:610px}.modal .modal-content{-webkit-border-radius:0;border-radius:0;background-color:#f7f7f7}.modal .modal-content .modal-header{background-color:#fff;text-align:center;color:#555;padding:24px;font-family:"myriad-pro",sans-serif}.modal .modal-content .modal-header h4{font-family:"myriad-pro",sans-serif;font-size:22px}.modal .modal-content .modal-header h4 .fa{display:block;font-size:41px;color:#ddd;margin-bottom:5px}.modal .modal-content .modal-header p{margin:0;color:#aaa;font-size:1em;margin-top:3px}.modal .modal-content .modal-spacer{padding:10px 10px 0 10px}.modal .modal-content .modal-footer{margin-top:0}.modal-body{padding-top:30px}h1.ignite-logo{background-image:url("https://www.filepicker.io/api/file/QagunjDGRFul2JgNCAli")}.st-sor
t-ascent:after{content:'\25B2'}.st-sort-descent:after{content:'\25BC'}.st-selected{background:#216eff;color:white}.docs-content table{width:100%;border-top:1px solid #ccc;border-left:1px solid #ccc;margin-bottom:30px}.docs-content th{text-align:center;border-right:1px solid #ccc;border-bottom:1px solid #ccc;background-color:#f7f7f7;padding:5px}.docs-content td{text-align:center;border-right:1px solid #ccc;border-bottom:1px solid #ccc;vertical-align:middle;padding:5px}.docs-content td>.input-group{display:block}.docs-content td>.input-group input{width:50%}.docs-content td>.input-group button{width:50%;border-left:0}.block-display-image img{max-width:100%;max-height:450px;margin:auto;display:block}.greedy{min-height:200px;height:calc(100vh - 230px)}
\ No newline at end of file
+.main-header .logo{height:auto}.main-sidebar{padding-top:60px}.navbar-default .navbar-brand,.navbar-default .navbar-brand:hover{position:absolute;width:100%;left:0;text-align:center}.modal-backdrop.am-fade{opacity:.5;transition:opacity .15s linear}.modal-backdrop.am-fade.ng-enter{opacity:0}.modal-backdrop.am-fade.ng-enter.ng-enter-active{opacity:.5}.modal-backdrop.am-fade.ng-leave{opacity:.5}.modal-backdrop.am-fade.ng-leave.ng-leave-active{opacity:0}.modal.center .modal-dialog{position:fixed;top:40%;left:50%;min-width:320px;max-width:630px;width:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.ng-table th.text-right{text-align:right}.ng-table th.text-left{text-align:left}.ng-table th.text-center{text-align:center}.fa.fa-remove{color:red}.border-left{-webkit-box-shadow:1px 0 0px 0px #eee inset;box-shadow:1px 0 0px 0px #eee inset}.border-right{-webkit-box-shadow:1px 0 0px 0px #eee;box-shadow:1px 0 0px 0px #eee}.theme-line{background-
color:#f9f9f9}.theme-line header{background-color:#fff}.theme-line header .search-bar{width:90%;margin:30px auto 0;-webkit-border-radius:5px;border-radius:5px;-webkit-box-shadow:0 0 0 5px rgba(0,0,0,0.1),0 0 0 1px rgba(0,0,0,0.1);box-shadow:0 0 0 5px rgba(0,0,0,0.1),0 0 0 1px rgba(0,0,0,0.1);position:relative}.theme-line header .search-bar.focus{-webkit-box-shadow:0 0 0 5px rgba(0,0,0,0.2),0 0 0 1px rgba(0,0,0,0.1);box-shadow:0 0 0 5px rgba(0,0,0,0.2),0 0 0 1px rgba(0,0,0,0.1)}.theme-line header .search-bar .fa{position:absolute;top:10px;left:14px;font-size:21px;color:#ccc;z-index:10}.theme-line header .search-bar .twitter-typeahead{width:100%}.theme-line header .search-bar input{-webkit-border-radius:5px;border-radius:5px;height:100%;border:0 none;-webkit-box-shadow:0 2px 2px rgba(0,0,0,0.1) inset;box-shadow:0 2px 2px rgba(0,0,0,0.1) inset;color:#444;width:100%;padding:13px 13px 13px 50px;font-size:14px}.theme-line header .search-bar input.tt-hint{color:#bbb}.theme-line header .sea
rch-bar input:active .theme-line header .search-bar input:focus{outline:0 none;-webkit-box-shadow:0 2px 2px rgba(0,0,0,0.2) inset;box-shadow:0 2px 2px rgba(0,0,0,0.2) inset}.theme-line header .search-bar .tt-dropdown-menu,.theme-solid header .search-bar .tt-dropdown-menu{width:100%;text-align:left}.theme-line header .search-bar .tt-dropdown-menu h3{padding:0 45px;color:#ccc;font-weight:bold;font-size:12px;margin:10px 0 4px;text-transform:uppercase}.theme-line header .search-bar .tt-dropdown-menu .tt-suggestions{display:block}.theme-line header .search-bar .tt-dropdown-menu .tt-suggestions .tt-suggestion{cursor:pointer;font-size:14px;padding:4px 45px}.theme-line header .search-bar .tt-dropdown-menu .tt-suggestions .tt-suggestion p{color:#333;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.theme-line header .search-bar .tt-cursor{background-color:#eee}.theme-line header .search-bar .tt-cursor p{color:#fff}.theme-line header a.btn{border:0 none;padd
ing:10px 25px;background-color:rgba(0,0,0,0.15)}.theme-line header a.btn:hover{background-color:rgba(0,0,0,0.25)}.theme-line header a.btn.btn-link{background:transparent;color:rgba(255,255,255,0.8)}.theme-line header a.btn.btn-link:hover{color:#fff;text-decoration:none}.theme-line .navbar-nav a{background-color:transparent}.theme-line .navbar-nav a:hover,.theme-line .navbar-nav a:active,.theme-line .navbar-nav a:focus{background-color:transparent}.theme-line .navbar-nav .active a{font-weight:bold}.theme-line .main-links{padding-top:50px}.theme-line .main-links h3{margin-top:0;font-size:17px}.theme-line .main-links .links a{color:#888}.theme-line .main-links .links a:hover{text-decoration:none}.theme-line #category-columns,.theme-solid #category-columns{margin:50px 30px 0}.theme-line #category-columns h4{text-transform:uppercase;font-weight:300;color:#999;font-size:14px}.theme-line #category-columns ul{list-style:none;padding:0;margin-bottom:15px}.theme-line #category-columns ul li a
{padding:4px 0;display:block;font-size:16px}.theme-line #category-columns ul .view-all{font-size:0.85em}.theme-line .docs-header{color:#999;overflow:hidden}.theme-line .docs-header h1{color:#444;margin-top:0;font-size:25px}.theme-line .btn-primary{border:0 none}.theme-line .main-content .nav-horizontal a{-webkit-box-shadow:0 0;box-shadow:0 0;border:0 none;background-color:#fff;-webkit-border-radius:0;border-radius:0;color:#aaa;padding:6px;margin:0 14px}.theme-line .main-content .nav-horizontal a:hover{color:#999;border-bottom:4px solid #ddd}.theme-line .main-content .nav-horizontal a.active{border-bottom:4px solid #888}.theme-line .sidebar-nav{color:#474a54;padding-bottom:30px}.theme-line .sidebar-nav ul{padding:0;list-style:none;font-size:13px;margin:3px 0 0}.theme-line .sidebar-nav ul li a{padding:3px 0;display:block;color:#666;position:relative;white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.theme-line .sidebar-nav ul li a:before{top:0;content
:" ";display:block;width:6px;height:100%;position:absolute;left:-30px}.theme-line .sidebar-nav ul li a:hover{text-decoration:none}.theme-line .sidebar-nav ul li a.active{font-weight:bold}.theme-line .sidebar-nav ul li .subcategory{padding-left:15px}.theme-line .sidebar-nav h4{margin-top:2em;font-weight:normal;text-transform:uppercase;font-size:11px;margin-bottom:10px;color:#bbb}.theme-line .sidebar-nav h4:first-child{margin-top:0em}.theme-line .sidebar-nav .ask{width:100%;text-align:center;padding:10px}.theme-line .border-left .sidebar-nav{padding-left:15px}.theme-line .suggest{padding:4px;display:inline-block;font-size:12px}.header{padding:15px}.header .has-github{padding-right:136px}.header h1.navbar-brand{height:40px;width:200px;padding:0;margin:0;margin-top:5px;margin-right:15px}.header h1.navbar-brand a{text-indent:-99999px;background-position:center center;display:block;width:100%;height:100%;-webkit-background-size:contain;-moz-background-size:contain;background-size:contain;
background-repeat:no-repeat}.header .nav.navbar-nav.pull-right{position:relative;right:-30px}.header .nav.navbar-nav .not-link{padding:15px;display:inline-block}.header .nav.navbar-nav .stable,.header .nav.navbar-nav .beta,.header .nav.navbar-nav .private{font-size:9px;padding:3px 5px;display:inline-block;line-height:8px;-webkit-border-radius:3px;border-radius:3px;margin-left:6px;color:#fff;top:-2px;position:relative;opacity:0.6;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";filter:alpha(opacity=60)}.header .nav.navbar-nav a:hover>.stable,.header .nav.navbar-nav a:hover>.beta,.header .nav.navbar-nav a:hover>.private{opacity:1;-ms-filter:none;filter:none}.header .nav.navbar-nav .beta{background-color:#59c3d1}.header .nav.navbar-nav .stable{background-color:#41b841}.header .nav.navbar-nav .private{background-color:#333}.header #jumbotron{margin:55px 70px 50px;text-align:center}.header #jumbotron h2{margin-top:0;margin-bottom:20px}.header #jumbotron p{margin-bottom:0;
line-height:1.6em;font-size:16px}.header #jumbotron .btn{margin-top:20px}.header .searchbox{position:relative;margin-right:15px;top:9px}.header .searchbox .fa-search{position:absolute;top:8px;right:10px;color:#777;pointer-events:none}.header .searchbox .typeahead{line-height:1.25em;-webkit-transition:.3s ease-out;-moz-transition:.3s ease-out;-o-transition:.3s ease-out;-ms-transition:.3s ease-out;transition:.3s ease-out;background-color:rgba(0,0,0,0.05);-webkit-border-radius:5px;border-radius:5px;width:95px}.header .searchbox .typeahead:focus,.header .searchbox .typeahead:active{outline:0 none}.header .searchbox .tt-dropdown-menu{max-width:350px;margin-left:-100px}.header .searchbox .tt-dropdown-menu h3{width:100px;float:left;margin:0;padding:8px 0 6px 15px;font-size:13px;color:#bbb}.header .searchbox .tt-dropdown-menu .tt-suggestions{display:block;float:left;width:250px}.header .searchbox .tt-dropdown-menu .tt-suggestions .tt-suggestion{font-size:14px}.header .searchbox .tt-dropdown
-menu .tt-suggestions .tt-suggestion p{white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis}.header .searchbox .tt-cursor{background-color:#eee}.header .searchbox .tt-cursor p{color:#fff}.header .searchbox input{border:0 none;display:inline-block;font-size:14px;padding:6px 32px 6px 12px;margin:0}.header .searchbox input.tt-hint{height:auto}.header .searchbox.focus input{width:250px}.theme-line header{border-bottom:8px solid}.theme-line header h2{color:#aaa}.theme-line header p{color:#666}.theme-line .navbar-nav{color:#888}.theme-line .navbar-nav a{color:#bbb}.theme-line.lumosity-light .searchbox .tt-cursor p{color:rgba(0,0,0,0.7)}.theme-line header{border-bottom-color:#ec1c24}.theme-line header a.btn{background-color:#ec1c24}.theme-line header a.btn:hover{background-color:#950d12}.theme-line header .navbar-nav a:hover,.theme-line header .navbar-nav .open>a{color:#ec1c24}.theme-line header .navbar-nav .tt-cursor{background-color:#ec1c24}.theme-line .nav
bar-nav .active a{font-weight:bold;color:#ec1c24}.theme-line .navbar-nav .active a:hover{color:#950d12}.theme-line .main-links .links a:hover{color:#ec1c24}.theme-line .main-content a{color:#ec1c24}.theme-line .main-content a:hover{color:#950d12}.theme-line .sidebar-nav ul li a.active:before{background-color:#ec1c24}.theme-line .sidebar-nav ul li a.active{color:#ec1c24}.theme-line .sidebar-nav ul li a:hover,.theme-line .sidebar-nav ul li a.active:hover{color:#950d12}.theme-line .btn-primary{background-color:#ec1c24}.theme-line .btn-primary:hover{background-color:#950d12}.theme-line .main-content .nav-horizontal a.active{border-color:#ec1c24;color:#ec1c24}.theme-line .main-content .nav-horizontal a:hover{color:#950d12}.theme-line .main-content .nav-horizontal a.active:hover{border-color:#950d12}.theme-line header .navbar-nav a.active,.theme-line #versions-list li a:hover strong,.theme-line #versions-list li a.active .current,.theme-line #versions-list li a:active .current{color:#ec1c
24}.theme-line.body-threes .section-right .threes-nav .btn-default:hover,.theme-line.page-docs.body-threes .section-right .threes-nav .pull-right a:hover{color:#ec1c24;border-color:#ec1c24}.body-overlap .main-content{margin-top:30px}.body-box .main-content,.body-overlap .main-content{padding:30px;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.1);box-shadow:0 0 0 1px rgba(0,0,0,0.1);background-color:#fff}body{font-weight:400;font-family:Roboto Slab, serif}h1,h2,h3,h4,h5,h6{font-weight:700;font-family:Roboto Slab, serif}.submit-vote.submit-vote-parent.voted a.submit-vote-button,.submit-vote.submit-vote-parent a.submit-vote-button:hover{background-color:#ec1c24}div.submit-vote.submit-vote-parent.voted a.submit-vote-button:hover{background-color:#950d12}a,.link .title{color:#ec1c24}a:hover,.link:hover .title{color:#950d12}.header h1.navbar-brand a{background-image:url("https://www.filepicker.io/api/file/QagunjDGRFul2JgNCAli")}.header h1.navbar-brand{width:96px}.block-edit-parameters{text-ali
gn:right;padding-bottom:5px}.ng-table-pager{display:none}.container-footer{margin-top:20px}.vcenter{vertical-align:middle}.modal{display:block;overflow:hidden}.modal .close{position:absolute;top:24px;right:24px;float:none}.modal .modal-dialog{width:610px}.modal .modal-content{-webkit-border-radius:0;border-radius:0;background-color:#f7f7f7}.modal .modal-content .modal-header{background-color:#fff;text-align:center;color:#555;padding:24px;font-family:"myriad-pro",sans-serif}.modal .modal-content .modal-header h4{font-family:"myriad-pro",sans-serif;font-size:22px}.modal .modal-content .modal-header h4 .fa{display:block;font-size:41px;color:#ddd;margin-bottom:5px}.modal .modal-content .modal-header p{margin:0;color:#aaa;font-size:1em;margin-top:3px}.modal .modal-content .modal-spacer{padding:10px 10px 0 10px}.modal .modal-content .modal-footer{margin-top:0}.modal-body{padding-top:30px}h1.ignite-logo{background-image:url("https://www.filepicker.io/api/file/QagunjDGRFul2JgNCAli")}.st-sor
t-ascent:after{content:'\25B2'}.st-sort-descent:after{content:'\25BC'}.st-selected{background:#216eff;color:white}.docs-content table{width:100%;border-top:1px solid #ccc;border-left:1px solid #ccc;margin-bottom:30px}.docs-content th{text-align:center;border-right:1px solid #ccc;border-bottom:1px solid #ccc;background-color:#f7f7f7;padding:5px}.docs-content td{text-align:center;border-right:1px solid #ccc;border-bottom:1px solid #ccc;vertical-align:middle;padding:5px}.docs-content td>.input-group{display:block}.docs-content td>.input-group input{width:50%}.docs-content td>.input-group button{width:50%;border-left:0}.block-display-image img{max-width:100%;max-height:450px;margin:auto;display:block}.greedy{min-height:200px;height:calc(100vh - 230px)}.advanced{border-width:0 0 1px 0}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6ce1c8aa/modules/webconfig/nodejs/public/stylesheets/style.less
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/stylesheets/style.less b/modules/webconfig/nodejs/public/stylesheets/style.less
index 35cb830..3aefbcb 100644
--- a/modules/webconfig/nodejs/public/stylesheets/style.less
+++ b/modules/webconfig/nodejs/public/stylesheets/style.less
@@ -154,7 +154,7 @@
padding: 4px 45px;
}
-.theme-line header .search-bar .tt-dropdown-menu .tt-suggestions .tt-suggestion p{
+.theme-line header .search-bar .tt-dropdown-menu .tt-suggestions .tt-suggestion p {
color: #333;
white-space: nowrap;
overflow: hidden;
@@ -254,7 +254,7 @@
overflow: hidden;
}
-.theme-line .docs-header h1{
+.theme-line .docs-header h1 {
color: #444;
margin-top: 0;
font-size: 25px;
@@ -798,7 +798,7 @@ h1.ignite-logo {
content: '\25BC';
}
-.st-selected{
+.st-selected {
background: #216eff;
color: white;
}
@@ -839,7 +839,6 @@ h1.ignite-logo {
display: block;
}
-
.block-display-image img {
max-width: 100%;
max-height: 450px;
@@ -850,4 +849,8 @@ h1.ignite-logo {
.greedy {
min-height: 200px;
height: ~"calc(100vh - 230px)";
+}
+
+.advanced {
+ border-width: 0 0 1px 0;
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6ce1c8aa/modules/webconfig/nodejs/views/clusters.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/clusters.jade b/modules/webconfig/nodejs/views/clusters.jade
index 0ffd5eb..b579d94 100644
--- a/modules/webconfig/nodejs/views/clusters.jade
+++ b/modules/webconfig/nodejs/views/clusters.jade
@@ -20,11 +20,11 @@ append scripts
script(src='/javascripts/controllers/clusters.js')
block content
- div.docs-header
+ .docs-header
h1 Clusters
p Create and configure Ignite clusters.
hr
- div.docs-body(ng-controller='clustersController')
+ .docs-body(ng-controller='clustersController')
table(st-table='rowCollection' st-safe-src='clusters')
thead
tr
@@ -42,15 +42,42 @@ block content
tr
td
td
- div(class=['input-group'])
+ .input-group
input.form-control(type='text' name="name" ng-model='create.name' placeholder='Enter cluster name')
button(class=['btn-default', 'form-control'] ng-model='create.template' data-placement='bottom-center' data-template='/select' data-placeholder='Choose cluster template' bs-options='item.value as item.label for item in templates' bs-select)
span.caret
td
button(ng-click='createItem()' class=['btn', 'btn-success', 'fa', 'fa-plus'] ng-disabled='!(create.name && create.template)')  Create
- hr
- form.form-horizontal
+ form.form-horizontal(name='editForm' ng-if='backupItem')
+ .form-group
+ label.control-label.col-sm-4 Name:
+ .col-sm-8
+ input.form-control(type="text" ng-model='backupItem.name')
.form-group
- label.control-label.col-sm-2 Cluster name
- .col-sm-10
- input.form-control(type="text" ng-model='selectedItem.name')
\ No newline at end of file
+ label.control-label.col-sm-4 Discovery:
+ .col-sm-8
+ button(class=['btn-default', 'form-control'] ng-model='backupItem.discovery' data-placement='bottom-center' data-template='/select' data-placeholder='Choose discovery' bs-options='item.value as item.label for item in discoveries' bs-select)
+ span.caret
+ .panel.advanced(bs-collapse data-start-collapsed='true')
+ .panel-collapse(bs-collapse-target)
+ .form-group
+ label.control-label.col-sm-4 Public thread pool size:
+ .col-sm-8
+ input.form-control(type="text" ng-model='backupItem.pubPoolSize')
+ .form-group
+ label.control-label.col-sm-4 System thread pool size:
+ .col-sm-8
+ input.form-control(type="text" ng-model='backupItem.sysPoolSize')
+ .form-group
+ label.control-label.col-sm-4 Management thread pool size:
+ .col-sm-8
+ input.form-control(type="text" ng-model='backupItem.mgmtPoolSize' placeholder='4')
+ .form-group
+ label.control-label.col-sm-4 Peer class loading thread pool size:
+ .col-sm-8
+ input.form-control(type="text" ng-model='backupItem.p2pPoolSize' placeholder='2')
+ .panel-heading
+ .panel-title
+ a(bs-collapse-toggle) Show advanced settings
+ center
+ button.btn.btn-primary(ng-click='saveCluster(backupItem)' ng-disabled='editForm.$invalid') Apply
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6ce1c8aa/modules/webconfig/nodejs/views/layout-sidebar.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/layout-sidebar.jade b/modules/webconfig/nodejs/views/layout-sidebar.jade
index 777ec23..c11d77f 100644
--- a/modules/webconfig/nodejs/views/layout-sidebar.jade
+++ b/modules/webconfig/nodejs/views/layout-sidebar.jade
@@ -20,19 +20,22 @@ append scripts
block container
div.row
- div(class=['col-sm-2', 'border-right', 'section-left', 'greedy'])
- div.sidebar-nav
- ul(ng-controller='activeLink' class="menu")
- li
- a(ng-class="{active: isActive('/clusters')}" href='/clusters') Clusters
- li
- a(ng-class="{active: isActive('/caches')}" href='/caches') Caches
- li
- a(ng-class="{active: isActive('/persistence')}" href='/persistence') Persistence
- li
- a(ng-class="{active: isActive('/sql')}" href='/sql') SQL
- li
- a(ng-class="{active: isActive('/clients')}" href='/clients') Clients
- div(class=['col-sm-10', 'border-left', 'section-right'])
- div.docs-content
- block content
\ No newline at end of file
+ div(class=['col-sm-2', 'border-right', 'section-left', 'greedy'])
+ div.sidebar-nav
+ ul(ng-controller='activeLink' class="menu")
+ li
+ a(ng-class="{active: isActive('/clusters')}" href='/clusters') Clusters
+ li
+ a(ng-class="{active: isActive('/caches')}" href='/caches') Caches
+ li
+ a(ng-class="{active: isActive('/persistence')}" href='/persistence') Persistence
+ li
+ a(ng-class="{active: isActive('/sql')}" href='/sql') SQL
+ li
+ a(ng-class="{active: isActive('/clients')}" href='/clients') Clients
+ li
+ hr
+ a(ng-class="{active: isActive('/overview')}" href='/overview') Overview
+ div(class=['col-sm-10', 'border-left', 'section-right'])
+ div.docs-content
+ block content
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6ce1c8aa/modules/webconfig/nodejs/views/login.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/login.jade b/modules/webconfig/nodejs/views/login.jade
index 9d5c5ff..35ad6f6 100644
--- a/modules/webconfig/nodejs/views/login.jade
+++ b/modules/webconfig/nodejs/views/login.jade
@@ -1,3 +1,19 @@
+//-
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
div(class=['modal', 'center'] tabindex='-1' role='dialog')
.modal-dialog
.modal-content