You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2015/05/29 12:50:50 UTC
[1/2] incubator-ignite git commit: # IGNITE-843 Added apache headers.
Repository: incubator-ignite
Updated Branches:
refs/heads/ignite-843 619c1c8d1 -> db79305fb
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/includes/header.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/includes/header.jade b/modules/webconfig/nodejs/views/includes/header.jade
index f999e4d..6d5df06 100644
--- a/modules/webconfig/nodejs/views/includes/header.jade
+++ b/modules/webconfig/nodejs/views/includes/header.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.
+
header.header(id='header')
div.container
h1.navbar-brand
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/index.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/index.jade b/modules/webconfig/nodejs/views/index.jade
index e300cc5..4e485e8 100644
--- a/modules/webconfig/nodejs/views/index.jade
+++ b/modules/webconfig/nodejs/views/index.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.
+
extends layout
block container
div.row
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/layout.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/layout.jade b/modules/webconfig/nodejs/views/layout.jade
index 098c831..d25ec95 100644
--- a/modules/webconfig/nodejs/views/layout.jade
+++ b/modules/webconfig/nodejs/views/layout.jade
@@ -38,7 +38,6 @@ html(ng-app='ignite-web-configurator')
script(src='//cdnjs.cloudflare.com/ajax/libs/angular-strap/2.2.2/angular-strap.js')
script(src='//cdnjs.cloudflare.com/ajax/libs/angular-strap/2.2.2/angular-strap.tpl.min.js')
- //script(src='/javascripts/ng-table.js')
script(src='https://cdnjs.cloudflare.com/ajax/libs/angular-smart-table/2.0.3/smart-table.js')
script(src='/javascripts/controllers/common.js')
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/persistence.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/persistence.jade b/modules/webconfig/nodejs/views/persistence.jade
index c45264d..87caebf 100644
--- a/modules/webconfig/nodejs/views/persistence.jade
+++ b/modules/webconfig/nodejs/views/persistence.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.
+
extends layout-sidebar
block head
block content
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/register.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/register.jade b/modules/webconfig/nodejs/views/register.jade
index 972c8f6..17d97ea 100644
--- a/modules/webconfig/nodejs/views/register.jade
+++ b/modules/webconfig/nodejs/views/register.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.
+
h4 Register your account
form(action='/register' method='post')
fieldset
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/sql.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/sql.jade b/modules/webconfig/nodejs/views/sql.jade
index f1295d8..0fb6eed 100644
--- a/modules/webconfig/nodejs/views/sql.jade
+++ b/modules/webconfig/nodejs/views/sql.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.
+
extends layout-sidebar
block head
block content
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/templates/select.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/templates/select.jade b/modules/webconfig/nodejs/views/templates/select.jade
index eb12d6d..fea1d5c 100644
--- a/modules/webconfig/nodejs/views/templates/select.jade
+++ b/modules/webconfig/nodejs/views/templates/select.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.
+
ul.select.dropdown-menu(tabindex='-1', ng-show='$isVisible()', role='select')
li(ng-if='$showAllNoneButtons')
.btn-group(style='margin-bottom: 5px; margin-left: 5px')
[2/2] incubator-ignite git commit: # IGNITE-843 Added apache headers.
Posted by ak...@apache.org.
# IGNITE-843 Added apache headers.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/db79305f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/db79305f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/db79305f
Branch: refs/heads/ignite-843
Commit: db79305fb568e597fc23bd7e68c7464fa13361aa
Parents: 619c1c8
Author: AKuznetsov <ak...@gridgain.com>
Authored: Fri May 29 17:50:46 2015 +0700
Committer: AKuznetsov <ak...@gridgain.com>
Committed: Fri May 29 17:50:46 2015 +0700
----------------------------------------------------------------------
modules/webconfig/nodejs/app.js | 17 +
modules/webconfig/nodejs/configuration.js | 17 +
modules/webconfig/nodejs/db.js | 17 +
.../nodejs/public/javascripts/bundle.js | 18 +
.../public/javascripts/controllers/caches.js | 18 +-
.../public/javascripts/controllers/clusters.js | 18 +-
.../public/javascripts/controllers/common.js | 17 +
.../nodejs/public/javascripts/ng-table.js | 972 -------------------
.../nodejs/public/javascripts/ng-table.min.js | 4 -
.../nodejs/public/stylesheets/ng-table.css | 136 ---
.../nodejs/public/stylesheets/ng-table.min.css | 3 -
.../nodejs/public/stylesheets/style.less | 17 +
modules/webconfig/nodejs/routes/auth.js | 17 +
modules/webconfig/nodejs/routes/caches.js | 17 +
modules/webconfig/nodejs/routes/clusters.js | 17 +
modules/webconfig/nodejs/routes/pages.js | 17 +
modules/webconfig/nodejs/views/caches.jade | 19 +-
modules/webconfig/nodejs/views/clients.jade | 16 +
modules/webconfig/nodejs/views/clusterEdit.jade | 20 -
modules/webconfig/nodejs/views/discovery.jade | 16 +
modules/webconfig/nodejs/views/error.jade | 16 +
.../webconfig/nodejs/views/includes/footer.jade | 16 +
.../webconfig/nodejs/views/includes/header.jade | 16 +
modules/webconfig/nodejs/views/index.jade | 16 +
modules/webconfig/nodejs/views/layout.jade | 1 -
modules/webconfig/nodejs/views/persistence.jade | 16 +
modules/webconfig/nodejs/views/register.jade | 16 +
modules/webconfig/nodejs/views/sql.jade | 16 +
.../nodejs/views/templates/select.jade | 16 +
29 files changed, 381 insertions(+), 1141 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/app.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/app.js b/modules/webconfig/nodejs/app.js
index 5fb4b4f..33b2292 100644
--- a/modules/webconfig/nodejs/app.js
+++ b/modules/webconfig/nodejs/app.js
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
var flash = require('connect-flash');
var express = require('express');
var path = require('path');
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/configuration.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/configuration.js b/modules/webconfig/nodejs/configuration.js
index b0b8388..6dbb577 100644
--- a/modules/webconfig/nodejs/configuration.js
+++ b/modules/webconfig/nodejs/configuration.js
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
var config = require('nconf');
config.file({'file': 'config/default.json'});
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/db.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/db.js b/modules/webconfig/nodejs/db.js
index f6aa4c0..70b9bac 100644
--- a/modules/webconfig/nodejs/db.js
+++ b/modules/webconfig/nodejs/db.js
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
var config = require('./configuration.js');
// Mongoose for mongodb.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/public/javascripts/bundle.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/javascripts/bundle.js b/modules/webconfig/nodejs/public/javascripts/bundle.js
index e69de29..840da56 100644
--- a/modules/webconfig/nodejs/public/javascripts/bundle.js
+++ b/modules/webconfig/nodejs/public/javascripts/bundle.js
@@ -0,0 +1,18 @@
+/*
+ * 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.
+ */
+
+// Place here all common utility functions that will be available on each page.
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/public/javascripts/controllers/caches.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/javascripts/controllers/caches.js b/modules/webconfig/nodejs/public/javascripts/controllers/caches.js
index 482eae7..1bb33fd 100644
--- a/modules/webconfig/nodejs/public/javascripts/controllers/caches.js
+++ b/modules/webconfig/nodejs/public/javascripts/controllers/caches.js
@@ -1,4 +1,20 @@
-// Controller for caches page.
+/*
+ * 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.
+ */
+
configuratorModule.controller('cachesController', ['$scope', '$modal', '$http', '$filter', 'ngTableParams',
function($scope, $modal, $http, $filter, ngTableParams) {
$scope.editColumn = {};
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/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 5992971..b65c689 100644
--- a/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
+++ b/modules/webconfig/nodejs/public/javascripts/controllers/clusters.js
@@ -1,4 +1,20 @@
-// Controller for clusters page.
+/*
+ * 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.
+ */
+
configuratorModule.controller('clustersController', ['$scope', '$modal', '$http',
function($scope, $modal, $http) {
$scope.templates = [
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/public/javascripts/controllers/common.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/javascripts/controllers/common.js b/modules/webconfig/nodejs/public/javascripts/controllers/common.js
index 09226ba..e75be82 100644
--- a/modules/webconfig/nodejs/public/javascripts/controllers/common.js
+++ b/modules/webconfig/nodejs/public/javascripts/controllers/common.js
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
var configuratorModule = angular.module('ignite-web-configurator', ['smart-table', 'mgcrea.ngStrap']);
configuratorModule.controller('activeLink', ['$scope', function($scope) {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/public/javascripts/ng-table.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/javascripts/ng-table.js b/modules/webconfig/nodejs/public/javascripts/ng-table.js
deleted file mode 100755
index 64df1a6..0000000
--- a/modules/webconfig/nodejs/public/javascripts/ng-table.js
+++ /dev/null
@@ -1,972 +0,0 @@
-(function(angular, factory) {
- 'use strict';
-
- if (typeof define === 'function' && define.amd) {
- define(['angular'], function(angular) {
- return factory(angular);
- });
- } else {
- return factory(angular);
- }
-}(angular || null, function(angular) {
- 'use strict';
-/**
- * ngTable: Table + Angular JS
- *
- * @author Vitalii Savchuk <es...@gmail.com>
- * @url https://github.com/esvit/ng-table/
- * @license New BSD License <http://creativecommons.org/licenses/BSD/>
- */
-
-/**
- * @ngdoc module
- * @name ngTable
- * @description ngTable: Table + Angular JS
- * @example
- <doc:example>
- <doc:source>
- <script>
- var app = angular.module('myApp', ['ngTable']);
- app.controller('MyCtrl', function($scope) {
- $scope.users = [
- {name: "Moroni", age: 50},
- {name: "Tiancum", age: 43},
- {name: "Jacob", age: 27},
- {name: "Nephi", age: 29},
- {name: "Enos", age: 34}
- ];
- });
- </script>
- <table ng-table class="table">
- <tr ng-repeat="user in users">
- <td data-title="'Name'">{{user.name}}</td>
- <td data-title="'Age'">{{user.age}}</td>
- </tr>
- </table>
- </doc:source>
- </doc:example>
- */
-var app = angular.module('ngTable', []);
-/**
- * ngTable: Table + Angular JS
- *
- * @author Vitalii Savchuk <es...@gmail.com>
- * @url https://github.com/esvit/ng-table/
- * @license New BSD License <http://creativecommons.org/licenses/BSD/>
- */
-
-/**
- * @ngdoc value
- * @name ngTable.value:ngTableDefaultParams
- * @description Default Parameters for ngTable
- */
-app.value('ngTableDefaults', {
- params: {},
- settings: {}
-});
-
-/**
- * @ngdoc service
- * @name ngTable.factory:NgTableParams
- * @description Parameters manager for ngTable
- */
-
-app.factory('NgTableParams', ['$q', '$log', 'ngTableDefaults', function($q, $log, ngTableDefaults) {
- var isNumber = function(n) {
- return !isNaN(parseFloat(n)) && isFinite(n);
- };
- var NgTableParams = function(baseParameters, baseSettings) {
- var self = this,
- log = function() {
- if (settings.debugMode && $log.debug) {
- $log.debug.apply(this, arguments);
- }
- };
-
- this.data = [];
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#parameters
- * @methodOf ngTable.factory:NgTableParams
- * @description Set new parameters or get current parameters
- *
- * @param {string} newParameters New parameters
- * @param {string} parseParamsFromUrl Flag if parse parameters like in url
- * @returns {Object} Current parameters or `this`
- */
- this.parameters = function(newParameters, parseParamsFromUrl) {
- parseParamsFromUrl = parseParamsFromUrl || false;
- if (angular.isDefined(newParameters)) {
- for (var key in newParameters) {
- var value = newParameters[key];
- if (parseParamsFromUrl && key.indexOf('[') >= 0) {
- var keys = key.split(/\[(.*)\]/).reverse()
- var lastKey = '';
- for (var i = 0, len = keys.length; i < len; i++) {
- var name = keys[i];
- if (name !== '') {
- var v = value;
- value = {};
- value[lastKey = name] = (isNumber(v) ? parseFloat(v) : v);
- }
- }
- if (lastKey === 'sorting') {
- params[lastKey] = {};
- }
- params[lastKey] = angular.extend(params[lastKey] || {}, value[lastKey]);
- } else {
- params[key] = (isNumber(newParameters[key]) ? parseFloat(newParameters[key]) : newParameters[key]);
- }
- }
- log('ngTable: set parameters', params);
- return this;
- }
- return params;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#settings
- * @methodOf ngTable.factory:NgTableParams
- * @description Set new settings for table
- *
- * @param {string} newSettings New settings or undefined
- * @returns {Object} Current settings or `this`
- */
- this.settings = function(newSettings) {
- if (angular.isDefined(newSettings)) {
- if (angular.isArray(newSettings.data)) {
- //auto-set the total from passed in data
- newSettings.total = newSettings.data.length;
- }
- settings = angular.extend(settings, newSettings);
- log('ngTable: set settings', settings);
- return this;
- }
- return settings;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#page
- * @methodOf ngTable.factory:NgTableParams
- * @description If parameter page not set return current page else set current page
- *
- * @param {string} page Page number
- * @returns {Object|Number} Current page or `this`
- */
- this.page = function(page) {
- return angular.isDefined(page) ? this.parameters({
- 'page': page
- }) : params.page;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#total
- * @methodOf ngTable.factory:NgTableParams
- * @description If parameter total not set return current quantity else set quantity
- *
- * @param {string} total Total quantity of items
- * @returns {Object|Number} Current page or `this`
- */
- this.total = function(total) {
- return angular.isDefined(total) ? this.settings({
- 'total': total
- }) : settings.total;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#count
- * @methodOf ngTable.factory:NgTableParams
- * @description If parameter count not set return current count per page else set count per page
- *
- * @param {string} count Count per number
- * @returns {Object|Number} Count per page or `this`
- */
- this.count = function(count) {
- // reset to first page because can be blank page
- return angular.isDefined(count) ? this.parameters({
- 'count': count,
- 'page': 1
- }) : params.count;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#filter
- * @methodOf ngTable.factory:NgTableParams
- * @description If parameter page not set return current filter else set current filter
- *
- * @param {string} filter New filter
- * @returns {Object} Current filter or `this`
- */
- this.filter = function(filter) {
- return angular.isDefined(filter) ? this.parameters({
- 'filter': filter,
- 'page': 1
- }) : params.filter;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#sorting
- * @methodOf ngTable.factory:NgTableParams
- * @description If 'sorting' parameter is not set, return current sorting. Otherwise set current sorting.
- *
- * @param {string} sorting New sorting
- * @returns {Object} Current sorting or `this`
- */
- this.sorting = function(sorting) {
- if (arguments.length == 2) {
- var sortArray = {};
- sortArray[sorting] = arguments[1];
- this.parameters({
- 'sorting': sortArray
- });
- return this;
- }
- return angular.isDefined(sorting) ? this.parameters({
- 'sorting': sorting
- }) : params.sorting;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#isSortBy
- * @methodOf ngTable.factory:NgTableParams
- * @description Checks sort field
- *
- * @param {string} field Field name
- * @param {string} direction Direction of sorting 'asc' or 'desc'
- * @returns {Array} Return true if field sorted by direction
- */
- this.isSortBy = function(field, direction) {
- return angular.isDefined(params.sorting[field]) && angular.equals(params.sorting[field], direction);
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#orderBy
- * @methodOf ngTable.factory:NgTableParams
- * @description Return object of sorting parameters for angular filter
- *
- * @returns {Array} Array like: [ '-name', '+age' ]
- */
- this.orderBy = function() {
- var sorting = [];
- for (var column in params.sorting) {
- sorting.push((params.sorting[column] === "asc" ? "+" : "-") + column);
- }
- return sorting;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#getData
- * @methodOf ngTable.factory:NgTableParams
- * @description Called when updated some of parameters for get new data
- *
- * @param {Object} $defer promise object
- * @param {Object} params New parameters
- */
- this.getData = function($defer, params) {
- if (angular.isArray(this.data) && angular.isObject(params)) {
- $defer.resolve(this.data.slice((params.page() - 1) * params.count(), params.page() * params.count()));
- } else {
- $defer.resolve([]);
- }
- return $defer.promise;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#getGroups
- * @methodOf ngTable.factory:NgTableParams
- * @description Return groups for table grouping
- */
- this.getGroups = function($defer, column) {
- var defer = $q.defer();
-
- defer.promise.then(function(data) {
- var groups = {};
- angular.forEach(data, function(item) {
- var groupName = angular.isFunction(column) ? column(item) : item[column];
-
- groups[groupName] = groups[groupName] || {
- data: []
- };
- groups[groupName]['value'] = groupName;
- groups[groupName].data.push(item);
- });
- var result = [];
- for (var i in groups) {
- result.push(groups[i]);
- }
- log('ngTable: refresh groups', result);
- $defer.resolve(result);
- });
- return this.getData(defer, self);
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#generatePagesArray
- * @methodOf ngTable.factory:NgTableParams
- * @description Generate array of pages
- *
- * @param {boolean} currentPage which page must be active
- * @param {boolean} totalItems Total quantity of items
- * @param {boolean} pageSize Quantity of items on page
- * @returns {Array} Array of pages
- */
- this.generatePagesArray = function(currentPage, totalItems, pageSize) {
- var maxBlocks, maxPage, maxPivotPages, minPage, numPages, pages;
- maxBlocks = 11;
- pages = [];
- numPages = Math.ceil(totalItems / pageSize);
- if (numPages > 1) {
- pages.push({
- type: 'prev',
- number: Math.max(1, currentPage - 1),
- active: currentPage > 1
- });
- pages.push({
- type: 'first',
- number: 1,
- active: currentPage > 1,
- current: currentPage === 1
- });
- maxPivotPages = Math.round((maxBlocks - 5) / 2);
- minPage = Math.max(2, currentPage - maxPivotPages);
- maxPage = Math.min(numPages - 1, currentPage + maxPivotPages * 2 - (currentPage - minPage));
- minPage = Math.max(2, minPage - (maxPivotPages * 2 - (maxPage - minPage)));
- var i = minPage;
- while (i <= maxPage) {
- if ((i === minPage && i !== 2) || (i === maxPage && i !== numPages - 1)) {
- pages.push({
- type: 'more',
- active: false
- });
- } else {
- pages.push({
- type: 'page',
- number: i,
- active: currentPage !== i,
- current: currentPage === i
- });
- }
- i++;
- }
- pages.push({
- type: 'last',
- number: numPages,
- active: currentPage !== numPages,
- current: currentPage === numPages
- });
- pages.push({
- type: 'next',
- number: Math.min(numPages, currentPage + 1),
- active: currentPage < numPages
- });
- }
- return pages;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#url
- * @methodOf ngTable.factory:NgTableParams
- * @description Return groups for table grouping
- *
- * @param {boolean} asString flag indicates return array of string or object
- * @returns {Array} If asString = true will be return array of url string parameters else key-value object
- */
- this.url = function(asString) {
- asString = asString || false;
- var pairs = (asString ? [] : {});
- for (var key in params) {
- if (params.hasOwnProperty(key)) {
- var item = params[key],
- name = encodeURIComponent(key);
- if (typeof item === "object") {
- for (var subkey in item) {
- if (!angular.isUndefined(item[subkey]) && item[subkey] !== "") {
- var pname = name + "[" + encodeURIComponent(subkey) + "]";
- if (asString) {
- pairs.push(pname + "=" + item[subkey]);
- } else {
- pairs[pname] = item[subkey];
- }
- }
- }
- } else if (!angular.isFunction(item) && !angular.isUndefined(item) && item !== "") {
- if (asString) {
- pairs.push(name + "=" + encodeURIComponent(item));
- } else {
- pairs[name] = encodeURIComponent(item);
- }
- }
- }
- }
- return pairs;
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:NgTableParams#reload
- * @methodOf ngTable.factory:NgTableParams
- * @description Reload table data
- */
- this.reload = function() {
- var $defer = $q.defer(),
- self = this,
- pData = null;
-
- if (!settings.$scope) {
- return;
- }
-
- settings.$loading = true;
- if (settings.groupBy) {
- pData = settings.getGroups($defer, settings.groupBy, this);
- } else {
- pData = settings.getData($defer, this);
- }
- log('ngTable: reload data');
-
- if (!pData) {
- // If getData resolved the $defer, and didn't promise us data,
- // create a promise from the $defer. We need to return a promise.
- pData = $defer.promise;
- }
- return pData.then(function(data) {
- settings.$loading = false;
- log('ngTable: current scope', settings.$scope);
- if (settings.groupBy) {
- self.data = data;
- if (settings.$scope) settings.$scope.$groups = data;
- } else {
- self.data = data;
- if (settings.$scope) settings.$scope.$data = data;
- }
- if (settings.$scope) settings.$scope.pages = self.generatePagesArray(self.page(), self.total(), self.count());
- settings.$scope.$emit('ngTableAfterReloadData');
- return data;
- });
- };
-
- this.reloadPages = function() {
- var self = this;
- settings.$scope.pages = self.generatePagesArray(self.page(), self.total(), self.count());
- };
-
- var params = this.$params = {
- page: 1,
- count: 1,
- filter: {},
- sorting: {},
- group: {},
- groupBy: null
- };
- angular.extend(params, ngTableDefaults.params);
-
- var settings = {
- $scope: null, // set by ngTable controller
- $loading: false,
- data: null, //allows data to be set when table is initialized
- total: 0,
- defaultSort: 'desc',
- filterDelay: 750,
- counts: [10, 25, 50, 100],
- sortingIndicator: 'span',
- getGroups: this.getGroups,
- getData: this.getData
- };
- angular.extend(settings, ngTableDefaults.settings);
-
- this.settings(baseSettings);
- this.parameters(baseParameters, true);
- return this;
- };
- return NgTableParams;
-}]);
-
-/**
- * @ngdoc service
- * @name ngTable.factory:ngTableParams
- * @description Backwards compatible shim for lowercase 'n' in NgTableParams
- */
-app.factory('ngTableParams', ['NgTableParams', function(NgTableParams) {
- return NgTableParams;
-}]);
-
-/**
- * ngTable: Table + Angular JS
- *
- * @author Vitalii Savchuk <es...@gmail.com>
- * @url https://github.com/esvit/ng-table/
- * @license New BSD License <http://creativecommons.org/licenses/BSD/>
- */
-
-/**
- * @ngdoc object
- * @name ngTable.directive:ngTable.ngTableController
- *
- * @description
- * Each {@link ngTable.directive:ngTable ngTable} directive creates an instance of `ngTableController`
- */
-app.controller('ngTableController', ['$scope', 'NgTableParams', '$timeout', '$parse', '$compile', '$attrs', '$element',
- 'ngTableColumn',
-function($scope, NgTableParams, $timeout, $parse, $compile, $attrs, $element, ngTableColumn) {
- var isFirstTimeLoad = true;
- $scope.$filterRow = {};
- $scope.$loading = false;
-
- // until such times as the directive uses an isolated scope, we need to ensure that the check for
- // the params field only consults the "own properties" of the $scope. This is to avoid seeing the params
- // field on a $scope higher up in the prototype chain
- if (!$scope.hasOwnProperty("params")) {
- $scope.params = new NgTableParams();
- $scope.params.isNullInstance = true;
- }
- $scope.params.settings().$scope = $scope;
-
- var delayFilter = (function() {
- var timer = 0;
- return function(callback, ms) {
- $timeout.cancel(timer);
- timer = $timeout(callback, ms);
- };
- })();
-
- function resetPage() {
- $scope.params.$params.page = 1;
- }
-
- $scope.$watch('params.$params', function(newParams, oldParams) {
-
- if (newParams === oldParams) {
- return;
- }
-
- $scope.params.settings().$scope = $scope;
-
- if (!angular.equals(newParams.filter, oldParams.filter)) {
- var maybeResetPage = isFirstTimeLoad ? angular.noop : resetPage;
- delayFilter(function() {
- maybeResetPage();
- $scope.params.reload();
- }, $scope.params.settings().filterDelay);
- } else {
- $scope.params.reload();
- }
-
- if (!$scope.params.isNullInstance) {
- isFirstTimeLoad = false;
- }
-
- }, true);
-
- this.compileDirectiveTemplates = function () {
- if (!$element.hasClass('ng-table')) {
- $scope.templates = {
- header: ($attrs.templateHeader ? $attrs.templateHeader : 'ng-table/header.html'),
- pagination: ($attrs.templatePagination ? $attrs.templatePagination : 'ng-table/pager.html')
- };
- $element.addClass('ng-table');
- var headerTemplate = null;
- if ($element.find('> thead').length === 0) {
- headerTemplate = angular.element(document.createElement('thead')).attr('ng-include', 'templates.header');
- $element.prepend(headerTemplate);
- }
- var paginationTemplate = angular.element(document.createElement('div')).attr({
- 'ng-table-pagination': 'params',
- 'template-url': 'templates.pagination'
- });
- $element.after(paginationTemplate);
- if (headerTemplate) {
- $compile(headerTemplate)($scope);
- }
- $compile(paginationTemplate)($scope);
- }
- };
-
- this.loadFilterData = function ($columns) {
- angular.forEach($columns, function ($column) {
- var def;
- def = $column.filterData($scope, {
- $column: $column
- });
- if (!def) {
- delete $column.filterData;
- return;
- }
-
- // if we're working with a deferred object, let's wait for the promise
- if ((angular.isObject(def) && angular.isObject(def.promise))) {
- delete $column.filterData;
- return def.promise.then(function(data) {
- // our deferred can eventually return arrays, functions and objects
- if (!angular.isArray(data) && !angular.isFunction(data) && !angular.isObject(data)) {
- // if none of the above was found - we just want an empty array
- data = [];
- } else if (angular.isArray(data)) {
- data.unshift({
- title: '-',
- id: ''
- });
- }
- $column.data = data;
- });
- }
- // otherwise, we just return what the user gave us. It could be a function, array, object, whatever
- else {
- return $column.data = def;
- }
- });
- };
-
- this.buildColumns = function (columns) {
- return columns.map(function(col){
- return ngTableColumn.buildColumn(col, $scope)
- })
- };
-
- this.setupBindingsToInternalScope = function(tableParamsExpr){
-
- // note: this we're setting up watches to simulate angular's isolated scope bindings
-
- // note: is REALLY important to watch for a change to the ngTableParams *reference* rather than
- // $watch for value equivalence. This is because ngTableParams references the current page of data as
- // a field and it's important not to watch this
- var tableParamsGetter = $parse(tableParamsExpr);
- $scope.$watch(tableParamsGetter, (function (params) {
- if (angular.isUndefined(params)) {
- return;
- }
- $scope.paramsModel = tableParamsGetter;
- $scope.params = params;
- }), false);
-
- if ($attrs.showFilter) {
- $scope.$parent.$watch($attrs.showFilter, function(value) {
- $scope.show_filter = value;
- });
- }
- if ($attrs.disableFilter) {
- $scope.$parent.$watch($attrs.disableFilter, function(value) {
- $scope.$filterRow.disabled = value;
- });
- }
- };
-
- $scope.sortBy = function($column, event) {
- var parsedSortable = $column.sortable && $column.sortable();
- if (!parsedSortable) {
- return;
- }
- var defaultSort = $scope.params.settings().defaultSort;
- var inverseSort = (defaultSort === 'asc' ? 'desc' : 'asc');
- var sorting = $scope.params.sorting() && $scope.params.sorting()[parsedSortable] && ($scope.params.sorting()[parsedSortable] === defaultSort);
- var sortingParams = (event.ctrlKey || event.metaKey) ? $scope.params.sorting() : {};
- sortingParams[parsedSortable] = (sorting ? inverseSort : defaultSort);
- $scope.params.parameters({
- sorting: sortingParams
- });
- };
-}]);
-
-
-/**
- * @ngdoc service
- * @name ngTable.factory:ngTableColumn
- *
- * @description
- * Service to construct a $column definition used by {@link ngTable.directive:ngTable ngTable} directive
- */
-app.factory('ngTableColumn', [function () {
-
- var defaults = {
- 'class': function(){ return ''; },
- filter: function(){ return false; },
- filterData: angular.noop,
- headerTemplateURL: function(){ return false; },
- headerTitle: function(){ return ' '; },
- sortable: function(){ return false; },
- show: function(){ return true; },
- title: function(){ return ' '; },
- titleAlt: function(){ return ''; }
- };
-
- /**
- * @ngdoc method
- * @name ngTable.factory:ngTableColumn#buildColumn
- * @methodOf ngTable.factory:ngTableColumn
- * @description Creates a $column for use within a header template
- *
- * @param {Object} column an existing $column or simple column data object
- * @param {Scope} defaultScope the $scope to supply to the $column getter methods when not supplied by caller
- * @returns {Object} a $column object
- */
- function buildColumn(column, defaultScope){
- // note: we're not modifying the original column object. This helps to avoid unintended side affects
- var extendedCol = Object.create(column);
- for (var prop in defaults) {
- if (extendedCol[prop] === undefined) {
- extendedCol[prop] = defaults[prop];
- }
- if(!angular.isFunction(extendedCol[prop])){
- // wrap raw field values with "getter" functions
- // - this is to ensure consistency with how ngTable.compile builds columns
- // - note that the original column object is being "proxied"; this is important
- // as it ensure that any changes to the original object will be returned by the "getter"
- (function(prop1){
- extendedCol[prop1] = function(){
- return column[prop1];
- };
- })(prop);
- }
- (function(prop1){
- // satisfy the arguments expected by the function returned by parsedAttribute in the ngTable directive
- var getterFn = extendedCol[prop1];
- extendedCol[prop1] = function(){
- if (arguments.length === 0){
- return getterFn.call(column, defaultScope);
- } else {
- return getterFn.apply(column, arguments);
- }
- };
- })(prop);
- }
- return extendedCol;
- }
-
- return {
- buildColumn: buildColumn
- };
-}]);
-
-/**
- * ngTable: Table + Angular JS
- *
- * @author Vitalii Savchuk <es...@gmail.com>
- * @url https://github.com/esvit/ng-table/
- * @license New BSD License <http://creativecommons.org/licenses/BSD/>
- */
-
-/**
- * @ngdoc directive
- * @name ngTable.directive:ngTable
- * @restrict A
- *
- * @description
- * Directive that instantiates {@link ngTable.directive:ngTable.ngTableController ngTableController}.
- */
-app.directive('ngTable', ['$q', '$parse',
- function($q, $parse) {
- 'use strict';
-
- return {
- restrict: 'A',
- priority: 1001,
- scope: true,
- controller: 'ngTableController',
- compile: function(element) {
- var columns = [],
- i = 0,
- row = null;
-
- // IE 8 fix :not(.ng-table-group) selector
- angular.forEach(angular.element(element.find('tr')), function(tr) {
- tr = angular.element(tr);
- if (!tr.hasClass('ng-table-group') && !row) {
- row = tr;
- }
- });
- if (!row) {
- return;
- }
- angular.forEach(row.find('td'), function(item) {
- var el = angular.element(item);
- if (el.attr('ignore-cell') && 'true' === el.attr('ignore-cell')) {
- return;
- }
-
- var getAttrValue = function(attr){
- return el.attr('x-data-' + attr) || el.attr('data-' + attr) || el.attr(attr);
- };
-
- var parsedAttribute = function(attr) {
- var expr = getAttrValue(attr);
- if (!expr){
- return undefined;
- }
- return function(scope, locals) {
- return $parse(expr)(scope, angular.extend(locals || {}, {
- $columns: columns
- }));
- };
- };
-
- var titleExpr = getAttrValue('title-alt') || getAttrValue('title');
- if (titleExpr){
- el.attr('data-title-text', '{{' + titleExpr + '}}'); // this used in responsive table
- }
- // NOTE TO MAINTAINERS: if you add extra fields to a $column be sure to extend ngTableColumn with
- // a corresponding "safe" default
- columns.push({
- id: i++,
- title: parsedAttribute('title'),
- titleAlt: parsedAttribute('title-alt'),
- headerTitle: parsedAttribute('header-title'),
- sortable: parsedAttribute('sortable'),
- 'class': parsedAttribute('header-class'),
- filter: parsedAttribute('filter'),
- headerTemplateURL: parsedAttribute('header'),
- filterData: parsedAttribute('filter-data'),
- show: (el.attr("ng-show") ? function (scope) {
- return $parse(el.attr("ng-show"))(scope);
- } : undefined)
- });
- });
- return function(scope, element, attrs, controller) {
- scope.$columns = columns = controller.buildColumns(columns);
-
- controller.setupBindingsToInternalScope(attrs.ngTable);
- controller.loadFilterData(columns);
- controller.compileDirectiveTemplates();
- };
- }
- }
- }
-]);
-
-/**
- * @ngdoc directive
- * @name ngTable.directive:ngTableDynamic
- * @restrict A
- *
- * @description
- * A dynamic version of the {@link ngTable.directive:ngTable ngTable} directive that accepts a dynamic list of columns
- * definitions to render
- */
-app.directive('ngTableDynamic', ['$parse', function ($parse){
-
- function parseDirectiveExpression(attr) {
- if (!attr || attr.indexOf(" with ") > -1) {
- var parts = attr.split(/\s+with\s+/);
- return {
- tableParams: parts[0],
- columns: parts[1]
- };
- } else {
- throw new Error('Parse error (expected example: ng-table-dynamic=\'tableParams with cols\')');
- }
- }
-
- return {
- restrict: 'A',
- priority: 1001,
- scope: true,
- controller: 'ngTableController',
- compile: function(tElement) {
- var row;
-
- // IE 8 fix :not(.ng-table-group) selector
- angular.forEach(angular.element(tElement.find('tr')), function(tr) {
- tr = angular.element(tr);
- if (!tr.hasClass('ng-table-group') && !row) {
- row = tr;
- }
- });
- if (!row) {
- return;
- }
-
- angular.forEach(row.find('td'), function(item) {
- var el = angular.element(item);
- var getAttrValue = function(attr){
- return el.attr('x-data-' + attr) || el.attr('data-' + attr) || el.attr(attr);
- };
-
- // this used in responsive table
- var titleExpr = getAttrValue('title');
- if (!titleExpr){
- el.attr('data-title-text', '{{$columns[$index].titleAlt(this) || $columns[$index].title(this)}}');
- }
- var showExpr = el.attr('ng-show');
- if (!showExpr){
- el.attr('ng-show', '$columns[$index].show(this)');
- }
- });
-
- return function(scope, element, attrs, controller) {
- var expr = parseDirectiveExpression(attrs.ngTableDynamic);
- var columns = $parse(expr.columns)(scope) || [];
- scope.$columns = controller.buildColumns(columns);
-
- controller.setupBindingsToInternalScope(expr.tableParams);
- controller.loadFilterData(scope.$columns);
- controller.compileDirectiveTemplates();
- };
- }
- };
-}]);
-
-/**
- * ngTable: Table + Angular JS
- *
- * @author Vitalii Savchuk <es...@gmail.com>
- * @url https://github.com/esvit/ng-table/
- * @license New BSD License <http://creativecommons.org/licenses/BSD/>
- */
-
-/**
- * @ngdoc directive
- * @name ngTable.directive:ngTablePagination
- * @restrict A
- */
-app.directive('ngTablePagination', ['$compile',
- function($compile) {
- 'use strict';
-
- return {
- restrict: 'A',
- scope: {
- 'params': '=ngTablePagination',
- 'templateUrl': '='
- },
- replace: false,
- link: function(scope, element, attrs) {
-
- scope.params.settings().$scope.$on('ngTableAfterReloadData', function() {
- scope.pages = scope.params.generatePagesArray(scope.params.page(), scope.params.total(), scope.params.count());
- }, true);
-
- scope.$watch('templateUrl', function(templateUrl) {
- if (angular.isUndefined(templateUrl)) {
- return;
- }
- var template = angular.element(document.createElement('div'))
- template.attr({
- 'ng-include': 'templateUrl'
- });
- element.append(template);
- $compile(template)(scope);
- });
- }
- };
- }
-]);
-angular.module('ngTable').run(['$templateCache', function ($templateCache) {
- $templateCache.put('ng-table/filters/select-multiple.html', '<select ng-options="data.id as data.title for data in $column.data" ng-disabled="$filterRow.disabled" multiple ng-multiple="true" ng-model="params.filter()[name]" ng-show="filter==\'select-multiple\'" class="filter filter-select-multiple form-control" name="{{name}}"> </select>');
- $templateCache.put('ng-table/filters/select.html', '<select ng-options="data.id as data.title for data in $column.data" ng-disabled="$filterRow.disabled" ng-model="params.filter()[name]" ng-show="filter==\'select\'" class="filter filter-select form-control" name="{{name}}"> </select>');
- $templateCache.put('ng-table/filters/text.html', '<input type="text" name="{{name}}" ng-disabled="$filterRow.disabled" ng-model="params.filter()[name]" ng-if="filter==\'text\'" class="input-filter form-control"/>');
- $templateCache.put('ng-table/header.html', '<tr> <th title="{{$column.headerTitle(this)}}" ng-repeat="$column in $columns" ng-class="{ \'sortable\': $column.sortable(this), \'sort-asc\': params.sorting()[$column.sortable(this)]==\'asc\', \'sort-desc\': params.sorting()[$column.sortable(this)]==\'desc\' }" ng-click="sortBy($column, $event)" ng-show="$column.show(this)" ng-init="template=$column.headerTemplateURL(this)" class="header {{$column.class(this)}}"> <div ng-if="!template" ng-show="!template" class="ng-table-header" ng-class="{\'sort-indicator\': params.settings().sortingIndicator==\'div\'}"> <span ng-bind="$column.title(this)" ng-class="{\'sort-indicator\': params.settings().sortingIndicator==\'span\'}"></span> </div> <div ng-if="template" ng-show="template" ng-include="template"></div> </th> </tr> <tr ng-show="show_filter" class="ng-table-filters"> <th data-title-text="{{$column.titleAlt(this) || $column.title(this)}}" ng-repeat="$column in $columns" ng-show="$column.show(
this)" class="filter"> <div ng-repeat="(name, filter) in $column.filter(this)"> <div ng-if="filter.indexOf(\'/\') !==-1" ng-include="filter"></div> <div ng-if="filter.indexOf(\'/\')===-1" ng-include="\'ng-table/filters/\' + filter + \'.html\'"></div> </div> </th> </tr> ');
- $templateCache.put('ng-table/pager.html', '<div class="ng-cloak ng-table-pager" ng-if="params.data.length"> <div ng-if="params.settings().counts.length" class="ng-table-counts btn-group pull-right"> <button ng-repeat="count in params.settings().counts" type="button" ng-class="{\'active\':params.count()==count}" ng-click="params.count(count)" class="btn btn-default"> <span ng-bind="count"></span> </button> </div> <ul class="pagination ng-table-pagination"> <li ng-class="{\'disabled\': !page.active && !page.current, \'active\': page.current}" ng-repeat="page in pages" ng-switch="page.type"> <a ng-switch-when="prev" ng-click="params.page(page.number)" href="">«</a> <a ng-switch-when="first" ng-click="params.page(page.number)" href=""><span ng-bind="page.number"></span></a> <a ng-switch-when="page" ng-click="params.page(page.number)" href=""><span ng-bind="page.number"></span></a> <a ng-switch-when="more" ng-click="params.page(page.number)" href="">…</a> <a ng-switch-when="
last" ng-click="params.page(page.number)" href=""><span ng-bind="page.number"></span></a> <a ng-switch-when="next" ng-click="params.page(page.number)" href="">»</a> </li> </ul> </div> ');
-}]);
- return app;
-}));
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/public/javascripts/ng-table.min.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/javascripts/ng-table.min.js b/modules/webconfig/nodejs/public/javascripts/ng-table.min.js
deleted file mode 100755
index 6de3320..0000000
--- a/modules/webconfig/nodejs/public/javascripts/ng-table.min.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! ngTable v0.5.3 by Vitalii Savchuk(esvit666@gmail.com) - https://github.com/esvit/ng-table - New BSD License */
-
-!function(a,b){"use strict";return"function"==typeof define&&define.amd?void define(["angular"],function(a){return b(a)}):b(a)}(angular||null,function(a){"use strict";var b=a.module("ngTable",[]);return b.value("ngTableDefaults",{params:{},settings:{}}),b.factory("NgTableParams",["$q","$log","ngTableDefaults",function(b,c,d){var e=function(a){return!isNaN(parseFloat(a))&&isFinite(a)},f=function(f,g){var h=this,i=function(){k.debugMode&&c.debug&&c.debug.apply(this,arguments)};this.data=[],this.parameters=function(b,c){if(c=c||!1,a.isDefined(b)){for(var d in b){var f=b[d];if(c&&d.indexOf("[")>=0){for(var g=d.split(/\[(.*)\]/).reverse(),h="",k=0,l=g.length;l>k;k++){var m=g[k];if(""!==m){var n=f;f={},f[h=m]=e(n)?parseFloat(n):n}}"sorting"===h&&(j[h]={}),j[h]=a.extend(j[h]||{},f[h])}else j[d]=e(b[d])?parseFloat(b[d]):b[d]}return i("ngTable: set parameters",j),this}return j},this.settings=function(b){return a.isDefined(b)?(a.isArray(b.data)&&(b.total=b.data.length),k=a.extend(k,b),i("ngTa
ble: set settings",k),this):k},this.page=function(b){return a.isDefined(b)?this.parameters({page:b}):j.page},this.total=function(b){return a.isDefined(b)?this.settings({total:b}):k.total},this.count=function(b){return a.isDefined(b)?this.parameters({count:b,page:1}):j.count},this.filter=function(b){return a.isDefined(b)?this.parameters({filter:b,page:1}):j.filter},this.sorting=function(b){if(2==arguments.length){var c={};return c[b]=arguments[1],this.parameters({sorting:c}),this}return a.isDefined(b)?this.parameters({sorting:b}):j.sorting},this.isSortBy=function(b,c){return a.isDefined(j.sorting[b])&&a.equals(j.sorting[b],c)},this.orderBy=function(){var a=[];for(var b in j.sorting)a.push(("asc"===j.sorting[b]?"+":"-")+b);return a},this.getData=function(b,c){return b.resolve(a.isArray(this.data)&&a.isObject(c)?this.data.slice((c.page()-1)*c.count(),c.page()*c.count()):[]),b.promise},this.getGroups=function(c,d){var e=b.defer();return e.promise.then(function(b){var e={};a.forEach(b,fu
nction(b){var c=a.isFunction(d)?d(b):b[d];e[c]=e[c]||{data:[]},e[c].value=c,e[c].data.push(b)});var f=[];for(var g in e)f.push(e[g]);i("ngTable: refresh groups",f),c.resolve(f)}),this.getData(e,h)},this.generatePagesArray=function(a,b,c){var d,e,f,g,h,i;if(d=11,i=[],h=Math.ceil(b/c),h>1){i.push({type:"prev",number:Math.max(1,a-1),active:a>1}),i.push({type:"first",number:1,active:a>1,current:1===a}),f=Math.round((d-5)/2),g=Math.max(2,a-f),e=Math.min(h-1,a+2*f-(a-g)),g=Math.max(2,g-(2*f-(e-g)));for(var j=g;e>=j;)i.push(j===g&&2!==j||j===e&&j!==h-1?{type:"more",active:!1}:{type:"page",number:j,active:a!==j,current:a===j}),j++;i.push({type:"last",number:h,active:a!==h,current:a===h}),i.push({type:"next",number:Math.min(h,a+1),active:h>a})}return i},this.url=function(b){b=b||!1;var c=b?[]:{};for(var d in j)if(j.hasOwnProperty(d)){var e=j[d],f=encodeURIComponent(d);if("object"==typeof e){for(var g in e)if(!a.isUndefined(e[g])&&""!==e[g]){var h=f+"["+encodeURIComponent(g)+"]";b?c.push(h+"=
"+e[g]):c[h]=e[g]}}else a.isFunction(e)||a.isUndefined(e)||""===e||(b?c.push(f+"="+encodeURIComponent(e)):c[f]=encodeURIComponent(e))}return c},this.reload=function(){var a=b.defer(),c=this,d=null;if(k.$scope)return k.$loading=!0,d=k.groupBy?k.getGroups(a,k.groupBy,this):k.getData(a,this),i("ngTable: reload data"),d||(d=a.promise),d.then(function(a){return k.$loading=!1,i("ngTable: current scope",k.$scope),k.groupBy?(c.data=a,k.$scope&&(k.$scope.$groups=a)):(c.data=a,k.$scope&&(k.$scope.$data=a)),k.$scope&&(k.$scope.pages=c.generatePagesArray(c.page(),c.total(),c.count())),k.$scope.$emit("ngTableAfterReloadData"),a})},this.reloadPages=function(){var a=this;k.$scope.pages=a.generatePagesArray(a.page(),a.total(),a.count())};var j=this.$params={page:1,count:1,filter:{},sorting:{},group:{},groupBy:null};a.extend(j,d.params);var k={$scope:null,$loading:!1,data:null,total:0,defaultSort:"desc",filterDelay:750,counts:[10,25,50,100],sortingIndicator:"span",getGroups:this.getGroups,getData:th
is.getData};return a.extend(k,d.settings),this.settings(g),this.parameters(f,!0),this};return f}]),b.factory("ngTableParams",["NgTableParams",function(a){return a}]),b.controller("ngTableController",["$scope","NgTableParams","$timeout","$parse","$compile","$attrs","$element","ngTableColumn",function(b,c,d,e,f,g,h,i){function j(){b.params.$params.page=1}var k=!0;b.$filterRow={},b.$loading=!1,b.hasOwnProperty("params")||(b.params=new c,b.params.isNullInstance=!0),b.params.settings().$scope=b;var l=function(){var a=0;return function(b,c){d.cancel(a),a=d(b,c)}}();b.$watch("params.$params",function(c,d){if(c!==d){if(b.params.settings().$scope=b,a.equals(c.filter,d.filter))b.params.reload();else{var e=k?a.noop:j;l(function(){e(),b.params.reload()},b.params.settings().filterDelay)}b.params.isNullInstance||(k=!1)}},!0),this.compileDirectiveTemplates=function(){if(!h.hasClass("ng-table")){b.templates={header:g.templateHeader?g.templateHeader:"ng-table/header.html",pagination:g.templatePagina
tion?g.templatePagination:"ng-table/pager.html"},h.addClass("ng-table");var c=null;0===h.find("> thead").length&&(c=a.element(document.createElement("thead")).attr("ng-include","templates.header"),h.prepend(c));var d=a.element(document.createElement("div")).attr({"ng-table-pagination":"params","template-url":"templates.pagination"});h.after(d),c&&f(c)(b),f(d)(b)}},this.loadFilterData=function(c){a.forEach(c,function(c){var d;return d=c.filterData(b,{$column:c}),d?a.isObject(d)&&a.isObject(d.promise)?(delete c.filterData,d.promise.then(function(b){a.isArray(b)||a.isFunction(b)||a.isObject(b)?a.isArray(b)&&b.unshift({title:"-",id:""}):b=[],c.data=b})):c.data=d:void delete c.filterData})},this.buildColumns=function(a){return a.map(function(a){return i.buildColumn(a,b)})},this.setupBindingsToInternalScope=function(c){var d=e(c);b.$watch(d,function(c){a.isUndefined(c)||(b.paramsModel=d,b.params=c)},!1),g.showFilter&&b.$parent.$watch(g.showFilter,function(a){b.show_filter=a}),g.disableFil
ter&&b.$parent.$watch(g.disableFilter,function(a){b.$filterRow.disabled=a})},b.sortBy=function(a,c){var d=a.sortable&&a.sortable();if(d){var e=b.params.settings().defaultSort,f="asc"===e?"desc":"asc",g=b.params.sorting()&&b.params.sorting()[d]&&b.params.sorting()[d]===e,h=c.ctrlKey||c.metaKey?b.params.sorting():{};h[d]=g?f:e,b.params.parameters({sorting:h})}}}]),b.factory("ngTableColumn",[function(){function b(b,d){var e=Object.create(b);for(var f in c)void 0===e[f]&&(e[f]=c[f]),a.isFunction(e[f])||!function(a){e[a]=function(){return b[a]}}(f),function(a){var c=e[a];e[a]=function(){return 0===arguments.length?c.call(b,d):c.apply(b,arguments)}}(f);return e}var c={"class":function(){return""},filter:function(){return!1},filterData:a.noop,headerTemplateURL:function(){return!1},headerTitle:function(){return" "},sortable:function(){return!1},show:function(){return!0},title:function(){return" "},titleAlt:function(){return""}};return{buildColumn:b}}]),b.directive("ngTable",["$q","$parse",f
unction(b,c){return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(b){var d=[],e=0,f=null;return a.forEach(a.element(b.find("tr")),function(b){b=a.element(b),b.hasClass("ng-table-group")||f||(f=b)}),f?(a.forEach(f.find("td"),function(b){var f=a.element(b);if(!f.attr("ignore-cell")||"true"!==f.attr("ignore-cell")){var g=function(a){return f.attr("x-data-"+a)||f.attr("data-"+a)||f.attr(a)},h=function(b){var e=g(b);return e?function(b,f){return c(e)(b,a.extend(f||{},{$columns:d}))}:void 0},i=g("title-alt")||g("title");i&&f.attr("data-title-text","{{"+i+"}}"),d.push({id:e++,title:h("title"),titleAlt:h("title-alt"),headerTitle:h("header-title"),sortable:h("sortable"),"class":h("header-class"),filter:h("filter"),headerTemplateURL:h("header"),filterData:h("filter-data"),show:f.attr("ng-show")?function(a){return c(f.attr("ng-show"))(a)}:void 0})}}),function(a,b,c,e){a.$columns=d=e.buildColumns(d),e.setupBindingsToInternalScope(c.ngTable),e.loadFilterData
(d),e.compileDirectiveTemplates()}):void 0}}}]),b.directive("ngTableDynamic",["$parse",function(b){function c(a){if(!a||a.indexOf(" with ")>-1){var b=a.split(/\s+with\s+/);return{tableParams:b[0],columns:b[1]}}throw new Error("Parse error (expected example: ng-table-dynamic='tableParams with cols')")}return{restrict:"A",priority:1001,scope:!0,controller:"ngTableController",compile:function(d){var e;return a.forEach(a.element(d.find("tr")),function(b){b=a.element(b),b.hasClass("ng-table-group")||e||(e=b)}),e?(a.forEach(e.find("td"),function(b){var c=a.element(b),d=function(a){return c.attr("x-data-"+a)||c.attr("data-"+a)||c.attr(a)},e=d("title");e||c.attr("data-title-text","{{$columns[$index].titleAlt(this) || $columns[$index].title(this)}}");var f=c.attr("ng-show");f||c.attr("ng-show","$columns[$index].show(this)")}),function(a,d,e,f){var g=c(e.ngTableDynamic),h=b(g.columns)(a)||[];a.$columns=f.buildColumns(h),f.setupBindingsToInternalScope(g.tableParams),f.loadFilterData(a.$columns
),f.compileDirectiveTemplates()}):void 0}}}]),b.directive("ngTablePagination",["$compile",function(b){return{restrict:"A",scope:{params:"=ngTablePagination",templateUrl:"="},replace:!1,link:function(c,d){c.params.settings().$scope.$on("ngTableAfterReloadData",function(){c.pages=c.params.generatePagesArray(c.params.page(),c.params.total(),c.params.count())},!0),c.$watch("templateUrl",function(e){if(!a.isUndefined(e)){var f=a.element(document.createElement("div"));f.attr({"ng-include":"templateUrl"}),d.append(f),b(f)(c)}})}}}]),a.module("ngTable").run(["$templateCache",function(a){a.put("ng-table/filters/select-multiple.html",'<select ng-options="data.id as data.title for data in $column.data" ng-disabled="$filterRow.disabled" multiple ng-multiple="true" ng-model="params.filter()[name]" ng-show="filter==\'select-multiple\'" class="filter filter-select-multiple form-control" name="{{name}}"> </select>'),a.put("ng-table/filters/select.html",'<select ng-options="data.id as data.title for
data in $column.data" ng-disabled="$filterRow.disabled" ng-model="params.filter()[name]" ng-show="filter==\'select\'" class="filter filter-select form-control" name="{{name}}"> </select>'),a.put("ng-table/filters/text.html",'<input type="text" name="{{name}}" ng-disabled="$filterRow.disabled" ng-model="params.filter()[name]" ng-if="filter==\'text\'" class="input-filter form-control"/>'),a.put("ng-table/header.html",'<tr> <th title="{{$column.headerTitle(this)}}" ng-repeat="$column in $columns" ng-class="{ \'sortable\': $column.sortable(this), \'sort-asc\': params.sorting()[$column.sortable(this)]==\'asc\', \'sort-desc\': params.sorting()[$column.sortable(this)]==\'desc\' }" ng-click="sortBy($column, $event)" ng-show="$column.show(this)" ng-init="template=$column.headerTemplateURL(this)" class="header {{$column.class(this)}}"> <div ng-if="!template" ng-show="!template" class="ng-table-header" ng-class="{\'sort-indicator\': params.settings().sortingIndicator==\'div\'}"> <span ng-bind
="$column.title(this)" ng-class="{\'sort-indicator\': params.settings().sortingIndicator==\'span\'}"></span> </div> <div ng-if="template" ng-show="template" ng-include="template"></div> </th> </tr> <tr ng-show="show_filter" class="ng-table-filters"> <th data-title-text="{{$column.titleAlt(this) || $column.title(this)}}" ng-repeat="$column in $columns" ng-show="$column.show(this)" class="filter"> <div ng-repeat="(name, filter) in $column.filter(this)"> <div ng-if="filter.indexOf(\'/\') !==-1" ng-include="filter"></div> <div ng-if="filter.indexOf(\'/\')===-1" ng-include="\'ng-table/filters/\' + filter + \'.html\'"></div> </div> </th> </tr> '),a.put("ng-table/pager.html",'<div class="ng-cloak ng-table-pager" ng-if="params.data.length"> <div ng-if="params.settings().counts.length" class="ng-table-counts btn-group pull-right"> <button ng-repeat="count in params.settings().counts" type="button" ng-class="{\'active\':params.count()==count}" ng-click="params.count(count)" class="btn btn-def
ault"> <span ng-bind="count"></span> </button> </div> <ul class="pagination ng-table-pagination"> <li ng-class="{\'disabled\': !page.active && !page.current, \'active\': page.current}" ng-repeat="page in pages" ng-switch="page.type"> <a ng-switch-when="prev" ng-click="params.page(page.number)" href="">«</a> <a ng-switch-when="first" ng-click="params.page(page.number)" href=""><span ng-bind="page.number"></span></a> <a ng-switch-when="page" ng-click="params.page(page.number)" href=""><span ng-bind="page.number"></span></a> <a ng-switch-when="more" ng-click="params.page(page.number)" href="">…</a> <a ng-switch-when="last" ng-click="params.page(page.number)" href=""><span ng-bind="page.number"></span></a> <a ng-switch-when="next" ng-click="params.page(page.number)" href="">»</a> </li> </ul> </div> ')}]),b});
-//# sourceMappingURL=ng-table.min.js.map
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/public/stylesheets/ng-table.css
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/stylesheets/ng-table.css b/modules/webconfig/nodejs/public/stylesheets/ng-table.css
deleted file mode 100755
index 8a5207b..0000000
--- a/modules/webconfig/nodejs/public/stylesheets/ng-table.css
+++ /dev/null
@@ -1,136 +0,0 @@
-.ng-table th {
- text-align: center;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
-}
-.ng-table th.sortable {
- cursor: pointer;
-}
-.ng-table th.sortable .sort-indicator {
- padding-right: 18px;
- position: relative;
-}
-.ng-table th.sortable .sort-indicator:after,
-.ng-table th.sortable .sort-indicator:before {
- content: "";
- border-width: 0 4px 4px;
- border-style: solid;
- border-color: #000 transparent;
- visibility: visible;
- right: 5px;
- top: 50%;
- position: absolute;
- opacity: .3;
- margin-top: -4px;
-}
-.ng-table th.sortable .sort-indicator:before {
- margin-top: 2px;
- border-bottom: none;
- border-left: 4px solid transparent;
- border-right: 4px solid transparent;
- border-top: 4px solid #000;
-}
-.ng-table th.sortable .sort-indicator:hover:after,
-.ng-table th.sortable .sort-indicator:hover:before {
- opacity: 1;
- visibility: visible;
-}
-.ng-table th.sortable.sort-desc,
-.ng-table th.sortable.sort-asc {
- background-color: rgba(141, 192, 219, 0.25);
- text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
-}
-.ng-table th.sortable.sort-desc .sort-indicator:after,
-.ng-table th.sortable.sort-asc .sort-indicator:after {
- margin-top: -2px;
-}
-.ng-table th.sortable.sort-desc .sort-indicator:before,
-.ng-table th.sortable.sort-asc .sort-indicator:before {
- visibility: hidden;
-}
-.ng-table th.sortable.sort-asc .sort-indicator:after,
-.ng-table th.sortable.sort-asc .sort-indicator:hover:after {
- visibility: visible;
- filter: alpha(opacity=60);
- -khtml-opacity: 0.6;
- -moz-opacity: 0.6;
- opacity: 0.6;
-}
-.ng-table th.sortable.sort-desc .sort-indicator:after {
- border-bottom: none;
- border-left: 4px solid transparent;
- border-right: 4px solid transparent;
- border-top: 4px solid #000;
- visibility: visible;
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
- filter: alpha(opacity=60);
- -khtml-opacity: 0.6;
- -moz-opacity: 0.6;
- opacity: 0.6;
-}
-.ng-table th.filter .input-filter {
- margin: 0;
- display: block;
- width: 100%;
- min-height: 30px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-.ng-table + .pagination {
- margin-top: 0;
-}
-@media only screen and (max-width: 800px) {
- .ng-table-responsive {
- border-bottom: 1px solid #999999;
- }
- .ng-table-responsive tr {
- border-top: 1px solid #999999;
- border-left: 1px solid #999999;
- border-right: 1px solid #999999;
- }
- .ng-table-responsive td:before {
- position: absolute;
- padding: 8px;
- left: 0;
- top: 0;
- width: 50%;
- white-space: nowrap;
- text-align: left;
- font-weight: bold;
- }
- .ng-table-responsive thead tr th {
- text-align: left;
- }
- .ng-table-responsive thead tr.ng-table-filters th {
- padding: 0;
- }
- .ng-table-responsive thead tr.ng-table-filters th form > div {
- padding: 8px;
- }
- .ng-table-responsive td {
- border: none;
- border-bottom: 1px solid #eeeeee;
- position: relative;
- padding-left: 50%;
- white-space: normal;
- text-align: left;
- }
- .ng-table-responsive td:before {
- content: attr(data-title-text);
- }
- .ng-table-responsive,
- .ng-table-responsive thead,
- .ng-table-responsive tbody,
- .ng-table-responsive th,
- .ng-table-responsive td,
- .ng-table-responsive tr {
- display: block;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/public/stylesheets/ng-table.min.css
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/public/stylesheets/ng-table.min.css b/modules/webconfig/nodejs/public/stylesheets/ng-table.min.css
deleted file mode 100755
index 878f866..0000000
--- a/modules/webconfig/nodejs/public/stylesheets/ng-table.min.css
+++ /dev/null
@@ -1,3 +0,0 @@
-/*! ngTable v0.5.3 by Vitalii Savchuk(esvit666@gmail.com) - https://github.com/esvit/ng-table - New BSD License */
-
-.ng-table th{text-align:center;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ng-table th.sortable{cursor:pointer}.ng-table th.sortable .sort-indicator{padding-right:18px;position:relative}.ng-table th.sortable .sort-indicator:after,.ng-table th.sortable .sort-indicator:before{content:"";border-width:0 4px 4px;border-style:solid;border-color:#000 transparent;visibility:visible;right:5px;top:50%;position:absolute;opacity:.3;margin-top:-4px}.ng-table th.sortable .sort-indicator:before{margin-top:2px;border-bottom:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #000}.ng-table th.sortable .sort-indicator:hover:after,.ng-table th.sortable .sort-indicator:hover:before{opacity:1;visibility:visible}.ng-table th.sortable.sort-desc,.ng-table th.sortable.sort-asc{background-color:rgba(141,192,219,.25);text-shadow:0 1px 1px rgba(255,255,255,.75)}.ng-table th.sort
able.sort-desc .sort-indicator:after,.ng-table th.sortable.sort-asc .sort-indicator:after{margin-top:-2px}.ng-table th.sortable.sort-desc .sort-indicator:before,.ng-table th.sortable.sort-asc .sort-indicator:before{visibility:hidden}.ng-table th.sortable.sort-asc .sort-indicator:after,.ng-table th.sortable.sort-asc .sort-indicator:hover:after{visibility:visible;filter:alpha(opacity=60);-khtml-opacity:.6;-moz-opacity:.6;opacity:.6}.ng-table th.sortable.sort-desc .sort-indicator:after{border-bottom:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #000;visibility:visible;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;filter:alpha(opacity=60);-khtml-opacity:.6;-moz-opacity:.6;opacity:.6}.ng-table th.filter .input-filter{margin:0;display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.ng-table+.pagination{margin-top:0}@media only screen and (max-width:800px){.ng-table
-responsive{border-bottom:1px solid #999}.ng-table-responsive tr{border-top:1px solid #999;border-left:1px solid #999;border-right:1px solid #999}.ng-table-responsive td:before{position:absolute;padding:8px;left:0;top:0;width:50%;white-space:nowrap;text-align:left;font-weight:700}.ng-table-responsive thead tr th{text-align:left}.ng-table-responsive thead tr.ng-table-filters th{padding:0}.ng-table-responsive thead tr.ng-table-filters th form>div{padding:8px}.ng-table-responsive td{border:0;border-bottom:1px solid #eee;position:relative;padding-left:50%;white-space:normal;text-align:left}.ng-table-responsive td:before{content:attr(data-title-text)}.ng-table-responsive,.ng-table-responsive thead,.ng-table-responsive tbody,.ng-table-responsive th,.ng-table-responsive td,.ng-table-responsive tr{display:block}}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/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 663e6ba..4da5ea8 100644
--- a/modules/webconfig/nodejs/public/stylesheets/style.less
+++ b/modules/webconfig/nodejs/public/stylesheets/style.less
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
@logo-path: "https://www.filepicker.io/api/file/QagunjDGRFul2JgNCAli";
.main-header .logo {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/routes/auth.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/routes/auth.js b/modules/webconfig/nodejs/routes/auth.js
index 332be80..06240bf 100644
--- a/modules/webconfig/nodejs/routes/auth.js
+++ b/modules/webconfig/nodejs/routes/auth.js
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
var passport = require('passport');
var router = require('express').Router();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/routes/caches.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/routes/caches.js b/modules/webconfig/nodejs/routes/caches.js
index c4ca8df..d559e9f 100644
--- a/modules/webconfig/nodejs/routes/caches.js
+++ b/modules/webconfig/nodejs/routes/caches.js
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
var router = require('express').Router();
var db = require('../db');
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/routes/clusters.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/routes/clusters.js b/modules/webconfig/nodejs/routes/clusters.js
index d82fbea..4d947a6 100644
--- a/modules/webconfig/nodejs/routes/clusters.js
+++ b/modules/webconfig/nodejs/routes/clusters.js
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
var router = require('express').Router();
var db = require('../db');
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/routes/pages.js
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/routes/pages.js b/modules/webconfig/nodejs/routes/pages.js
index 7f19c4b..d111042 100644
--- a/modules/webconfig/nodejs/routes/pages.js
+++ b/modules/webconfig/nodejs/routes/pages.js
@@ -1,3 +1,20 @@
+/*
+ * 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.
+ */
+
var router = require('express').Router();
// GET dropdown-menu template.
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/caches.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/caches.jade b/modules/webconfig/nodejs/views/caches.jade
index beedfd1..f026538 100644
--- a/modules/webconfig/nodejs/views/caches.jade
+++ b/modules/webconfig/nodejs/views/caches.jade
@@ -1,7 +1,20 @@
-// Page with caches configuration.
+//-
+ 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.
+
extends layout-sidebar
-append css
- link(rel='stylesheet', href='/stylesheets/ng-table.css')
append scripts
script(src='/javascripts/controllers/caches.js')
block content
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/clients.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/clients.jade b/modules/webconfig/nodejs/views/clients.jade
index 1643b4a..f321936 100644
--- a/modules/webconfig/nodejs/views/clients.jade
+++ b/modules/webconfig/nodejs/views/clients.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.
+
extends layout-sidebar
block head
block content
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/clusterEdit.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/clusterEdit.jade b/modules/webconfig/nodejs/views/clusterEdit.jade
deleted file mode 100644
index 2592929..0000000
--- a/modules/webconfig/nodejs/views/clusterEdit.jade
+++ /dev/null
@@ -1,20 +0,0 @@
-div(class=['modal', 'center'] tabindex='-1' role='dialog')
- div.modal-dialog
- div.modal-content
- form(class=['form-horizontal'] ng-submit='submit()')
- div.modal-header(ng-show='title')
- div.modal-body
- div.row
- div.form-group
- label(class=['col-sm-3', 'control-label']) Cluster name:
- div.col-sm-8
- input.form-control(type='text' ng-model='cluster.name')
- div.row
- div.form-group
- label(class=['col-sm-3', 'control-label']) Discovery:
- div.col-sm-8
- select(class=['btn', 'btn-default'] ng-model='cluster.discovery' data-template='/select' data-placeholder='Choose discovery' bs-options='discovery.value as discovery.label for discovery in discoveries' bs-select)
- span.caret
- div.modal-footer
- input(type='submit' class=['btn', 'btn-primary'] value='Save changes')
- button(type="button" class=['btn', 'btn-default'] data-dismiss="modal" ng-click="$hide()") Close
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/discovery.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/discovery.jade b/modules/webconfig/nodejs/views/discovery.jade
index 46a4241..94c0461 100644
--- a/modules/webconfig/nodejs/views/discovery.jade
+++ b/modules/webconfig/nodejs/views/discovery.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
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/error.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/error.jade b/modules/webconfig/nodejs/views/error.jade
index c524855..cfa2ad1 100644
--- a/modules/webconfig/nodejs/views/error.jade
+++ b/modules/webconfig/nodejs/views/error.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.
+
extends layout
block container
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db79305f/modules/webconfig/nodejs/views/includes/footer.jade
----------------------------------------------------------------------
diff --git a/modules/webconfig/nodejs/views/includes/footer.jade b/modules/webconfig/nodejs/views/includes/footer.jade
index 5816240..5042443 100644
--- a/modules/webconfig/nodejs/views/includes/footer.jade
+++ b/modules/webconfig/nodejs/views/includes/footer.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=['container', 'container-footer'])
footer
center