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 2016/01/28 03:29:40 UTC
ignite git commit: IGNITE-2481 Added company,
country fields on sign up page.
Repository: ignite
Updated Branches:
refs/heads/ignite-843-rc2 aa842718c -> 587addf6f
IGNITE-2481 Added company, country fields on sign up page.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/587addf6
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/587addf6
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/587addf6
Branch: refs/heads/ignite-843-rc2
Commit: 587addf6f3818c766c99189fd1244be3f3aa73ba
Parents: aa84271
Author: Andrey <an...@gridgain.com>
Authored: Thu Jan 28 09:30:27 2016 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Thu Jan 28 09:30:27 2016 +0700
----------------------------------------------------------------------
.../src/main/js/app/data/countries.json | 266 +++++++++++++++++++
.../form-field-java-class.jade | 13 +-
.../control-center-web/src/main/js/app/index.js | 5 +
.../Form/validator/java-keywords.directive.js | 11 +-
.../src/main/js/app/modules/JavaTypes/index.js | 4 +-
.../configuration/include-event-types/main.js | 4 +-
.../main/js/app/providers/Countries/index.js | 25 ++
.../src/main/js/controllers/common-module.js | 13 +-
.../main/js/controllers/profile-controller.js | 25 +-
modules/control-center-web/src/main/js/db.js | 4 +
.../src/main/js/routes/profile.js | 8 +-
.../src/main/js/views/login.jade | 21 +-
.../src/main/js/views/settings/admin.jade | 6 +-
.../src/main/js/views/settings/profile.jade | 12 +-
14 files changed, 384 insertions(+), 33 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/app/data/countries.json
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/data/countries.json b/modules/control-center-web/src/main/js/app/data/countries.json
new file mode 100644
index 0000000..371e318
--- /dev/null
+++ b/modules/control-center-web/src/main/js/app/data/countries.json
@@ -0,0 +1,266 @@
+[
+ "Afghanistan",
+ "Albania",
+ "Algeria",
+ "American Samoa",
+ "Andorra",
+ "Angola",
+ "Anguilla",
+ "Antarctica",
+ "Antigua and Barbuda",
+ "Argentina",
+ "Armenia",
+ "Aruba",
+ "Australia",
+ "Austria",
+ "Azerbaijan",
+ "Bahamas",
+ "Bahrain",
+ "Bangladesh",
+ "Barbados",
+ "Belarus",
+ "Belgium",
+ "Belize",
+ "Benin",
+ "Bermuda",
+ "Bhutan",
+ "Bolivia",
+ "Bosnia and Herzegovina",
+ "Botswana",
+ "Bouvet Island",
+ "Brazil",
+ "British Antarctic Territory",
+ "British Indian Ocean Territory",
+ "British Virgin Islands",
+ "Brunei",
+ "Bulgaria",
+ "Burkina Faso",
+ "Burundi",
+ "Cambodia",
+ "Cameroon",
+ "Canada",
+ "Canton and Enderbury Islands",
+ "Cape Verde",
+ "Cayman Islands",
+ "Central African Republic",
+ "Chad",
+ "Chile",
+ "China",
+ "Christmas Island",
+ "Cocos [Keeling] Islands",
+ "Colombia",
+ "Comoros",
+ "Congo - Brazzaville",
+ "Congo - Kinshasa",
+ "Cook Islands",
+ "Costa Rica",
+ "Croatia",
+ "Cuba",
+ "Cyprus",
+ "Czech Republic",
+ "Côte d’Ivoire",
+ "Denmark",
+ "Djibouti",
+ "Dominica",
+ "Dominican Republic",
+ "Dronning Maud Land",
+ "East Germany",
+ "Ecuador",
+ "Egypt",
+ "El Salvador",
+ "Equatorial Guinea",
+ "Eritrea",
+ "Estonia",
+ "Ethiopia",
+ "Falkland Islands",
+ "Faroe Islands",
+ "Fiji",
+ "Finland",
+ "France",
+ "French Guiana",
+ "French Polynesia",
+ "French Southern Territories",
+ "French Southern and Antarctic Territories",
+ "Gabon",
+ "Gambia",
+ "Georgia",
+ "Germany",
+ "Ghana",
+ "Gibraltar",
+ "Greece",
+ "Greenland",
+ "Grenada",
+ "Guadeloupe",
+ "Guam",
+ "Guatemala",
+ "Guernsey",
+ "Guinea",
+ "Guinea-Bissau",
+ "Guyana",
+ "Haiti",
+ "Heard Island and McDonald Islands",
+ "Honduras",
+ "Hong Kong SAR China",
+ "Hungary",
+ "Iceland",
+ "India",
+ "Indonesia",
+ "Iran",
+ "Iraq",
+ "Ireland",
+ "Isle of Man",
+ "Israel",
+ "Italy",
+ "Jamaica",
+ "Japan",
+ "Jersey",
+ "Johnston Island",
+ "Jordan",
+ "Kazakhstan",
+ "Kenya",
+ "Kiribati",
+ "Kuwait",
+ "Kyrgyzstan",
+ "Laos",
+ "Latvia",
+ "Lebanon",
+ "Lesotho",
+ "Liberia",
+ "Libya",
+ "Liechtenstein",
+ "Lithuania",
+ "Luxembourg",
+ "Macau SAR China",
+ "Macedonia",
+ "Madagascar",
+ "Malawi",
+ "Malaysia",
+ "Maldives",
+ "Mali",
+ "Malta",
+ "Marshall Islands",
+ "Martinique",
+ "Mauritania",
+ "Mauritius",
+ "Mayotte",
+ "Metropolitan France",
+ "Mexico",
+ "Micronesia",
+ "Midway Islands",
+ "Moldova",
+ "Monaco",
+ "Mongolia",
+ "Montenegro",
+ "Montserrat",
+ "Morocco",
+ "Mozambique",
+ "Myanmar [Burma]",
+ "Namibia",
+ "Nauru",
+ "Nepal",
+ "Netherlands",
+ "Netherlands Antilles",
+ "Neutral Zone",
+ "New Caledonia",
+ "New Zealand",
+ "Nicaragua",
+ "Niger",
+ "Nigeria",
+ "Niue",
+ "Norfolk Island",
+ "North Korea",
+ "North Vietnam",
+ "Northern Mariana Islands",
+ "Norway",
+ "Oman",
+ "Pacific Islands Trust Territory",
+ "Pakistan",
+ "Palau",
+ "Palestinian Territories",
+ "Panama",
+ "Panama Canal Zone",
+ "Papua New Guinea",
+ "Paraguay",
+ "People's Democratic Republic of Yemen",
+ "Peru",
+ "Philippines",
+ "Pitcairn Islands",
+ "Poland",
+ "Portugal",
+ "Puerto Rico",
+ "Qatar",
+ "Romania",
+ "Russia",
+ "Rwanda",
+ "Réunion",
+ "Saint Barthélemy",
+ "Saint Helena",
+ "Saint Kitts and Nevis",
+ "Saint Lucia",
+ "Saint Martin",
+ "Saint Pierre and Miquelon",
+ "Saint Vincent and the Grenadines",
+ "Samoa",
+ "San Marino",
+ "Saudi Arabia",
+ "Senegal",
+ "Serbia",
+ "Serbia and Montenegro",
+ "Seychelles",
+ "Sierra Leone",
+ "Singapore",
+ "Slovakia",
+ "Slovenia",
+ "Solomon Islands",
+ "Somalia",
+ "South Africa",
+ "South Georgia and the South Sandwich Islands",
+ "South Korea",
+ "Spain",
+ "Sri Lanka",
+ "Sudan",
+ "Suriname",
+ "Svalbard and Jan Mayen",
+ "Swaziland",
+ "Sweden",
+ "Switzerland",
+ "Syria",
+ "São Tomé and Príncipe",
+ "Taiwan",
+ "Tajikistan",
+ "Tanzania",
+ "Thailand",
+ "Timor-Leste",
+ "Togo",
+ "Tokelau",
+ "Tonga",
+ "Trinidad and Tobago",
+ "Tunisia",
+ "Turkey",
+ "Turkmenistan",
+ "Turks and Caicos Islands",
+ "Tuvalu",
+ "U.S. Minor Outlying Islands",
+ "U.S. Miscellaneous Pacific Islands",
+ "U.S. Virgin Islands",
+ "Uganda",
+ "Ukraine",
+ "Union of Soviet Socialist Republics",
+ "United Arab Emirates",
+ "United Kingdom",
+ "United States",
+ "Unknown or Invalid Region",
+ "Uruguay",
+ "Uzbekistan",
+ "Vanuatu",
+ "Vatican City",
+ "Venezuela",
+ "Vietnam",
+ "Wake Island",
+ "Wallis and Futuna",
+ "Western Sahara",
+ "Yemen",
+ "Zambia",
+ "Zimbabwe",
+ "Åland Islands"
+]
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.jade b/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.jade
index 5c7b75d..0d3c6c0 100644
--- a/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.jade
+++ b/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.jade
@@ -1,8 +1,7 @@
mixin feedback(error, message)
i.fa.fa-exclamation-triangle.form-control-feedback(
ng-show='!form[name].$pristine && form[name].$error.#{error}'
- bs-tooltip
- data-title='#{message}'
+ bs-tooltip='"#{message}"'
)
div
@@ -28,8 +27,8 @@ div
)
span(ng-transclude)
- +feedback('javaIdentifier', 'Trust manager is invalid!')
- +feedback('required', 'Trust manager could not be empty!')
- +feedback('javaKeywords', 'Trust manager could not contains reserved java keyword: ""!')
- +feedback('javaBuiltInClass', 'Trust manager should not be the Java built-in class!')
- +feedback('javaPackageSpecified', 'Trust manager does not have package specified!')
+ +feedback('javaIdentifier', '{{ name }} is invalid!')
+ +feedback('required', '{{ name }} could not be empty!')
+ +feedback('javaKeywords', '{{ name }} could not contains reserved Java keyword!')
+ +feedback('javaBuiltInClass', '{{ name }} should not be the Java built-in class!')
+ +feedback('javaPackageSpecified', '{{ name }} does not have package specified!')
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/app/index.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/index.js b/modules/control-center-web/src/main/js/app/index.js
index 9c6e067..782e83b 100644
--- a/modules/control-center-web/src/main/js/app/index.js
+++ b/modules/control-center-web/src/main/js/app/index.js
@@ -91,6 +91,9 @@ import igniteFormFieldJavaClass from './directives/form-field-java-class/form-fi
// Services.
import IgniteUiAceOnLoad from './services/UiAceOnLoad/service';
+// Providers
+import igniteCountries from './providers/countries/index';
+
// Filters.
import hasPojo from './filters/hasPojo/hasPojo.filter';
@@ -131,6 +134,8 @@ angular
.directive(...igniteFormFieldJavaClass)
// Services.
.service(...IgniteUiAceOnLoad)
+// Providers.
+.provider(...igniteCountries)
// Filters.
.filter(...hasPojo)
.config(['$stateProvider', '$locationProvider', '$urlRouterProvider', function($stateProvider, $locationProvider, $urlRouterProvider) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js
index 9c91262..8faae6d 100644
--- a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js
+++ b/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js
@@ -20,7 +20,16 @@ export default ['javaKeywords', ['JavaTypes', (JavaTypes) => {
if (typeof attrs.javaKeywords === 'undefined' || !attrs.javaKeywords)
return;
- ngModel.$validators.javaKeywords = JavaTypes.nonKeywords;
+ ngModel.$validators.javaKeywords = (value) => {
+ if (value) {
+ for (const item of value.split('.')) {
+ if (JavaTypes.isKeywords(item))
+ return false;
+ }
+ }
+
+ return true;
+ };
};
return {
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/app/modules/JavaTypes/index.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/JavaTypes/index.js b/modules/control-center-web/src/main/js/app/modules/JavaTypes/index.js
index e5d1675..56dd9dc 100644
--- a/modules/control-center-web/src/main/js/app/modules/JavaTypes/index.js
+++ b/modules/control-center-web/src/main/js/app/modules/JavaTypes/index.js
@@ -59,8 +59,8 @@ angular
* @param value text to check.
* @returns boolean 'true' if given text non Java keyword.
*/
- nonKeywords(value) {
- return !_.contains(JAVA_KEYWORDS, value);
+ isKeywords(value) {
+ return _.contains(JAVA_KEYWORDS, value);
}
};
}];
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/app/modules/configuration/include-event-types/main.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/configuration/include-event-types/main.js b/modules/control-center-web/src/main/js/app/modules/configuration/include-event-types/main.js
index c4c0a93..17d7d3a 100644
--- a/modules/control-center-web/src/main/js/app/modules/configuration/include-event-types/main.js
+++ b/modules/control-center-web/src/main/js/app/modules/configuration/include-event-types/main.js
@@ -52,9 +52,7 @@ angular
'EVT_IGFS_META_UPDATED', 'EVT_IGFS_DIR_CREATED', 'EVT_IGFS_DIR_RENAMED', 'EVT_IGFS_DIR_DELETED']
};
- this.push = function(data) {
- items.push(data);
- };
+ this.push = (data) => items.push(data);
this.$get = [() => {
return items;
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/app/providers/Countries/index.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/providers/Countries/index.js b/modules/control-center-web/src/main/js/app/providers/Countries/index.js
new file mode 100644
index 0000000..748e4ff
--- /dev/null
+++ b/modules/control-center-web/src/main/js/app/providers/Countries/index.js
@@ -0,0 +1,25 @@
+/*
+ * 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.
+ */
+
+// Java built-in short class names.
+import COUNTRIES from 'app/data/countries.json!';
+
+export default ['igniteCountries', function() {
+ this.$get = [() => {
+ return COUNTRIES;
+ }];
+}];
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/controllers/common-module.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/common-module.js b/modules/control-center-web/src/main/js/controllers/common-module.js
index c691f00..cc7eb3e 100644
--- a/modules/control-center-web/src/main/js/controllers/common-module.js
+++ b/modules/control-center-web/src/main/js/controllers/common-module.js
@@ -2036,15 +2036,14 @@ consoleModule.controller('resetPassword', [
// Login popup controller.
// TODO IGNITE-1936 Refactor this controller.
-consoleModule.controller('auth', [
- '$scope', '$focus', 'Auth',
- function ($scope, $focus, Auth) {
- $scope.auth = Auth.auth;
+consoleModule.controller('auth', ['$scope', '$focus', 'Auth', 'igniteCountries', function ($scope, $focus, Auth, countries) {
+ $scope.auth = Auth.auth;
- $scope.action = 'login';
+ $scope.action = 'login';
+ $scope.countries = countries;
- $focus('user_email');
- }]);
+ $focus('user_email');
+}]);
// Download agent controller.
consoleModule.service('$agentDownload', [
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/controllers/profile-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/profile-controller.js b/modules/control-center-web/src/main/js/controllers/profile-controller.js
index 3a37a6b..b7ea353 100644
--- a/modules/control-center-web/src/main/js/controllers/profile-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/profile-controller.js
@@ -17,9 +17,11 @@
// Controller for Profile screen.
consoleModule.controller('profileController',
- ['$scope', '$http', '$common', '$focus', '$confirm', function ($scope, $http, $common, $focus, $confirm) {
+ ['$scope', '$http', '$common', '$focus', '$confirm', 'igniteCountries', function ($scope, $http, $common, $focus, $confirm, countries) {
$scope.profileUser = angular.copy($scope.$root.user);
+ $scope.countries = countries;
+
if ($scope.profileUser && !$scope.profileUser.token)
$scope.profileUser.token = 'No security token. Regenerate please.';
@@ -34,8 +36,9 @@ consoleModule.controller('profileController',
var old = $scope.$root.user;
var cur = $scope.profileUser;
- return old && (old.username != cur.username || old.email != cur.email || old.token != cur.token ||
- (cur.changePassword && !$common.isEmptyString(cur.newPassword)));
+ return old && (old.username != cur.username || old.email != cur.email ||
+ old.company != cur.company || old.country != cur.country
+ || old.token != cur.token || (cur.changePassword && !$common.isEmptyString(cur.newPassword)));
};
$scope.profileCouldBeSaved = function () {
@@ -59,14 +62,22 @@ consoleModule.controller('profileController',
var email = profile.email;
var changeEmail = email != $scope.$root.user.email;
+ var company = profile.company;
+ var changeCompany = company != $scope.$root.user.company;
+
+ var country = profile.country;
+ var changeCountry = country != $scope.$root.user.country;
+
var token = profile.token;
var changeToken = token != $scope.$root.user.token;
- if (changeUsername || changeEmail || changeToken || profile.changePassword) {
+ if (changeUsername || changeEmail || changeCompany || changeCountry || changeToken || profile.changePassword) {
$http.post('/api/v1/profile/save', {
_id: profile._id,
userName: changeUsername ? userName : undefined,
email: changeEmail ? email : undefined,
+ company: changeCompany ? company : undefined,
+ country: changeCountry ? country : undefined,
token: changeToken ? token : undefined,
newPassword: profile.changePassword ? profile.newPassword : undefined
}).success(function (user) {
@@ -82,6 +93,12 @@ consoleModule.controller('profileController',
if (changeEmail)
$scope.$root.user.email = email;
+ if (changeCompany)
+ $scope.$root.user.company = company;
+
+ if (changeCountry)
+ $scope.$root.user.country = country;
+
$focus('profile-username');
}).error(function (err) {
$common.showError('Failed to save profile: ' + $common.errorMessage(err));
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/db.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/db.js b/modules/control-center-web/src/main/js/db.js
index 1e5490e..c2200c7 100644
--- a/modules/control-center-web/src/main/js/db.js
+++ b/modules/control-center-web/src/main/js/db.js
@@ -33,6 +33,8 @@ mongoose.connect(config.get('mongoDB:url'), {server: {poolSize: 4}});
var AccountSchema = new Schema({
username: String,
email: String,
+ company: String,
+ country: String,
lastLogin: Date,
admin: Boolean,
token: String,
@@ -50,6 +52,8 @@ AccountSchema.set('toJSON', {
_id: ret._id,
email: ret.email,
username: ret.username,
+ company: ret.company,
+ country: ret.country,
admin: ret.admin,
token: ret.token,
lastLogin: ret.lastLogin
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/routes/profile.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/routes/profile.js b/modules/control-center-web/src/main/js/routes/profile.js
index 0a166f3..4fa154d 100644
--- a/modules/control-center-web/src/main/js/routes/profile.js
+++ b/modules/control-center-web/src/main/js/routes/profile.js
@@ -25,10 +25,16 @@ function _updateUser(res, user, params) {
if (params.email)
user.email = params.email;
+ if (params.company)
+ user.company = params.company;
+
+ if (params.country)
+ user.country = params.country;
+
if (params.token)
user.token = params.token;
- if (params.userName || params.email || params.token || params.newPassword)
+ if (params.userName || params.email || params.company || params.country || params.token || params.newPassword)
user.save(function (err) {
if (err)
// TODO IGNITE-843 Send error to admin.
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/views/login.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/login.jade b/modules/control-center-web/src/main/js/views/login.jade
index 7be4726..92f679b 100644
--- a/modules/control-center-web/src/main/js/views/login.jade
+++ b/modules/control-center-web/src/main/js/views/login.jade
@@ -15,6 +15,9 @@
limitations under the License.
mixin lbl(txt)
+ label.col-xs-3.col-md-3 #{txt}
+
+mixin lblRequired(txt)
label.col-xs-3.col-md-3.required #{txt}
header#header.header
@@ -39,19 +42,27 @@ header#header.header
p.col-xs-12.col-md-11(ng-show='action == "password/forgot"')
| That's ok! Simply enter your email below and a reset password link will be sent to you via email. You can then follow that link and select a new password.
.settings-row(ng-show='action == "register"')
- +lbl('Full Name:')
+ +lblRequired('Full Name:')
.col-xs-9.col-md-8
input#user_name.form-control(enter-focus-next='user_email' type='text' ng-model='user_info.username' placeholder='John Smith' ng-required='action=="register"')
.settings-row
- +lbl('Email:')
+ +lblRequired('Email:')
+ .col-xs-9.col-md-8
+ input#user_email.form-control(enter-focus-next='company' type='email' ng-model='user_info.email' placeholder='you@domain.com' required)
+ .settings-row(ng-show='action == "register"')
+ +lbl('Company:')
+ .col-xs-9.col-md-8
+ input#company.form-control(enter-focus-next='country' type='text' ng-model='user_info.company' placeholder='You company name')
+ .settings-row(ng-show='action == "register"')
+ +lbl('Country:')
.col-xs-9.col-md-8
- input#user_email.form-control(enter-focus-next='user_password' type='email' ng-model='user_info.email' placeholder='you@domain.com' required on-enter='action == "password/forgot" && loginForm.$valid && auth(action, user_info)')
+ button#country.select-toggle.form-control(bs-select bs-options='item for item in countries' enter-focus-next='user_password' type='text' ng-model='user_info.country' placeholder='Choose you country')
.settings-row(ng-show='action != "password/forgot"')
- +lbl('Password:')
+ +lblRequired('Password:')
.col-xs-9.col-md-8
input#user_password.form-control(enter-focus-next='user_confirm' type='password' ng-model='user_info.password' placeholder='Password' ng-required='action != "password/forgot"' on-enter='action == "login" && loginForm.$valid && auth(action, user_info)')
.settings-row(ng-if='action == "register"')
- +lbl('Confirm:')
+ +lblRequired('Confirm:')
.col-xs-9.col-md-8
input#user_confirm.form-control(type='password' ng-model='user_info.confirm' match='user_info.password' placeholder='Confirm password' ng-required='action == "register"' on-enter='loginForm.$valid && auth(action, user_info)')
.settings-row(ignite-terms)
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/views/settings/admin.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/settings/admin.jade b/modules/control-center-web/src/main/js/views/settings/admin.jade
index b1e08d7..a6c05a8 100644
--- a/modules/control-center-web/src/main/js/views/settings/admin.jade
+++ b/modules/control-center-web/src/main/js/views/settings/admin.jade
@@ -21,12 +21,14 @@
table.table.table-striped.admin(st-table='displayedUsers' st-safe-src='users')
thead
tr
- th.header(colspan='5')
+ th.header(colspan='7')
.col-sm-2.pull-right
input.form-control(type='text' st-search='' placeholder='Filter users...')
tr
th(st-sort='username') User name
th(st-sort='email') Email
+ th(st-sort='company') Company
+ th(st-sort='country') Country
th.col-sm-2(st-sort='lastLogin') Last login
th(width='1%' st-sort='admin') Admin
th(width='1%') Actions
@@ -35,6 +37,8 @@
td {{row.username}}
td
a(ng-href='mailto:{{row.email}}') {{row.email}}
+ td {{row.company}}
+ td {{row.country}}
td
span {{row.lastLogin | date:'medium'}}
td(style='text-align: center;')
http://git-wip-us.apache.org/repos/asf/ignite/blob/587addf6/modules/control-center-web/src/main/js/views/settings/profile.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/settings/profile.jade b/modules/control-center-web/src/main/js/views/settings/profile.jade
index 963519b..7cc72c3 100644
--- a/modules/control-center-web/src/main/js/views/settings/profile.jade
+++ b/modules/control-center-web/src/main/js/views/settings/profile.jade
@@ -28,11 +28,19 @@ mixin lbl(txt)
.details-row
+lbl('User name:')
.col-xs-5.col-sm-4
- input.form-control(id='profile-username' type='text' ng-model='profileUser.username' placeholder='Input name' required auto-focus)
+ input#profile-username.form-control(type='text' ng-model='profileUser.username' placeholder='Input name' required auto-focus)
.details-row
+lbl('Email:')
.col-xs-5.col-sm-4
- input.form-control(id='profile-email' type='email' ng-model='profileUser.email' placeholder='you@domain.com' required)
+ input#profile-email.form-control(type='email' ng-model='profileUser.email' placeholder='you@domain.com' required)
+ .details-row
+ label.col-sm-2.required.labelFormField Company:
+ .col-xs-5.col-sm-4
+ input#profile-company.form-control(type='text' ng-model='profileUser.company' placeholder='You company name')
+ .details-row
+ label.col-sm-2.required.labelFormField Country:
+ .col-xs-5.col-sm-4
+ button#profile-country.select-toggle.form-control(bs-select bs-options='item for item in countries' type='text' ng-model='profileUser.country' placeholder='Choose you country')
.details-row
.advanced-options
i.fa.fa-chevron-circle-down(ng-show='profileUser.showToken' ng-click='profileUser.showToken = ! profileUser.showToken')