From e2ac73f5a36310dead9e23f46004ccef909f317b Mon Sep 17 00:00:00 2001
From: BoHong Li <a60814billy@gmail.com>
Date: Wed, 12 Apr 2017 05:55:36 +0800
Subject: [PATCH] refactor(app.js): Extract /me page

---
 app.js                | 29 +----------------------------
 lib/web/userRouter.js | 36 ++++++++++++++++++++++++++++++++++++
 2 files changed, 37 insertions(+), 28 deletions(-)
 create mode 100644 lib/web/userRouter.js

diff --git a/app.js b/app.js
index 6f70705..2f06de9 100644
--- a/app.js
+++ b/app.js
@@ -199,34 +199,7 @@ app.use(require('./lib/web/baseRouter'))
 app.use(require('./lib/web/statusRouter'))
 app.use(require('./lib/web/auth'))
 app.use(require('./lib/web/historyRouter'))
-
-// get me info
-app.get('/me', function (req, res) {
-  if (req.isAuthenticated()) {
-    models.User.findOne({
-      where: {
-        id: req.user.id
-      }
-    }).then(function (user) {
-      if (!user) { return response.errorNotFound(res) }
-      var profile = models.User.getProfile(user)
-      res.send({
-        status: 'ok',
-        id: req.user.id,
-        name: profile.name,
-        photo: profile.photo
-      })
-    }).catch(function (err) {
-      logger.error('read me failed: ' + err)
-      return response.errorInternalError(res)
-    })
-  } else {
-    res.send({
-      status: 'forbidden'
-    })
-  }
-})
-
+app.use(require('./lib/web/userRouter'))
 // upload image
 app.post('/uploadimage', function (req, res) {
   var form = new formidable.IncomingForm()
diff --git a/lib/web/userRouter.js b/lib/web/userRouter.js
new file mode 100644
index 0000000..ecfbaf8
--- /dev/null
+++ b/lib/web/userRouter.js
@@ -0,0 +1,36 @@
+'use strict'
+
+const Router = require('express').Router
+
+const response = require('../response')
+const models = require('../models')
+const logger = require('../logger')
+
+const UserRouter = module.exports = Router()
+
+// get me info
+UserRouter.get('/me', function (req, res) {
+  if (req.isAuthenticated()) {
+    models.User.findOne({
+      where: {
+        id: req.user.id
+      }
+    }).then(function (user) {
+      if (!user) { return response.errorNotFound(res) }
+      var profile = models.User.getProfile(user)
+      res.send({
+        status: 'ok',
+        id: req.user.id,
+        name: profile.name,
+        photo: profile.photo
+      })
+    }).catch(function (err) {
+      logger.error('read me failed: ' + err)
+      return response.errorInternalError(res)
+    })
+  } else {
+    res.send({
+      status: 'forbidden'
+    })
+  }
+})