Cleanup
This commit is contained in:
90
controllers/articles.js
Executable file
90
controllers/articles.js
Executable file
@@ -0,0 +1,90 @@
|
||||
/**
|
||||
* Module dependencies.
|
||||
*/
|
||||
var mongoose = require('mongoose'),
|
||||
Article = mongoose.model('Article'),
|
||||
_ = require('underscore');
|
||||
|
||||
|
||||
/**
|
||||
* Find article by id
|
||||
*/
|
||||
exports.article = function(req, res, next, id) {
|
||||
Article.load(id, function(err, article) {
|
||||
if (err) return next(err);
|
||||
if (!article) return next(new Error('Failed to load article ' + id));
|
||||
req.article = article;
|
||||
next();
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Create a article
|
||||
*/
|
||||
exports.create = function(req, res) {
|
||||
var article = new Article(req.body);
|
||||
article.user = req.user;
|
||||
|
||||
article.save(function(err) {
|
||||
if (err) {
|
||||
return res.send('users/signup', {
|
||||
errors: err.errors,
|
||||
article: article
|
||||
});
|
||||
} else {
|
||||
res.jsonp(article);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Update a article
|
||||
*/
|
||||
exports.update = function(req, res) {
|
||||
var article = req.article;
|
||||
|
||||
article = _.extend(article, req.body);
|
||||
|
||||
article.save(function(err) {
|
||||
res.jsonp(article);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Delete an article
|
||||
*/
|
||||
exports.destroy = function(req, res) {
|
||||
var article = req.article;
|
||||
|
||||
article.remove(function(err) {
|
||||
if (err) {
|
||||
res.render('error', {
|
||||
status: 500
|
||||
});
|
||||
} else {
|
||||
res.jsonp(article);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Show an article
|
||||
*/
|
||||
exports.show = function(req, res) {
|
||||
res.jsonp(req.article);
|
||||
};
|
||||
|
||||
/**
|
||||
* List of Articles
|
||||
*/
|
||||
exports.all = function(req, res) {
|
||||
Article.find().sort('-created').populate('user', 'name username').exec(function(err, articles) {
|
||||
if (err) {
|
||||
res.render('error', {
|
||||
status: 500
|
||||
});
|
||||
} else {
|
||||
res.jsonp(articles);
|
||||
}
|
||||
});
|
||||
};
|
12
controllers/index.js
Executable file
12
controllers/index.js
Executable file
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
* Module dependencies.
|
||||
*/
|
||||
var mongoose = require('mongoose'),
|
||||
_ = require('underscore');
|
||||
|
||||
|
||||
exports.render = function(req, res) {
|
||||
res.render('index', {
|
||||
user: req.user ? JSON.stringify(req.user) : "null"
|
||||
});
|
||||
};
|
103
controllers/users.js
Executable file
103
controllers/users.js
Executable file
@@ -0,0 +1,103 @@
|
||||
/**
|
||||
* Module dependencies.
|
||||
*/
|
||||
var mongoose = require('mongoose'),
|
||||
User = mongoose.model('User');
|
||||
|
||||
/**
|
||||
* Auth callback
|
||||
*/
|
||||
exports.authCallback = function(req, res, next) {
|
||||
res.redirect('/');
|
||||
};
|
||||
|
||||
/**
|
||||
* Show login form
|
||||
*/
|
||||
exports.signin = function(req, res) {
|
||||
res.render('users/signin', {
|
||||
title: 'Signin',
|
||||
message: req.flash('error')
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Show sign up form
|
||||
*/
|
||||
exports.signup = function(req, res) {
|
||||
res.render('users/signup', {
|
||||
title: 'Sign up',
|
||||
user: new User()
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Logout
|
||||
*/
|
||||
exports.signout = function(req, res) {
|
||||
req.logout();
|
||||
res.redirect('/');
|
||||
};
|
||||
|
||||
/**
|
||||
* Session
|
||||
*/
|
||||
exports.session = function(req, res) {
|
||||
res.redirect('/');
|
||||
};
|
||||
|
||||
/**
|
||||
* Create user
|
||||
*/
|
||||
exports.create = function(req, res) {
|
||||
var user = new User(req.body);
|
||||
|
||||
user.provider = 'local';
|
||||
user.save(function(err) {
|
||||
if (err) {
|
||||
return res.render('users/signup', {
|
||||
errors: err.errors,
|
||||
user: user
|
||||
});
|
||||
}
|
||||
req.logIn(user, function(err) {
|
||||
if (err) return next(err);
|
||||
return res.redirect('/');
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Show profile
|
||||
*/
|
||||
exports.show = function(req, res) {
|
||||
var user = req.profile;
|
||||
|
||||
res.render('users/show', {
|
||||
title: user.name,
|
||||
user: user
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Send User
|
||||
*/
|
||||
exports.me = function(req, res) {
|
||||
res.jsonp(req.user || null);
|
||||
};
|
||||
|
||||
/**
|
||||
* Find user by id
|
||||
*/
|
||||
exports.user = function(req, res, next, id) {
|
||||
User
|
||||
.findOne({
|
||||
_id: id
|
||||
})
|
||||
.exec(function(err, user) {
|
||||
if (err) return next(err);
|
||||
if (!user) return next(new Error('Failed to load User ' + id));
|
||||
req.profile = user;
|
||||
next();
|
||||
});
|
||||
};
|
Reference in New Issue
Block a user