diff options
author | 2021-09-04 10:56:37 +0200 | |
---|---|---|
committer | 2021-09-04 10:56:37 +0200 | |
commit | a28b952eafc83ac6f6fc1a3d99805866bc41fde9 (patch) | |
tree | 5e8e99ef5ac2b11e8a8ab027a976caa9b1af480f /pages/api | |
parent | 467233f771d745aeb9f4e69b93d2fb24a1a95d3e (diff) | |
download | my_apps-a28b952eafc83ac6f6fc1a3d99805866bc41fde9.tar.gz my_apps-a28b952eafc83ac6f6fc1a3d99805866bc41fde9.tar.bz2 my_apps-a28b952eafc83ac6f6fc1a3d99805866bc41fde9.zip |
routes refactor
Diffstat (limited to 'pages/api')
-rw-r--r-- | pages/api/note/[id].js | 31 | ||||
-rw-r--r-- | pages/api/notes/[id].js (renamed from pages/api/notes.js) | 34 | ||||
-rw-r--r-- | pages/api/notes/index.js | 48 |
3 files changed, 57 insertions, 56 deletions
diff --git a/pages/api/note/[id].js b/pages/api/note/[id].js deleted file mode 100644 index 1781210..0000000 --- a/pages/api/note/[id].js +++ /dev/null @@ -1,31 +0,0 @@ -import dbConnect from 'configs/dbConnect' -import withSession from 'hocs/withSession' -import Note from 'models/Note' - -export default withSession(async (req, res) => { - const {id} = req.query - await dbConnect() - - switch (req.method) { - case 'GET': - try { - const user = req.session.get('user') - - if (!user || !user?.isVerified || !id ) { - throw new Error('Something went wrong') - } - - const note = await Note.getNote(id) - - if (!note) { - throw new Error('Something went wrong') - } - - res.status(200).json(note) - } catch (error) { - console.log(error) - res.status(400).json({error: true}) - } - break - } -}) diff --git a/pages/api/notes.js b/pages/api/notes/[id].js index 0439a7a..58e458f 100644 --- a/pages/api/notes.js +++ b/pages/api/notes/[id].js @@ -4,6 +4,7 @@ import NoteList from 'models/NoteList' import Note from 'models/Note' export default withSession(async (req, res) => { + const {id: _id} = req.query await dbConnect() switch (req.method) { @@ -11,38 +12,25 @@ export default withSession(async (req, res) => { try { const user = req.session.get('user') - if (!user || !user.isVerified) { + if (!user || !user?.isVerified || !_id ) { throw new Error('Something went wrong') } - const {notes} = await NoteList.getList(user.noteList) + const note = await Note.getNote(_id) - res.status(200).json(notes) - } catch (error) { - res.status(400).json([]) - } - break - case 'POST': - try { - const user = req.session.get('user') - const {title, content} = req.body - - if (!user || !user?.isVerified || !content) { + if (!note) { throw new Error('Something went wrong') } - const note = await Note.create({content}) - const {notes} = await NoteList.addNote(user.noteList, note._id, title) - - res.status(200).json(notes) + res.status(200).json(note) } catch (error) { - res.status(400).json([]) + console.log(error) + res.status(400).json({error: true}) } break case 'DELETE': try { const user = req.session.get('user') - const {_id} = req.body if (!user || !user?.isVerified || !_id) { throw new Error('Something went wrong') @@ -56,13 +44,14 @@ export default withSession(async (req, res) => { res.status(200).json(notes) } catch (error) { + console.log(error) res.status(400).json([]) } break case 'PUT': try { const user = req.session.get('user') - const {_id, title, noteId, content} = req.body + const {title, noteId, content} = req.body if (!user || !user?.isVerified || !_id || !content) { throw new Error('Something went wrong') @@ -77,10 +66,5 @@ export default withSession(async (req, res) => { res.status(400).json([]) } break - default: - res.status(400).send() - break } }) - - diff --git a/pages/api/notes/index.js b/pages/api/notes/index.js new file mode 100644 index 0000000..f62f849 --- /dev/null +++ b/pages/api/notes/index.js @@ -0,0 +1,48 @@ +import dbConnect from 'configs/dbConnect' +import withSession from 'hocs/withSession' +import NoteList from 'models/NoteList' +import Note from 'models/Note' + +export default withSession(async (req, res) => { + await dbConnect() + + switch (req.method) { + case 'GET': + try { + const user = req.session.get('user') + + if (!user || !user.isVerified) { + throw new Error('Something went wrong') + } + + const {notes} = await NoteList.getList(user.noteList) + + res.status(200).json(notes) + } catch (error) { + res.status(400).json([]) + } + break + case 'POST': + try { + const user = req.session.get('user') + const {title, content} = req.body + + if (!user || !user?.isVerified || !content) { + throw new Error('Something went wrong') + } + + const note = await Note.create({content}) + const {notes} = await NoteList.addNote(user.noteList, note._id, title) + + res.status(200).json(notes) + } catch (error) { + res.status(400).json([]) + } + break + default: + res.status(400).send() + break + } +}) + + |