From 6f61d46bd529a98257980ce8af92db8dfe42b833 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Fri, 18 Nov 2022 17:36:27 +0700 Subject: User activation feature --- src/pages/api/activation-request.js | 31 +++++++++++++++++++++++++++++++ src/pages/api/activation.js | 16 ++++++++++++++++ src/pages/api/login.js | 3 +-- src/pages/api/register.js | 3 +-- 4 files changed, 49 insertions(+), 4 deletions(-) create mode 100644 src/pages/api/activation-request.js create mode 100644 src/pages/api/activation.js (limited to 'src/pages/api') diff --git a/src/pages/api/activation-request.js b/src/pages/api/activation-request.js new file mode 100644 index 00000000..42ad5364 --- /dev/null +++ b/src/pages/api/activation-request.js @@ -0,0 +1,31 @@ +import apiOdoo from "../../helpers/apiOdoo"; +import mailer from "../../helpers/mailer"; + +export default async function handler(req, res) { + try { + const { email } = req.body; + let result = await apiOdoo( + 'POST', + '/api/v1/user/activation-request', + {email} + ); + if (result.activation_request) { + mailer.sendMail({ + from: 'sales@indoteknik.com', + to: result.user.email, + subject: 'Permintaan Aktivasi Akun Indoteknik', + html: ` +

Permintaan Aktivasi Akun Indoteknik

+
+

Aktivasi akun anda melalui link berikut: Aktivasi Akun

+ ` + }); + } + delete result.user; + delete result.token; + res.status(200).json(result); + } catch (error) { + console.log(error); + res.status(400).json({ error: error.message }); + } +} \ No newline at end of file diff --git a/src/pages/api/activation.js b/src/pages/api/activation.js new file mode 100644 index 00000000..67ec1c9e --- /dev/null +++ b/src/pages/api/activation.js @@ -0,0 +1,16 @@ +import apiOdoo from "../../helpers/apiOdoo"; + +export default async function handler(req, res) { + try { + const { token } = req.body; + let result = await apiOdoo( + 'POST', + '/api/v1/user/activation', + {token} + ); + res.status(200).json(result); + } catch (error) { + console.log(error); + res.status(400).json({ error: error.message }); + } +} \ No newline at end of file diff --git a/src/pages/api/login.js b/src/pages/api/login.js index cf464817..a747294b 100644 --- a/src/pages/api/login.js +++ b/src/pages/api/login.js @@ -5,12 +5,11 @@ export default async function handler(req, res) { const { email, password } = req.body; let result = await apiOdoo( 'POST', - '/api/v1/auth/login', + '/api/v1/user/login', {email, password} ); res.status(200).json(result); } catch (error) { - console.log(error); res.status(400).json({ error: error.message }); } } \ No newline at end of file diff --git a/src/pages/api/register.js b/src/pages/api/register.js index 5c21f5ca..323cab24 100644 --- a/src/pages/api/register.js +++ b/src/pages/api/register.js @@ -5,12 +5,11 @@ export default async function handler(req, res) { const { email, name, password } = req.body; let result = await apiOdoo( 'POST', - '/api/v1/auth/register', + '/api/v1/user/register', {email, name, password} ); res.status(200).json(result); } catch (error) { - console.log(error); res.status(400).json({ error: error.message }); } } \ No newline at end of file -- cgit v1.2.3