text: var express = require('express');
  var router = express.Router();
  var tool = require('../utility/tool');
  var path = require('path');
  var passport = require('passport');
  var Strategy = require('passport-local').Strategy;
  var logger = require('../utility/logger');
  
  passport.use(new Strategy(
      {
          usernameField: 'UserName',//页面上的用户名字段的name属性值
          passwordField: 'Password'//页面上的密码字段的name属性值
      },
      function (username, password, cb) {
          var account = require('../config/account');
          //自己判断用户是否有效
          if (username === account.UserName && password === account.Password) {
              //验证通过
              return cb(null, account);
          } else {
              //验证失败
              return cb(null, false);
          }
      }));
  
  passport.serializeUser(function (user, cb) {
      cb(null, user.Id);
  });
  
  passport.deserializeUser(function (id, cb) {
      var account = require('../config/account');
      if (account.Id === id) {
          return cb(null, account);
      } else {
          return cb(err);
      }
  });
  
  //后台登录页面
  router.get('/login', function (req, res, next) {
      tool.getConfig(path.join(__dirname, '../config/settings.json'), function (err, settings) {
          if (err) {
              next(err);
          } else {
              res.render('auth/login', {
                  config: settings,
                  title: settings['SiteName'] + ' - ' + res.__("auth.title")
              });
          }
      });
  });
  
  //提交登录请求
  router.post('/login', function (req, res, next) {
      passport.authenticate('local', function (err, user, info) {
          if (err) {
              next(err);
          } else if (!user) {
              logger.errLogger(req, new Error(res.__("auth.wrong_info")));
              res.json({
                  valid: false
              });
          } else {
              //登录操作
              req.logIn(user, function (err) {
                  var returnTo = '/admin';
                  if (err) {
                      next(err);
                  } else {
                      //尝试跳转之前的页面
                      if (req.session.returnTo) {
                          returnTo = req.session.returnTo;
                      }
                      res.json({
                          valid: true,
                          returnTo: returnTo
                      });
                  }
              });
          }
      })(req, res, next);
  });
  
  //退出登录
  router.post('/logout',
      function (req, res) {
          req.logout();
          res.redirect('/login');
      });
  
  module.exports = router;
  