Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function MainController() {
- var util = require('util');
- this.authRequired = true;
- public_get('/login', function(req, res) {
- res.rawHttpMessage("Please " + "Authenticate →".link('/auth'));
- });
- public_get('/auth', function(req, res) {
- app.session.create(req, res, {user: 'ernie'}, true, function(session) {
- app.home(res);
- });
- });
- get('/logout', function(req, res) {
- app.session.destroy(req, res, function() {
- app.login(res);
- });
- });
- get('/', function(req, res) {
- app.usersModel.getAll({
- cacheID: 'users_query',
- timeout: 3600
- }, function(err, models) {
- if (err) app.serverError(res, err);
- else {
- if (models.length > 0) res.end(util.inspect(models));
- else res.end('No users yet.');
- }
- });
- });
- get('/new/:user/:pass', {user: 'alpha', pass: 'password'}, function(req, res) {
- var userData = req.__params;
- app.usersModel.insert(userData,
- {cacheInvalidate: 'users_query'}, function(err, id) {
- if (err) app.rawServerError(res, util.format("The user '%s' already exists.", userData.user), err);
- else { app.home(res); }
- });
- });
- get('/cleanup', function(req, res) {
- app.usersModel.driver.deleteWhere({
- condition: '1=1',
- table: 'users',
- cacheInvalidate: 'users_query'
- }, function(err, info) {
- if (err) app.serverErr(res, err);
- else app.home(res);
- })
- });
- get('/update/:user/:pass',
- {user: 'alpha', pass: 'password'},
- function(req, res) {
- var userData = req.__params;
- app.usersModel.find({user: userData.user}, function(err, model) {
- if (err) app.serverError(res, err);
- else {
- if (model) {
- model.pass = userData.pass;
- model.save({cacheInvalidate: 'users_query'}, function(err) {
- if (err) app.serverError(res, err);
- else {
- var msg = "Password for '%s' successfully updated. " + "Back Home →".link('/');
- res.rawHttpMessage(util.format(msg, userData.user));
- }
- });
- } else {
- app.rawServerError(res, util.format("The user '%s' does not exist.", userData.user));
- }
- }
- })
- });
- }
- module.exports = MainController;
Add Comment
Please, Sign In to add comment