var express = require('express') var router = express.Router() let Tags = require('@models/Tag') let userId = null let masterKey = null // middleware that is specific to this router router.use(function setUserId (req, res, next) { //Session key is required to continue if(!req.headers.sessionId){ next('Unauthorized') } if(req.headers.userId){ userId = req.headers.userId masterKey = req.headers.masterKey next() } }) //Get the latest notes the user has created router.post('/suggest', function (req, res) { Tags.suggest(userId, req.body.noteId, req.body.tagText) .then( data => res.send(data) ) }) //Get latest tags based on when it was put on a note router.post('/latest', function (req, res) { Tags.latest(userId, req.body.noteId) .then( data => res.send(data) ) }) //Get the latest notes the user has created router.post('/addtonote', function (req, res) { Tags.addToNote(userId, req.body.noteId, req.body.tagText.toLowerCase()) .then( data => res.send(data) ) }) router.post('/removefromnote', function (req, res) { Tags.removeTagFromNote(userId, req.body.tagId) .then( data => res.send(data) ) }) //Get the latest notes the user has created router.post('/get', function (req, res) { Tags.get(userId, req.body.noteId) .then( data => res.send(data) ) }) //Get the latest notes the user has created router.post('/fornote', function (req, res) { Tags.fornote(userId, req.body.noteId) .then( data => res.send(data) ) }) //Get all the tags for this user in order of usage router.post('/usertags', function (req, res) { Tags.userTags(userId, req.body.searchQuery, req.body.searchTags, req.body.fastFilters) .then( data => res.send(data) ) }) module.exports = router