sr-npm 1.7.751 → 1.7.752

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16,12 +16,16 @@ const CAREERS_MULTI_BOXES_PAGE_CONSTS={
16
16
  PAGE_BUTTON_PREVIOUS: '#previousPageButton',
17
17
  paginationCurrentText: '#paginationCurrent',
18
18
  paginationTotalCountText: '#paginationTotalCount',
19
- SEARCH_INPUT: '#searchInput',
20
19
  PRIMARY_SEARCH_RESULTS: '#resultsRepeater',
21
20
  SEARCH_BUTTON: '#searchButton',
22
21
  SECONDARY_SEARCH_INPUT: '#secondarySearchInput',
23
22
  JOBS_MULTI_STATE_BOX:"#jobsMultiStateBox",
24
-
23
+ PRIMARY_SEARCH_INPUT: '#primarySearchInput',
24
+ JOB_RESULTS_REPEATER: '#jobResultsRepeater',
25
+ CATEGORY_RESULTS_REPEATER: '#categoryResultsRepeater',
26
+ PRIMARY_SEARCH_MULTI_BOX: '#primarySearchMultiBox',
27
+ PRIMARY_SEARCH_POSITION_BUTTON: '#primarySearechPositionButton',
28
+ PRIMARY_SEARCH_CATEGORY_BUTTON: '#primarySearchCategoryButton',
25
29
 
26
30
  }
27
31
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sr-npm",
3
- "version": "1.7.751",
3
+ "version": "1.7.752",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -22,6 +22,7 @@ const pagination = {
22
22
  async function careersMultiBoxesPageOnReady(_$w,urlParams) {
23
23
  await loadData(_$w);
24
24
  await loadJobsRepeater(_$w);
25
+ await loadPrimarySearchButtons(_$w);
25
26
  await loadFilters(_$w);
26
27
  await loadSelectedValuesRepeater(_$w);
27
28
  await bindSearchInput(_$w);
@@ -41,6 +42,17 @@ async function careersMultiBoxesPageOnReady(_$w,urlParams) {
41
42
  await handleUrlParams(_$w,urlParams);
42
43
  }
43
44
 
45
+ async function loadPrimarySearchButtons(_$w) {
46
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).onItemReady(async ($item, itemData) => {
47
+ $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_POSITION_BUTTON).text = itemData.title || '';
48
+
49
+ });
50
+
51
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CATEGORY_RESULTS_REPEATER).onItemReady(async ($item, itemData) => {
52
+ $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_CATEGORY_BUTTON).text = itemData.title || '';
53
+ });
54
+ }
55
+
44
56
  async function handleUrlParams(_$w,urlParams) {
45
57
  let applyFiltering=false;
46
58
  if(urlParams.brand) {
@@ -150,6 +162,7 @@ async function loadData(_$w) {
150
162
  }
151
163
  if(Object.keys(valueToJobs).length === 0){
152
164
  allvaluesobjects=await getAllRecords(COLLECTIONS.CUSTOM_VALUES);
165
+ console.log("allvaluesobjects: ", allvaluesobjects);
153
166
  for (const value of allvaluesobjects) {
154
167
  valueToJobs[value._id]= value.jobIds;
155
168
  }
@@ -222,7 +235,7 @@ async function loadJobsRepeater(_$w) {
222
235
  dontUpdateThisCheckBox=field._id;
223
236
  const selected = ev.target.value; // array of selected value IDs
224
237
  if (selected && selected.length) {
225
- selectedByField.set(field._id, selected);
238
+ selectedByField.set(field._id, selected);
226
239
  } else {
227
240
  selectedByField.delete(field._id);
228
241
  }
@@ -409,6 +422,19 @@ async function refreshFacetCounts(_$w,clearAll=false) {
409
422
 
410
423
  function primarySearch(_$w,query) {
411
424
  console.log("primary search query: ", query);
425
+
426
+ let filteredJobs=alljobs.filter(job=>job.title.toLowerCase().includes(query));
427
+ if(filteredJobs.length>0) {
428
+ alljobs=filteredJobs;
429
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("searchResult");
430
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = alljobs
431
+ }
432
+ else {
433
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("noResults");
434
+
435
+ }
436
+
437
+
412
438
  }
413
439
  async function secondarySearch(_$w,query) {
414
440
  if(query.length===0 || query===undefined || query==='') {
@@ -440,15 +466,31 @@ async function secondarySearch(_$w,query) {
440
466
  }
441
467
  async function bindSearchInput(_$w) {
442
468
  const primarySearchDebounced = debounce(() => {
443
- const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SEARCH_INPUT).value || '').toLowerCase().trim();
469
+ const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value || '').toLowerCase().trim();
444
470
  primarySearch(_$w, query);
445
471
  }, 150);
446
472
  const secondarySearchDebounced = debounce(async () => {
447
473
  const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SECONDARY_SEARCH_INPUT).value || '').toLowerCase().trim();
448
474
  await secondarySearch(_$w, query);
449
475
  }, 150);
450
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SEARCH_INPUT).onInput(primarySearchDebounced);
476
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onInput(primarySearchDebounced);
477
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onClick(async () => {
478
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("categoryResults");
479
+ // let categroyFieldId;
480
+ // for(const field of allfields) {
481
+ // if(field.title==="Category") {
482
+ // categroyFieldId=field._id;
483
+ // break;
484
+ // }
485
+ // }
486
+ // let categorycounts=countsByFieldId.get(categroyFieldId);
487
+
488
+
489
+ //_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = alljobs
490
+ //@@@@@@@@@@@@@@@@@
491
+ });
451
492
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SECONDARY_SEARCH_INPUT).onInput(secondarySearchDebounced);
493
+
452
494
  }
453
495
 
454
496
  module.exports = {