diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2017-12-14 06:48:53 +0100 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2017-12-14 06:48:53 +0100 |
| commit | f9a0743696c5e21d81ae0e215e36358788e708df (patch) | |
| tree | 07bc648b9b4f16999caa669ed5faf40f92d0345f /bucky | |
| parent | 54b4af27409fba0032faf4c8bed825ce2bc71cce (diff) | |
profile form
Diffstat (limited to 'bucky')
| -rw-r--r-- | bucky/app/bucky.js | 13 | ||||
| -rw-r--r-- | bucky/app/router.js | 52 |
2 files changed, 49 insertions, 16 deletions
diff --git a/bucky/app/bucky.js b/bucky/app/bucky.js index 2f17ffc..f3ea689 100644 --- a/bucky/app/bucky.js +++ b/bucky/app/bucky.js @@ -375,7 +375,7 @@ var bucky = module.exports = { }) }, - /* PROFILE */ + /* PROFILE / USER */ ensureUser: function (req, res, next){ var username = util.sanitizeName(req.params.username) @@ -396,9 +396,18 @@ var bucky = module.exports = { req.user.set('lastseen', util.now()) req.user.save().then( () => next() ) }, + updateUser: function(req, res, next) { + + }, /* PRIVACY */ - + + checkUserPrivacy: function(req, res, next) { + if (req.user.get('username') !== res.user.get('username')) { + return res.sendStatus(500) + } + next() + }, checkThreadPrivacy: function(req, res, next) { if (req.user.get('ulevel') !== 3 && req.user.get('username') !== res.thread.get('username')) { return res.sendStatus(500) diff --git a/bucky/app/router.js b/bucky/app/router.js index 7fbf479..0935f1a 100644 --- a/bucky/app/router.js +++ b/bucky/app/router.js @@ -49,22 +49,46 @@ module.exports = function(app){ } ) app.get("/comment/:id/edit", middleware.ensureAuthenticated, function(req, res){ - res.render("pages/editcomment", {title: "Edit comment"}) + res.render("pages/comment_form", {title: "Edit comment"}) }) app.get("/profile", middleware.ensureAuthenticated, function(req, res){ - res.render("pages/profile", {title: "profile: " + util.sanitize(req.user.get('username'))}) - } - ) + res.render("pages/profile", {title: "profile for " + util.sanitize(req.user.get('username'))}) + }) app.get("/profile/:username", middleware.ensureAuthenticated, function(req, res){ - res.render("pages/profile", {title: "profile: " + util.sanitize(req.params.username)}) + res.render("pages/profile", {title: "profile for " + util.sanitize(req.params.username)}) + }) + app.get("/profile/:username/edit", + middleware.ensureAuthenticated, + function(req, res){ + res.render("pages/profile_form", {title: "edit your profile"}) + }) + + /* users */ + + app.get("/api/user/:username", + middleware.ensureAuthenticated, + bucky.ensureUser, + function(req, res) { + res.json(res.user) } ) + app.post("/api/user/:username", + middleware.ensureAuthenticated, + bucky.ensureUser, + bucky.checkUserPrivacy, + multer.single("avatar"), + bucky.updateUser, + function(req, res){ + res.json(res.thread) + }) + /* threads */ + app.get("/api/index", bucky.ensureLastlog, middleware.ensureAuthenticated, @@ -81,14 +105,6 @@ module.exports = function(app){ lastlog: res.lastlog, }) }) - - app.get("/api/user/:username", - middleware.ensureAuthenticated, - bucky.ensureUser, - function(req, res) { - res.json(res.user) - } - ) app.get("/api/keyword/:keyword", bucky.ensureLastlog, middleware.ensureAuthenticated, @@ -150,7 +166,9 @@ module.exports = function(app){ function(req, res){ res.sendStatus(200) }) - + + /* comments */ + app.post("/api/thread/:id/comment", middleware.ensureAuthenticated, bucky.ensureThread, @@ -192,6 +210,8 @@ module.exports = function(app){ res.sendStatus(200) }) + /* search */ + app.get("/search/", middleware.ensureAuthenticated, function(req, res){ @@ -207,6 +227,8 @@ module.exports = function(app){ search.success ) + /* keywords */ + app.get("/api/keywords", middleware.ensureAuthenticated, bucky.ensureKeywords, @@ -228,6 +250,8 @@ module.exports = function(app){ threads: res.threads, }) }) + + /* mail */ app.get("/mail/", middleware.ensureAuthenticated, |
