From dc45b81c87356a6214e08a55fde4d60c8d70b5ce Mon Sep 17 00:00:00 2001
From: Ali Nabhan Aboobakuru <Ali3.Aboobakuru@live.uwe.ac.uk>
Date: Mon, 9 Dec 2024 22:50:28 +0500
Subject: [PATCH] views.py thingy updated views.py I mean sorry

---
 accounts/__pycache__/views.cpython-311.pyc | Bin 23203 -> 21917 bytes
 accounts/views.py                          |  75 ++++++++-------------
 2 files changed, 28 insertions(+), 47 deletions(-)

diff --git a/accounts/__pycache__/views.cpython-311.pyc b/accounts/__pycache__/views.cpython-311.pyc
index 797b715a06bc0fc36d4e52386f3210141620a5c4..14030175028a6b90eaebe13e1948a7de9db9daa2 100644
GIT binary patch
delta 2000
zcmZ3ym2vKBM!w~|yj%<n3=B>>;pw04C-O<u|6yccn9h*GkiwY5kjogwn9CH!l*=5&
z%m@-=%3;Z6jbh7XkK)MXjN$}~G3RjQaz}B4*(^Ccxx7)lU^Z(GUoL+XKbXyyBakZ?
zC73G|B?RWP=LqMDM2Rpmq;RBg=7{EsMTzB#M~UZ3MAb{=N=8ZMN<~S5CAo5>b7i7r
za%H1rbLFDsa^<7sa}}Z#z=m+=C`Ku!Fr@J0DCH_gDKj#p@U}2Ssig9z@U<{3V_;xd
z4e}WnN2#Xrrto8ks-^O#2%w7AGcZJ{rwFz%L}{e*rU;=*GB8AGrt+o;V~A>{@}`Jj
zh-#<urifyQ>ZFLZFhuF5h_^6A>7_`tFhuF6@}@{a)zyRD3nHQnQh8IPpu!*lFpe@z
z<xP>s5H(8WO_9M6HBRMCk;M=-N##wE!w@x1k#Av$GBZly4rb6)cnPvhllc}~QEFaF
zYSAr@qSTbkqSWM)TY~ASCGq)5S*gh-@%csZCI%*xby@Um`Ev5pGxOq$QVUBni&9fG
z8E^5p<|bz5_@)*YC#I)rGTq|wD$dUfN-ZwP&nr&7#p9NllM3Taj$mnEWS#t)Mcd?-
zh<{#EeqvEdW?p)5X;N-xadBpT-Yo&I{G{O2)a=xvfTH}g%$!s|O~za7PL(C8#h(6?
z7wCv>zR9|fkx_JVHM=^a<mAQdpBZH*Pv>~Pxs~%16Qk(l3LX_kp2>500vYu;zvnr|
z!YDd<o1ix%=VT_KYDVYHbwVm2p~Yfqj69Q1iP<y8ZRQeJU}xmttSuMH$i~XRz)&PU
zxlLY~QEKukd1pr6$?xQkF&1s!s<0fSFIH88QG9Zlsx#x-&AU_$KtiuIl^G=`^J~d6
zici+nTFkh0^F^&~%#0$FJM?53IVUgE^J9Fq`Kw+Clc+Gra9t2F8AP~)2+qlIh7L^M
z8740<T(&vVNQi|^03<9pxzJ2lo{xcn;TBtBNq%l-auG=REw04Ul8kt83>0xrUTjvz
z$i7+1d@>6+2T0dK5WzWlhqXJS)+U?djEtO<PuLnV+HU@3o6p3^IXTP0kI{MaPKRC0
zW?+wsfz(@r2qh3910p&=geZuR2iu-pl$uzQTC@Tr!Z~@Riz*|}<nu1cjKPzQUH?zM
zY$LWg+Km?)aFUbr+(Q`iHy?Jt#3%(fqo^FD7i@S1h$T6By{9Q#BO?PtapYuuAH&Jg
zUIv@Pz2X?<acTj(R&w$c?@-3B&00S7p!i?q>&G~I^H1MQX2wmElLH&Xc|h)Ec6SXa
z0{P|^YfgT7YEhBs<X?etj7uj+2K{0xVx1fiEUCo?as@c7*g>o{AOaMAxA;=B67$mY
z^^)`RN{TX*iZ~}94pylL6`QvN;8I1YdZ6T9#0|2J8!DVpQc_R^azGI;NSG5UoRU-o
zjziY8{G#0AB1qJNtP=te;PfB@QqPu~pOTtWTm%jPaIA=f6i9#wUP%y{0#e45nLpVh
zq=i$JnStR0Gb1D8<bz=flRt$>PUZ*|pIj6sRIhn~0R`P)FuH&Z-C$6>fQmk_urV@y
zV4#esXZpZLnF&xQ2rw}6H}HYr4F<6bsOSR+FJl1X2L>ckg@H-n0}~%(g7OCjK1St_
z%nVEdEpi|c<qv9LIT1$X4-6tmQXl~nuoOQ?iXTY|B%o%(=*{?n0f{VQWMC4QtQJwk
zC^wlgGR@WuteKlp{sRLyqdeS7kbn|ciiOda@dE>hgiC@r9|S<==tW7If!xf-$PNm0
WcDNFdfRH$&;RgmxqNtjIfdK%)9_X(C

delta 3226
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

diff --git a/accounts/views.py b/accounts/views.py
index 6569e037..4287312e 100644
--- a/accounts/views.py
+++ b/accounts/views.py
@@ -1,33 +1,30 @@
-from django.shortcuts import render, redirect
-from django.contrib.auth import login as auth_login, logout as auth_logout, authenticate
-from django.contrib import messages
-from django.db import transaction
-from .forms import JobSeekerRegisterForm, EmployerRegisterForm, ProfileEditForm, EmployerProfileForm, JobSeekerProfileForm
-from django.contrib.auth.decorators import login_required
-from .models import Notification, CustomUser, EmployerProfile 
-from django.http import JsonResponse
-from django.shortcuts import render, redirect
-from django.contrib import messages
-from .forms import JobSeekerProfileForm
-from django.contrib.auth.decorators import login_required
 from django.shortcuts import render, redirect, get_object_or_404
-from django.core.mail import EmailMessage  # For sending via email
-from .models import EmployerProfile, OnboardingSubmission
+from django.contrib.auth import login as auth_login, logout as auth_logout, authenticate
 from django.contrib import messages
-import zipfile
-from io import BytesIO
-from django.http import JsonResponse
 from django.contrib.auth.decorators import login_required
-from .models import Notification
-from django.http import FileResponse
+from django.core.mail import EmailMessage
+from django.http import JsonResponse, FileResponse
+from django.db import transaction
+
+from .forms import (
+    JobSeekerRegisterForm,
+    EmployerRegisterForm,
+    ProfileEditForm,
+    EmployerProfileForm,
+    JobSeekerProfileForm,
+)
+from .models import (
+    Notification,
+    CustomUser,
+    EmployerProfile,
+    OnboardingSubmission,
+    JobSeekerProfile,
+)
+
 import zipfile
 from io import BytesIO
-from django.shortcuts import render, redirect, get_object_or_404
-from .models import EmployerProfile
-from django.contrib import messages
 
-from django.shortcuts import render
-from .models import Notification, JobSeekerProfile
+
 
 def message_box(request):
     notifications = Notification.objects.select_related('user').all()
@@ -46,8 +43,6 @@ def message_box(request):
 
 
 
-from django.http import JsonResponse
-from django.shortcuts import redirect
 
 @login_required
 def delete_notification(request, notification_id):
@@ -67,7 +62,7 @@ def delete_notification(request, notification_id):
     return redirect("message_box")
 
 
-from django.contrib import messages
+
 
 @login_required
 def handle_notification_response(request, notification_id, action):
@@ -94,8 +89,7 @@ def handle_notification_response(request, notification_id, action):
 
 
 
-from django.http import JsonResponse
-from django.shortcuts import redirect
+
 
 @login_required
 def mark_notification_as_read(request, notification_id):
@@ -175,8 +169,7 @@ def onboarding_form(request, employer_id):
 
 
 
-from django.shortcuts import render
-from .models import EmployerProfile
+
 @login_required
 def job_list(request):
     """View to display the list of employers."""
@@ -265,11 +258,7 @@ def employer_profile_edit(request):
     return render(request, 'accounts/employer_profile_edit.html', {'form': form})
 
 
-from django.shortcuts import render, redirect
-from django.contrib.auth import login as auth_login
-from django.contrib import messages
-from django.db import transaction
-from .forms import JobSeekerRegisterForm, EmployerRegisterForm
+
 
 def register(request):
     """Handles both Job Seeker and Employer registration dynamically."""
@@ -373,9 +362,7 @@ def send_notification(request, candidate_id):
     return JsonResponse({'status': 'error', 'message': 'Invalid request method.'}, status=405)
 
 
-from django.shortcuts import redirect, get_object_or_404
-from django.contrib.auth.decorators import login_required
-from .models import JobSeekerProfile
+
 
 @login_required
 def toggle_full_details_visibility(request):
@@ -393,8 +380,7 @@ def toggle_full_details_visibility(request):
 
 
 
-from django.shortcuts import render
-from .models import JobSeekerProfile
+
 
 @login_required
 def candidate_list(request):
@@ -404,8 +390,7 @@ def candidate_list(request):
     return render(request, 'candidatelist.html', {'candidates': candidates})
 
 
-from django.shortcuts import render, get_object_or_404
-from .models import JobSeekerProfile
+
 @login_required
 def candidate_details(request, candidate_id):
     """Displays the details of a specific candidate."""
@@ -422,8 +407,6 @@ def candidate_details(request, candidate_id):
 
 
 
-#View to Fetch Notifications
-from django.contrib.auth.decorators import login_required
 
 @login_required
 def notifications(request):
@@ -434,8 +417,6 @@ def notifications(request):
         'unread_notifications': unread_notifications
     })
 
-#AJAX Endpoint for Real-Time Updates:
-from django.http import JsonResponse
 
 def fetch_notifications(request):
     if not request.user.is_authenticated:
-- 
GitLab