Browse Source

User data filter

Sotaro KARASAWA 9 years ago
parent
commit
2e5f54d45b
2 changed files with 6 additions and 5 deletions
  1. 2 2
      lib/models/user.js
  2. 4 3
      lib/routes/page.js

+ 2 - 2
lib/models/user.js

@@ -258,8 +258,8 @@ module.exports = function(crowi) {
   };
   };
 
 
   userSchema.statics.filterToPublicFields = function(user) {
   userSchema.statics.filterToPublicFields = function(user) {
-    debug('Filter', user);
-    if (typeof user !== 'object') {
+    debug('User is', typeof user, user);
+    if (typeof user !== 'object' || !user._id) {
       return user;
       return user;
     }
     }
 
 

+ 4 - 3
lib/routes/page.js

@@ -549,10 +549,11 @@ module.exports = function(crowi, app) {
       if (!data) {
       if (!data) {
         throw new Error('Failed to create page.');
         throw new Error('Failed to create page.');
       }
       }
+      var result = { page: data.toObject() };
 
 
-      data.lastUpdateUser = User.filterToPublicFields(data.lastUpdateUser);
-      data.creator = User.filterToPublicFields(data.creator);
-      return res.json(ApiResponse.success(data));
+      result.page.lastUpdateUser = User.filterToPublicFields(data.lastUpdateUser);
+      result.page.creator = User.filterToPublicFields(data.creator);
+      return res.json(ApiResponse.success(result));
     }).catch(function(err) {
     }).catch(function(err) {
       return res.json(ApiResponse.error(err));
       return res.json(ApiResponse.error(err));
     });;
     });;