You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by se...@apache.org on 2015/07/08 16:39:24 UTC

incubator-ignite git commit: # IGNITE-843 Refactoring: don't send whole user object to client.

Repository: incubator-ignite
Updated Branches:
  refs/heads/ignite-843 1d792a230 -> a2da2b61a


# IGNITE-843 Refactoring: don't send whole user object to client.


Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/a2da2b61
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/a2da2b61
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/a2da2b61

Branch: refs/heads/ignite-843
Commit: a2da2b61ade1f1b129e82739722e69b72d5c9bb2
Parents: 1d792a2
Author: sevdokimov <se...@gridgain.com>
Authored: Wed Jul 8 17:39:16 2015 +0300
Committer: sevdokimov <se...@gridgain.com>
Committed: Wed Jul 8 17:39:16 2015 +0300

----------------------------------------------------------------------
 modules/web-control-center/nodejs/app.js        | 14 ++++++++++
 .../web-control-center/nodejs/routes/admin.js   | 13 +++++++--
 .../web-control-center/nodejs/routes/caches.js  |  2 +-
 .../nodejs/routes/clusters.js                   |  2 +-
 .../nodejs/routes/persistences.js               |  2 +-
 .../web-control-center/nodejs/routes/public.js  |  2 +-
 .../web-control-center/nodejs/utils/ui-utils.js | 29 ++++++++++++++++++++
 .../web-control-center/nodejs/views/layout.jade |  2 +-
 8 files changed, 58 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a2da2b61/modules/web-control-center/nodejs/app.js
----------------------------------------------------------------------
diff --git a/modules/web-control-center/nodejs/app.js b/modules/web-control-center/nodejs/app.js
index b166917..b733d32 100644
--- a/modules/web-control-center/nodejs/app.js
+++ b/modules/web-control-center/nodejs/app.js
@@ -32,6 +32,8 @@ var persistencesRouter = require('./routes/persistences');
 var summary = require('./routes/summary');
 var adminRouter = require('./routes/admin');
 
+var uiUtils = require('./utils/ui-utils');
+
 var passport = require('passport');
 
 var db = require('./db');
@@ -90,6 +92,18 @@ var adminOnly = function(req, res, next) {
 app.all('/admin/*', mustAuthenticated, adminOnly);
 app.all('/configuration/*', mustAuthenticated);
 
+for (var p in uiUtils) {
+    if (uiUtils.hasOwnProperty(p)) {
+        app.locals[p] = uiUtils[p];
+    }
+}
+
+app.all('*', function(req, res, next) {
+    res.locals.user = req.user;
+
+    next()
+});
+
 app.use('/', publicRoutes);
 app.use('/admin', adminRouter);
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a2da2b61/modules/web-control-center/nodejs/routes/admin.js
----------------------------------------------------------------------
diff --git a/modules/web-control-center/nodejs/routes/admin.js b/modules/web-control-center/nodejs/routes/admin.js
index 87049e0..db6bd12 100644
--- a/modules/web-control-center/nodejs/routes/admin.js
+++ b/modules/web-control-center/nodejs/routes/admin.js
@@ -17,6 +17,7 @@
 
 var router = require('express').Router();
 var db = require('../db');
+var uiUtils = require('../utils/ui-utils');
 
 /**
  * Get list of user accounts.
@@ -25,8 +26,14 @@ router.get('/ajax/list', function(req, res) {
     db.Account.find({}, function (err, users) {
         if (err)
             return res.status(500).send(err.message);
-        
-        res.json(users);
+
+        var uiUsers = [];
+
+        for (var i = 0; i < users.length; i++) {
+            uiUsers.push(uiUtils.filterUser(users[i]))
+        }
+
+        res.json(uiUsers);
     });
 });
 
@@ -54,7 +61,7 @@ router.get('/ajax/setAdmin', function(req, res) {
 });
 
 router.get('/userList', function(req, res) {
-    res.render('admin/userList', { user: req.user });
+    res.render('admin/userList');
 });
 
 router.get('/become', function(req, res) {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a2da2b61/modules/web-control-center/nodejs/routes/caches.js
----------------------------------------------------------------------
diff --git a/modules/web-control-center/nodejs/routes/caches.js b/modules/web-control-center/nodejs/routes/caches.js
index 4144517..b681fd7 100644
--- a/modules/web-control-center/nodejs/routes/caches.js
+++ b/modules/web-control-center/nodejs/routes/caches.js
@@ -20,7 +20,7 @@ var db = require('../db');
 
 /* GET caches page. */
 router.get('/', function(req, res) {
-    res.render('caches', { user: req.user });
+    res.render('caches');
 });
 
 /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a2da2b61/modules/web-control-center/nodejs/routes/clusters.js
----------------------------------------------------------------------
diff --git a/modules/web-control-center/nodejs/routes/clusters.js b/modules/web-control-center/nodejs/routes/clusters.js
index 24e64c8..b99b473 100644
--- a/modules/web-control-center/nodejs/routes/clusters.js
+++ b/modules/web-control-center/nodejs/routes/clusters.js
@@ -20,7 +20,7 @@ var db = require('../db');
 
 /* GET clusters page. */
 router.get('/', function(req, res) {
-    res.render('clusters', { user: req.user });
+    res.render('clusters');
 });
 
 /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a2da2b61/modules/web-control-center/nodejs/routes/persistences.js
----------------------------------------------------------------------
diff --git a/modules/web-control-center/nodejs/routes/persistences.js b/modules/web-control-center/nodejs/routes/persistences.js
index 2b784bb..7ab32a0 100644
--- a/modules/web-control-center/nodejs/routes/persistences.js
+++ b/modules/web-control-center/nodejs/routes/persistences.js
@@ -21,7 +21,7 @@ var ds = require('../public/javascripts/dataStructures.js'), jdbcTypes = ds.jdbc
 
 /* GET persistence page. */
 router.get('/', function(req, res) {
-    res.render('persistence', { user: req.user });
+    res.render('persistence');
 });
 
 /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a2da2b61/modules/web-control-center/nodejs/routes/public.js
----------------------------------------------------------------------
diff --git a/modules/web-control-center/nodejs/routes/public.js b/modules/web-control-center/nodejs/routes/public.js
index 4e99e9d..af4c74f 100644
--- a/modules/web-control-center/nodejs/routes/public.js
+++ b/modules/web-control-center/nodejs/routes/public.js
@@ -92,7 +92,7 @@ router.get('/', function(req, res) {
     if (req.isAuthenticated())
         res.redirect('/configuration/clusters');
     else
-        res.render('index', { user: req.user });
+        res.render('index');
 });
 
 ///* GET sql page. */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a2da2b61/modules/web-control-center/nodejs/utils/ui-utils.js
----------------------------------------------------------------------
diff --git a/modules/web-control-center/nodejs/utils/ui-utils.js b/modules/web-control-center/nodejs/utils/ui-utils.js
new file mode 100644
index 0000000..e9e680b
--- /dev/null
+++ b/modules/web-control-center/nodejs/utils/ui-utils.js
@@ -0,0 +1,29 @@
+/*
+ * 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.
+ */
+
+exports.filterUser = function (user) {
+    if (!user)
+        return null;
+
+    return {
+        _id: user._id,
+        username: user.username,
+        lastLogin: user.lastLogin,
+        admin: user.admin,
+        email: user.email
+    }
+};
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/a2da2b61/modules/web-control-center/nodejs/views/layout.jade
----------------------------------------------------------------------
diff --git a/modules/web-control-center/nodejs/views/layout.jade b/modules/web-control-center/nodejs/views/layout.jade
index 88dfee7..953daab 100644
--- a/modules/web-control-center/nodejs/views/layout.jade
+++ b/modules/web-control-center/nodejs/views/layout.jade
@@ -15,7 +15,7 @@
     limitations under the License.
 
 doctype html
-html(ng-app='ignite-web-control-center', ng-init='loggedInUser = #{JSON.stringify(user)}')
+html(ng-app='ignite-web-control-center', ng-init='loggedInUser = #{JSON.stringify(filterUser(user))}')
     head
         title= title