summaryrefslogtreecommitdiff
path: root/server/lib/views.js
diff options
context:
space:
mode:
authorJulie Lala <jules@okfoc.us>2014-06-07 04:50:31 -0400
committerJulie Lala <jules@okfoc.us>2014-06-07 04:50:31 -0400
commitf28d8f4aac3f6411d43ac81a70bfebe5e61e96c7 (patch)
tree659b2aa98c4851389398cea1e6bd7bac354bc6e6 /server/lib/views.js
parent32c33b9e24cde290096af10d97b37eb4bbc0e788 (diff)
arrange edit project/profile modals
Diffstat (limited to 'server/lib/views.js')
-rw-r--r--server/lib/views.js32
1 files changed, 27 insertions, 5 deletions
diff --git a/server/lib/views.js b/server/lib/views.js
index 4ab2a21..a8723eb 100644
--- a/server/lib/views.js
+++ b/server/lib/views.js
@@ -1,23 +1,45 @@
/* jshint node: true */
var User = require('./schemas/User'),
+ Project = require('./schemas/Project'),
config = require('../../config'),
_ = require('lodash');
exports.login = function (req, res) {
res.render('login', {
- config: config
});
};
exports.home = function (req, res) {
res.render('home', {
- config: config
})
}
exports.profile = function (req, res) {
- res.render('profile', {
- config: config
- })
+ var username = req.params[0]
+ if (username) {
+ User.findOne({ username: username }, function (err, user) {
+ user ? next(user) : done(err, {}, [])
+ })
+ }
+ else if (req.user) {
+ next(req.user)
+ }
+ else {
+ done()
+ }
+
+ function next(user){
+ Project.find({ user_id: user._id }, function(err, projects){
+ done(err, user, projects)
+ })
+ }
+
+ function done(err, user, projects){
+ if (! user) { return res.redirect('/') }
+ res.render('profile', {
+ profile: user,
+ projects: projects || [],
+ })
+ }
}