Skip to content

feat(job_application): show job title in web form and prevent duplicate applications - #4964

Merged
iamkhanraheel merged 3 commits into
frappe:developfrom
iamkhanraheel:feat/job_portal_ux
Jul 30, 2026
Merged

feat(job_application): show job title in web form and prevent duplicate applications#4964
iamkhanraheel merged 3 commits into
frappe:developfrom
iamkhanraheel:feat/job_portal_ux

Conversation

@iamkhanraheel

@iamkhanraheel iamkhanraheel commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

Closes: #4188, #4187

Summary

  • Displays the job opening title (instead of raw ID) in the job application web form when navigating from a job listing
  • Adds a Prevent Duplicate Applicant option on Job Opening to block the same email from applying to the same position more than once
image
validateDuplicateApplication.mov
image

In progress - Captcha verification in web form

@iamkhanraheel iamkhanraheel changed the title feat: show job opening title instead of ID on job application and prevent duplicate submissions feat(job_applicant): improve job application UX and add reCAPTCHA verification Jul 22, 2026
@iamkhanraheel iamkhanraheel reopened this Jul 23, 2026
@iamkhanraheel iamkhanraheel changed the title feat(job_applicant): improve job application UX and add reCAPTCHA verification feat(job_application): show job title in web form and prevent duplicate applications Jul 23, 2026
@iamkhanraheel
iamkhanraheel marked this pull request as ready for review July 23, 2026 13:34
@greptile-apps

greptile-apps Bot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Confidence Score: 4/5

Mostly safe, but the duplicate guard in before_insert applies to desk inserts too, not just web form submissions, which will block HR staff from creating re-entries on job openings with the flag enabled.

The duplicate-applicant guard fires unconditionally on every insert regardless of whether it originated from the web form or the desk. On any job opening with prevent_duplicate_applicant enabled, an HR user cannot create a second Job Applicant record for the same email — even for a rejected candidate who is being re-considered — without disabling the flag first.

hrms/hr/doctype/job_applicant/job_applicant.py — the before_insert duplicate check needs a frappe.flags.in_web_form guard to avoid blocking desk operations.

Reviews (3): Last reviewed commit: "Revert "feat(job_applicant): add reCAPTC..." | Re-trigger Greptile

Comment thread hrms/hr/doctype/job_applicant/job_applicant.py
Comment thread hrms/hr/web_form/job_application/job_application.json
@mergify

mergify Bot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

Comment thread hrms/hr/doctype/job_applicant/job_applicant.py
@iamkhanraheel
iamkhanraheel merged commit fd430b6 into frappe:develop Jul 30, 2026
21 checks passed
@elhananjair

Copy link
Copy Markdown

@iamkhanraheel
Thank you, this is perfect.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Job title on job application form is showing job opening ID instead of the exact title of the job opening

2 participants