1
0
mirror of https://github.com/stolksdorf/homebrewery.git synced 2025-12-23 17:41:30 +00:00

moved welcome message and adding in egads errors

This commit is contained in:
Scott Tolksdorf
2017-01-01 10:38:36 -08:00
parent 1173af5803
commit 95c09ba7ad
8 changed files with 82 additions and 142 deletions

View File

@@ -2,16 +2,25 @@ const _ = require('lodash');
const utils = require('./utils.js');
const BrewData = require('./brew.data.js');
const router = require('express').Router();
const mw = require('./middleware.js');
const docs = {
welcomeBrew : require('fs').readFileSync('./welcome.brew.md', 'utf8'),
changelog : require('fs').readFileSync('./changelog.md', 'utf8'),
};
const vitreumRender = require('vitreum/steps/render');
const templateFn = require('./client/template.js');
//TODO: Catch errors here?
const renderPage = (req, res, next) => {
return vitreumRender('homebrew', templateFn, {
url : req.originalUrl,
version : require('./package.json').version,
//TODO: add in login path?
user : req.account && req.account.username,
user : req.account && req.account.username,
brews : req.brews,
brew : req.brew
})
@@ -24,10 +33,10 @@ const renderPage = (req, res, next) => {
router.get('/share/:shareId', mw.viewBrew, renderPage);
//Edit Page
app.get('/edit/:editId', mw.loadBrew, mw.validate, renderPage);
router.get('/edit/:editId', mw.loadBrew, renderPage);
//Print Page
app.get('/print/:shareId', mw.viewBrew, renderPage);
router.get('/print/:shareId', mw.viewBrew, renderPage);
//Source page
router.get('/source/:sharedId', mw.viewBrew, (req, res, next)=>{
@@ -35,20 +44,36 @@ router.get('/source/:sharedId', mw.viewBrew, (req, res, next)=>{
return res.send(`<code><pre>${text}</pre></code>`);
});
//user Page
//User Page
router.get('/user/:username', (req, res, next) => {
BrewData.search({ user : req.params.username }, req)
BrewData.search({ user : req.params.username })
.then((brews) => {
return render(req, { brews : brews });
req.brews = brews;
return next();
})
.then(res.send)
.catch(next);
});
}, renderPage);
//Search Page
router.get('/search', (req, res, next) => {
BrewData.search()
.then((brews) => {
req.brews = brews;
return next();
})
.catch(next);
}, renderPage);
//Catch all page?
router.get('*', renderPage);
//Changelog Page
router.get('/changelog', (req, res, next) => {
req.brew = { text : docs.changelog };
return next();
}, renderPage);
//Home Page
router.get('/', (req, res, next) => {
req.brew = { text : docs.welcomeBrew };
return next();
}, renderPage);
module.exports = router;