diff --git a/db.sqlite3 b/db.sqlite3 deleted file mode 100644 index a610315..0000000 Binary files a/db.sqlite3 and /dev/null differ diff --git a/recruitment/__pycache__/urls.cpython-312.pyc b/recruitment/__pycache__/urls.cpython-312.pyc index 8fd07cf..2ed18ea 100644 Binary files a/recruitment/__pycache__/urls.cpython-312.pyc and b/recruitment/__pycache__/urls.cpython-312.pyc differ diff --git a/recruitment/__pycache__/views.cpython-312.pyc b/recruitment/__pycache__/views.cpython-312.pyc index cb165ec..9e9fa12 100644 Binary files a/recruitment/__pycache__/views.cpython-312.pyc and b/recruitment/__pycache__/views.cpython-312.pyc differ diff --git a/recruitment/urls.py b/recruitment/urls.py index 599e36f..266496f 100644 --- a/recruitment/urls.py +++ b/recruitment/urls.py @@ -11,6 +11,7 @@ urlpatterns = [ path('jobs//update/', views.edit_job, name='job_update'), # path('jobs//delete/', views., name='job_delete'), path('jobs//', views.job_detail, name='job_detail'), + path('jobs//candidate/', views.job_detail_candidate, name='job_detail_candidate'), # LinkedIn Integration URLs path('jobs//post-to-linkedin/', views.post_to_linkedin, name='post_to_linkedin'), diff --git a/recruitment/views.py b/recruitment/views.py index 2f26c1b..b33e602 100644 --- a/recruitment/views.py +++ b/recruitment/views.py @@ -240,7 +240,12 @@ def job_detail(request, slug): 'offer_count': offer_count, } return render(request, 'jobs/job_detail.html', context) -\ + + +# job detail facing the candidate: +def job_detail_candidate(request,slug): + job=get_object_or_404(JobPosting,slug=slug) + return render(request,'jobs/job_detail_candidate.html',{'job':job}) def post_to_linkedin(request,slug): """Post a job to LinkedIn""" diff --git a/templates/jobs/job_detail_candidate.html b/templates/jobs/job_detail_candidate.html new file mode 100644 index 0000000..72e99db --- /dev/null +++ b/templates/jobs/job_detail_candidate.html @@ -0,0 +1,129 @@ +{% extends "base.html" %} + +{% block title %}{{ job.title }} - University ATS{% endblock %} + +{% block content %} +
+
+
+
+

{{ job.title }}

+ + {{ job.get_status_display }} + +
+
+ +
+
+ Department: {{ job.department|default:"Not specified" }} +
+
+ Position Number: {{ job.position_number|default:"Not specified" }} +
+
+ +
+
+ Job Type: {{ job.get_job_type_display }} +
+
+ Workplace: {{ job.get_workplace_type_display }} +
+
+ +
+
+ Location: {{ job.get_location_display }} +
+
+ Created By: {{ job.created_by|default:"Not specified" }} +
+
+ + {% if job.salary_range %} +
+
+ Salary Range: {{ job.salary_range }} +
+
+ {% endif %} + + {% if job.start_date %} +
+
+ Start Date: {{ job.start_date }} +
+
+ {% endif %} + + {% if job.application_deadline %} +
+
+ Application Deadline: {{ job.application_deadline }} + {% if job.is_expired %} + EXPIRED + {% endif %} +
+
+ {% endif %} + + + {% if job.description %} +
+
Description
+
{{ job.description|linebreaks }}
+
+ {% endif %} + + {% if job.qualifications %} +
+
Qualifications
+
{{ job.qualifications|linebreaks }}
+
+ {% endif %} + + {% if job.benefits %} +
+
Benefits
+
{{ job.benefits|linebreaks }}
+
+ {% endif %} + + {% if job.application_instructions %} +
+
Application Instructions
+
{{ job.application_instructions|linebreaks }}
+
+ {% endif %} + + +
+
+
+ +
+ + +
+
+
Ready to Apply?
+
+
+

Review the job details on the left, then click the button below to submit your application.

+ + Apply for this Position + +

+ You'll be redirected to our secure application form where you can upload your resume and provide additional details. +

+
+
+ + + +
+
+ + +{% endblock %} \ No newline at end of file