summaryrefslogtreecommitdiff
path: root/lib/response.js
diff options
context:
space:
mode:
authorWu Cheng-Han2016-12-16 15:38:05 +0800
committerWu Cheng-Han2016-12-16 15:38:05 +0800
commit5bb3de2675967eb2f6ea295e7c3e969769ed2a70 (patch)
treee0b3679ced52018b1d90f58f00c4c1608afa35c7 /lib/response.js
parent4b7b902806c818aa4a93671624ecb84b3902ef50 (diff)
Add support of allow free url config option with correspond modifications
Diffstat (limited to 'lib/response.js')
-rwxr-xr-xlib/response.js11
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/response.js b/lib/response.js
index 3f837e71..3374eaf5 100755
--- a/lib/response.js
+++ b/lib/response.js
@@ -112,7 +112,8 @@ function newNote(req, res, next) {
return response.errorForbidden(res);
}
models.Note.create({
- ownerId: owner
+ ownerId: owner,
+ alias: req.alias ? req.alias : null
}).then(function (note) {
return res.redirect(config.serverurl + "/" + LZString.compressToBase64(note.id));
}).catch(function (err) {
@@ -133,6 +134,7 @@ function checkViewPermission(req, note) {
}
function findNote(req, res, callback, include) {
+ var noteId = req.params.noteId;
var id = req.params.noteId || req.params.shortid;
models.Note.parseNoteId(id, function (err, _id) {
models.Note.findOne({
@@ -142,7 +144,12 @@ function findNote(req, res, callback, include) {
include: include || null
}).then(function (note) {
if (!note) {
- return response.errorNotFound(res);
+ if (config.allowfreeurl && noteId) {
+ req.alias = noteId;
+ return newNote(req, res);
+ } else {
+ return response.errorNotFound(res);
+ }
}
if (!checkViewPermission(req, note)) {
return response.errorForbidden(res);