Commit 895ae970 authored by Ilham Maulana's avatar Ilham Maulana 💻

fix: handle invalid form message on login and signup form librarian

parent d44f0a26
...@@ -17,7 +17,6 @@ ...@@ -17,7 +17,6 @@
> >
Login Login
</button> </button>
<p>{{ error_message }}</p>
<div class="d-flex flex-column align-items-center"> <div class="d-flex flex-column align-items-center">
<p class="my-2"> <p class="my-2">
Don't have an account? <a href="/users/auth/sign-up">Sign Up</a> Don't have an account? <a href="/users/auth/sign-up">Sign Up</a>
......
...@@ -151,15 +151,13 @@ class LibrarianLoginView(LoginView): ...@@ -151,15 +151,13 @@ class LibrarianLoginView(LoginView):
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
form = self.get_form() form = self.get_form()
context = self.get_context_data()
if form.is_valid(): if form.is_valid():
username = form.data.get("username") username = form.data.get("username")
user = User.objects.get(username=username) user = User.objects.get(username=username)
if not user.is_staff: if not user.is_staff:
context["error_message"] = "Access Denied, account is not staff" form.add_error(field=None, error="Access Denied, account is not staff")
return self.form_invalid(form) return self.form_invalid(form)
librarian = Librarian.objects.get(user=user) librarian = Librarian.objects.get(user=user)
...@@ -192,7 +190,6 @@ class LibrarianSignUpView(generic.FormView): ...@@ -192,7 +190,6 @@ class LibrarianSignUpView(generic.FormView):
form = self.get_form() form = self.get_form()
if form.is_valid: if form.is_valid:
context = self.get_context_data()
username = form.data.get("username") username = form.data.get("username")
email = form.data.get("email") email = form.data.get("email")
password1 = form.data.get("password1") password1 = form.data.get("password1")
...@@ -206,6 +203,10 @@ class LibrarianSignUpView(generic.FormView): ...@@ -206,6 +203,10 @@ class LibrarianSignUpView(generic.FormView):
if is_email.exists(): if is_email.exists():
return self.form_invalid(form) return self.form_invalid(form)
is_username = User.objects.filter(username=username)
if is_username.exists():
return self.form_invalid(form)
user = User.objects.create_user( user = User.objects.create_user(
username=username, email=email, is_staff=True username=username, email=email, is_staff=True
) )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment