Skip to content
Snippets Groups Projects

Added extended search fields in jobs

Merged Nitin Jadhav requested to merge jobs-extended-search into master
1 file
+ 31
1
Compare changes
  • Side-by-side
  • Inline
@@ -162,6 +162,7 @@ export function extendJobsObjects(jobs = []) {
return {
...job,
$lowercase_title: job.title.toLowerCase(),
$lowercase_field_jobs_type: job.field_jobs_type?.toLowerCase() || "",
$stripped_field_jobs_duty_station: stripHtml(
job.field_jobs_duty_station
),
@@ -172,6 +173,15 @@ export function extendJobsObjects(jobs = []) {
$lowercase_field_jobs_description: stripHtml(
job.field_jobs_description
).toLowerCase(),
$lowercase_field_jobs_your_role: stripHtml(
job.field_jobs_your_role
).toLowerCase(),
$lowercase_field_jobs_you_have: stripHtml(
job.field_jobs_you_have
).toLowerCase(),
$lowercase_field_jobs_you_also_have: stripHtml(
job.field_jobs_you_also_have
).toLowerCase(),
$field_jobs_expiration: parseDateFromTimeHtml(
job.field_jobs_expiration
),
@@ -189,8 +199,12 @@ export function extendJobsObjects(jobs = []) {
function jobContainsSearchTerm(job, searchTerm) {
return (
job.$lowercase_title.includes(searchTerm) ||
job.$lowercase_field_jobs_type.includes(searchTerm) ||
job.$lowercase_field_jobs_description.includes(searchTerm) ||
job.$lowercase_field_jobs_duty_station.includes(searchTerm)
job.$lowercase_field_jobs_duty_station.includes(searchTerm) ||
job.$lowercase_field_jobs_your_role.includes(searchTerm) ||
job.$lowercase_field_jobs_you_have.includes(searchTerm) ||
job.$lowercase_field_jobs_you_also_have.includes(searchTerm)
);
}
function highlightTerm(jobs, searchTerm) {
@@ -206,6 +220,22 @@ function highlightTerm(jobs, searchTerm) {
termRegEx,
creteHighlightMarkup
);
job.field_jobs_type = job.field_jobs_type.replaceAll(
termRegEx,
creteHighlightMarkup
);
job.field_jobs_your_role = job.field_jobs_your_role.replaceAll(
termRegEx,
creteHighlightMarkup
);
job.field_jobs_you_have = job.field_jobs_you_have.replaceAll(
termRegEx,
creteHighlightMarkup
);
job.field_jobs_you_also_have = job.field_jobs_you_also_have.replaceAll(
termRegEx,
creteHighlightMarkup
);
});
return jobs;
}