refactoring for status messages
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
<footer>
|
||||
<a href="/">⌂ notehub</a> ·
|
||||
<a href="%LINK%/stats">statistics</a> ·
|
||||
<a href="%LINK%/edit">edit</a> ·
|
||||
<a href="%LINK%/export">export</a>
|
||||
</footer>
|
||||
@@ -10,14 +10,6 @@
|
||||
<article>
|
||||
%CONTENT%
|
||||
</article>
|
||||
<footer>
|
||||
<a href="/">⌂ notehub</a>
|
||||
·
|
||||
<a href="%LINK%/stats">statistics</a>
|
||||
·
|
||||
<a href="%LINK%/edit">edit</a>
|
||||
·
|
||||
<a href="%LINK%/export">export</a>
|
||||
</footer>
|
||||
%FOOTER%
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -30,10 +30,10 @@ app.post('/note', function (req, res) {
|
||||
password = md5(body.password);
|
||||
var goToNote = note => res.redirect("/" + note.id);
|
||||
if (session.indexOf(getTimeStamp()) != 0)
|
||||
return res.status(400).send("Session expired");
|
||||
return sendResponse(res, 400, "Session expired");
|
||||
var expectedSignature = md5(session + note.replace(/[\n\r]/g, ""));
|
||||
if (expectedSignature != body.signature)
|
||||
return res.status(400).send("Signature mismatch");
|
||||
return sendResponse(res, 400, "Signature mismatch");
|
||||
console.log(body)
|
||||
if (body.action == "POST")
|
||||
storage.addNote(note, password).then(goToNote);
|
||||
@@ -42,7 +42,7 @@ app.post('/note', function (req, res) {
|
||||
CACHE.del(note.id);
|
||||
goToNote(note);
|
||||
},
|
||||
error => res.status(403).send(error.message))
|
||||
error => sendResponse(res, 403, error.message))
|
||||
});
|
||||
|
||||
app.get("/:year/:month/:day/:title", function (req, res) {
|
||||
@@ -73,6 +73,9 @@ app.get(/\/([a-z0-9]+)/, function (req, res) {
|
||||
});
|
||||
});
|
||||
|
||||
var sendResponse = (res, code, message) =>
|
||||
res.status(code).send(page.buildPage(message, "<h1>" + message + "</h1>", ""));
|
||||
|
||||
var server = app.listen(3000, function () {
|
||||
console.log('NoteHub server listening on port %s', server.address().port);
|
||||
});
|
||||
|
||||
+9
-4
@@ -2,13 +2,18 @@ var marked = require("marked");
|
||||
var fs = require("fs");
|
||||
|
||||
var pageTemplate = fs.readFileSync("resources/template.html", "utf-8");
|
||||
var footerTemplate = fs.readFileSync("resources/footer.html", "utf-8");
|
||||
var editTemplate = fs.readFileSync("resources/edit.html", "utf-8");
|
||||
var buildPage = (id, title, content) => pageTemplate
|
||||
var buildPage = (title, content, footer) => pageTemplate
|
||||
.replace("%TITLE%", title)
|
||||
.replace(/%LINK%/g, id)
|
||||
.replace("%CONTENT%", content);
|
||||
.replace("%CONTENT%", content)
|
||||
.replace("%FOOTER%", footer);
|
||||
|
||||
module.exports.buildPage = buildPage;
|
||||
|
||||
module.exports.buildNote = note => buildPage(note.id, note.title, marked(note.text));
|
||||
module.exports.buildNote = note => buildPage(note.title,
|
||||
marked(note.text),
|
||||
footerTemplate.replace(/%LINK%/g, note.id));
|
||||
|
||||
module.exports.newNotePage = session => editTemplate
|
||||
.replace("%ACTION%", "POST")
|
||||
|
||||
Reference in New Issue
Block a user