From f06f4b849d11e98c6b948530c6d9e2ddaeabea2d Mon Sep 17 00:00:00 2001 From: Hubert Van De Walle Date: Sun, 12 Apr 2020 16:41:40 +0200 Subject: [PATCH 1/5] Add Signin View --- web/src/views/Signin.vue | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 web/src/views/Signin.vue diff --git a/web/src/views/Signin.vue b/web/src/views/Signin.vue new file mode 100644 index 0000000..87b221d --- /dev/null +++ b/web/src/views/Signin.vue @@ -0,0 +1,18 @@ + + + \ No newline at end of file From 5d93b8054ea4f5d40df161f4511be4aad8b9940f Mon Sep 17 00:00:00 2001 From: Hubert Van De Walle Date: Sun, 12 Apr 2020 16:42:36 +0200 Subject: [PATCH 2/5] Add Signin route --- web/src/router/index.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/web/src/router/index.js b/web/src/router/index.js index 5f43ce0..52ee0c1 100644 --- a/web/src/router/index.js +++ b/web/src/router/index.js @@ -2,6 +2,7 @@ import Vue from 'vue' import VueRouter from 'vue-router' import Home from '../views/Home.vue' import Signup from '../views/Signup.vue' +import Signin from '../views/Signin.vue' Vue.use(VueRouter) @@ -15,6 +16,11 @@ const routes = [ path: '/signup', name: 'Signup', component: Signup + }, + { + path: '/signin', + name: 'Signin', + component: Signin } ] From 3d1722fc62347ed03b1c9351005fc796bb79210b Mon Sep 17 00:00:00 2001 From: Hubert Van De Walle Date: Sun, 12 Apr 2020 16:58:29 +0200 Subject: [PATCH 3/5] Update status code for ApiError.InvalidCredentialError --- api/src/controllers/UserController.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/api/src/controllers/UserController.kt b/api/src/controllers/UserController.kt index f8800f8..304181f 100644 --- a/api/src/controllers/UserController.kt +++ b/api/src/controllers/UserController.kt @@ -36,11 +36,11 @@ class UserController(kodein: Kodein) : KodeinController(kodein) { .where { Users.username eq credential.username } .map { row -> row[Users.email]!! to row[Users.password]!! } .firstOrNull() - ?: return@post call.respond(HttpStatusCode.BadRequest, ApiError.InvalidCredentialError) + ?: return@post call.respond(HttpStatusCode.Unauthorized, ApiError.InvalidCredentialError) if (!BCrypt.checkpw(credential.password, password)) { - return@post call.respond(HttpStatusCode.BadRequest, ApiError.InvalidCredentialError) + return@post call.respond(HttpStatusCode.Unauthorized, ApiError.InvalidCredentialError) } return@post call.respond(Response(simpleJwt.sign(email))) From a92a0d1c7ef97a4f76e0a566de6eab815fa21972 Mon Sep 17 00:00:00 2001 From: Hubert Van De Walle Date: Sun, 12 Apr 2020 17:00:07 +0200 Subject: [PATCH 4/5] Add Signin component --- web/src/components/SigninForm.vue | 73 +++++++++++++++++++++++++++++++ web/src/views/Signin.vue | 5 ++- 2 files changed, 77 insertions(+), 1 deletion(-) create mode 100644 web/src/components/SigninForm.vue diff --git a/web/src/components/SigninForm.vue b/web/src/components/SigninForm.vue new file mode 100644 index 0000000..395591d --- /dev/null +++ b/web/src/components/SigninForm.vue @@ -0,0 +1,73 @@ + + + diff --git a/web/src/views/Signin.vue b/web/src/views/Signin.vue index 87b221d..a50e00d 100644 --- a/web/src/views/Signin.vue +++ b/web/src/views/Signin.vue @@ -2,17 +2,20 @@
+
\ No newline at end of file From 1363ad489e74645232e6803779ddad85f6bfd82d Mon Sep 17 00:00:00 2001 From: Hubert Van De Walle Date: Sun, 12 Apr 2020 17:33:03 +0200 Subject: [PATCH 5/5] Add setToken in VueX and call it from SigninForm --- web/src/components/SigninForm.vue | 8 +++++++- web/src/store/index.js | 17 +++++++++-------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/web/src/components/SigninForm.vue b/web/src/components/SigninForm.vue index 395591d..61d9b96 100644 --- a/web/src/components/SigninForm.vue +++ b/web/src/components/SigninForm.vue @@ -38,6 +38,7 @@