diff --git a/lib/response.js b/lib/response.js index 6450bdf55..cf4b5c1de 100644 --- a/lib/response.js +++ b/lib/response.js @@ -123,10 +123,10 @@ function newNote (req, res, next) { } models.Note.create({ ownerId: owner, - alias: req.alias ? req.alias : null, + alias: req.alias ? req.alias : (config.allowFreeURL ? (req.params.alias ? req.params.alias : null) : null), content: body }).then(function (note) { - return res.redirect(config.serverURL + '/' + models.Note.encodeNoteId(note.id)) + return res.redirect(config.serverURL + '/' + (note.alias ? note.alias : models.Note.encodeNoteId(note.id))) }).catch(function (err) { logger.error(err) return response.errorInternalError(res) diff --git a/lib/web/noteRouter.js b/lib/web/noteRouter.js index bac2cf889..78cb69e5e 100644 --- a/lib/web/noteRouter.js +++ b/lib/web/noteRouter.js @@ -12,6 +12,8 @@ const noteRouter = module.exports = Router() noteRouter.get('/new', response.newNote) // post new note with content noteRouter.post('/new', markdownParser, response.newNote) +// post new note with content and alias +noteRouter.post('/new/:alias', markdownParser, response.newNote) // get publish note noteRouter.get('/s/:shortid', response.showPublishNote) // publish note actions