1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
var SessionHandler = require('./session')
, ContentHandler = require('./content')
, ErrorHandler = require('./error').errorHandler;
module.exports = exports = function(app, db) {
var sessionHandler = new SessionHandler(db);
var contentHandler = new ContentHandler(db);
// Middleware to see if a user is logged in
app.use(sessionHandler.isLoggedInMiddleware);
// The main page of the blog
app.get('/', contentHandler.displayMainPage);
// The main page of the blog, filtered by tag
app.get('/tag/:tag', contentHandler.displayMainPageByTag);
// A single post, which can be commented on
app.get("/post/:permalink", contentHandler.displayPostByPermalink);
app.post('/newcomment', contentHandler.handleNewComment);
app.get("/post_not_found", contentHandler.displayPostNotFound);
// Displays the form allowing a user to add a new post. Only works for logged in users
app.get('/newpost', contentHandler.displayNewPostPage);
app.post('/newpost', contentHandler.handleNewPost);
// Used to process a like on a blog post
app.post('/like', contentHandler.handleLike);
// Login form
app.get('/login', sessionHandler.displayLoginPage);
app.post('/login', sessionHandler.handleLoginRequest);
// Logout page
app.get('/logout', sessionHandler.displayLogoutPage);
// Welcome page
app.get("/welcome", sessionHandler.displayWelcomePage);
// Signup form
app.get('/signup', sessionHandler.displaySignupPage);
app.post('/signup', sessionHandler.handleSignup);
// Error handling middleware
app.use(ErrorHandler);
}
|