sr-npm 1.7.798 → 1.7.800

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sr-npm",
3
- "version": "1.7.798",
3
+ "version": "1.7.800",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1,8 +1,8 @@
1
1
  const { COLLECTIONS,CUSTOM_VALUES_COLLECTION_FIELDS,JOBS_COLLECTION_FIELDS } = require('../backend/collectionConsts');
2
2
  const { queryParams} = require('wix-location-frontend');
3
3
  const { location } = require("@wix/site-location");
4
- const {CAREERS_MULTI_BOXES_PAGE_CONSTS,FiltersIds,fieldTitlesInCMS} = require('../backend/careersMultiBoxesPageIds');
5
- const { groupValuesByField, debounce, getAllRecords, getFieldById, getFieldByTitle,getCorrectOption,getOptionIndexFromCheckBox,loadPrimarySearchRepeater,bindPrimarySearch,primarySearch } = require('./pagesUtils');
4
+ const {CAREERS_MULTI_BOXES_PAGE_CONSTS,FiltersIds,fieldTitlesInCMS,CATEGORY_CUSTOM_FIELD_ID_IN_CMS} = require('../backend/careersMultiBoxesPageIds');
5
+ const { groupValuesByField, debounce, getAllRecords, getFieldById, getFieldByTitle,getCorrectOption,getOptionIndexFromCheckBox } = require('./pagesUtils');
6
6
 
7
7
  let dontUpdateThisCheckBox;
8
8
  const selectedByField = new Map(); // fieldId -> array of selected value IDs
@@ -54,28 +54,30 @@ async function clearAll(_$w) {
54
54
  }
55
55
 
56
56
 
57
- // async function loadPrimarySearchRepeater(_$w) {
58
- // try {
59
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).onItemReady(async ($item, itemData) => {
60
- // $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_POSITION_BUTTON).label = itemData.title || '';
61
- // $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_POSITION_BUTTON).onClick(async () => {
62
- // await location.to(itemData["link-jobs-title"]);
63
- // })
57
+ async function loadPrimarySearchRepeater(_$w) {
58
+ try {
59
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).onItemReady(async ($item, itemData) => {
60
+ $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_POSITION_BUTTON).label = itemData.title || '';
61
+ $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_POSITION_BUTTON).onClick(async () => {
62
+ console.log("primary search position button clicked: ", itemData);
63
+ await location.to(itemData["link-jobs-title"]);
64
+ })
64
65
 
65
- // });
66
-
67
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CATEGORY_RESULTS_REPEATER).onItemReady(async ($item, itemData) => {
68
- // $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_CATEGORY_BUTTON).label = itemData.title || '';
69
- // $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_CATEGORY_BUTTON).onClick(async () => {
70
- // const baseUrl = await location.baseUrl();
71
- // const encodedCategory=encodeURIComponent(itemData._id);
72
- // await location.to(`${baseUrl}/search?category=${encodedCategory}`);
73
- // });
74
- // });
75
- // } catch (error) {
76
- // console.error('Failed to load primary search repeater:', error);
77
- // }
78
- // }
66
+ });
67
+
68
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CATEGORY_RESULTS_REPEATER).onItemReady(async ($item, itemData) => {
69
+ $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_CATEGORY_BUTTON).label = itemData.title || '';
70
+ $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_CATEGORY_BUTTON).onClick(async () => {
71
+ await clearAll(_$w);
72
+ let encodedCategory=encodeURIComponent(itemData._id);
73
+ queryParams.add({ category:encodedCategory });
74
+ await handleUrlParams(_$w,{category:encodedCategory});
75
+ });
76
+ });
77
+ } catch (error) {
78
+ console.error('Failed to load primary search repeater:', error);
79
+ }
80
+ }
79
81
 
80
82
  async function handleUrlParams(_$w,urlParams) {
81
83
  try {
@@ -89,7 +91,7 @@ async function handleUrlParams(_$w,urlParams) {
89
91
  applyFiltering=await handleParams(_$w,"category",urlParams.category)
90
92
  }
91
93
  if(urlParams.keyword) {
92
- applyFiltering=await primarySearch(_$w, decodeURIComponent(urlParams.keyword), alljobs);
94
+ applyFiltering=await primarySearch(_$w, decodeURIComponent(urlParams.keyword));
93
95
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value=decodeURIComponent(urlParams.keyword);
94
96
  keyword=true;
95
97
  }
@@ -483,26 +485,26 @@ async function refreshFacetCounts(_$w,clearAll=false) {
483
485
  }
484
486
 
485
487
 
486
- // async function primarySearch(_$w,query) {
487
- // console.log("primary search query: ", query);
488
- // if(query.length===0 || query===undefined || query==='') {
489
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("categoryResults");
490
- // return false;
491
- // }
492
-
493
- // let filteredJobs=alljobs.filter(job=>job.title.toLowerCase().includes(query));
494
- // console.log("filteredJobs.length: ", filteredJobs.length);
495
- // if(filteredJobs.length>0) {
496
- // currentJobs=filteredJobs;
497
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("jobResults");
498
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = currentJobs
499
- // return true;
500
- // }
501
- // else {
502
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("noResults");
503
- // return false;
504
- // }
505
- // }
488
+ async function primarySearch(_$w,query) {
489
+ console.log("primary search query: ", query);
490
+ if(query.length===0 || query===undefined || query==='') {
491
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("categoryResults");
492
+ return false;
493
+ }
494
+
495
+ let filteredJobs=alljobs.filter(job=>job.title.toLowerCase().includes(query));
496
+ console.log("filteredJobs.length: ", filteredJobs.length);
497
+ if(filteredJobs.length>0) {
498
+ currentJobs=filteredJobs;
499
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("jobResults");
500
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = currentJobs
501
+ return true;
502
+ }
503
+ else {
504
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("noResults");
505
+ return false;
506
+ }
507
+ }
506
508
  async function secondarySearch(_$w,query) {
507
509
  if(query.length===0 || query===undefined || query==='') {
508
510
  secondarySearchIsFilled=false;
@@ -533,86 +535,80 @@ async function secondarySearch(_$w,query) {
533
535
  }
534
536
  async function bindSearchInput(_$w) {
535
537
  try {
536
- await bindPrimarySearch(_$w,allvaluesobjects,alljobs);
537
-
538
- // const primarySearchDebounced = debounce(async () => {
539
- // const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value || '').toLowerCase().trim();
540
- // await primarySearch(_$w, query);
541
- // }, 150);
538
+ const primarySearchDebounced = debounce(async () => {
539
+ const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value || '').toLowerCase().trim();
540
+ await primarySearch(_$w, query);
541
+ }, 150);
542
542
 
543
543
  const secondarySearchDebounced = debounce(async () => {
544
544
  const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SECONDARY_SEARCH_INPUT).value || '').toLowerCase().trim();
545
545
  await secondarySearch(_$w, query);
546
546
  }, 150);
547
547
 
548
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onInput(async () => {
549
- // await primarySearchDebounced();
550
- // });
551
-
552
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onClick(async () => {
553
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).expand();
554
- // if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()!=='') {
555
- // await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim());
556
- // }
557
- // else {
558
- // await loadCategoriesListPrimarySearch(_$w);
559
- // }
560
- // });
561
-
562
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).onMouseOut(async () => {
563
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
564
- // });
565
-
566
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onKeyPress(async (event) => {
567
- // if( event.key==='Enter') {
568
- // if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()==='') {
569
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
570
- // await updateJobsAndNumbersAndFilters(_$w);
571
-
572
- // }
573
- // else {
574
- // let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
575
- // const baseUrl = await location.baseUrl();
576
- // await location.to(`${baseUrl}/search?keyword=${encodedKeyWord}`);
577
- // // queryParams.add({ keyword:encodedKeyWord });
578
- // // handleUrlParams(_$w,{keyword:encodedKeyWord});
579
- // // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
580
- // // await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim());
581
- // }
582
- // }
583
- // });
548
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onInput(async () => {
549
+ await primarySearchDebounced();
550
+ });
551
+
552
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onClick(async () => {
553
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).expand();
554
+ if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()!=='') {
555
+ await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim());
556
+ }
557
+ else {
558
+ await loadCategoriesListPrimarySearch(_$w);
559
+ }
560
+ });
561
+
562
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).onMouseOut(async () => {
563
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
564
+ });
565
+
566
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onKeyPress(async (event) => {
567
+ if( event.key==='Enter') {
568
+ if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()==='') {
569
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
570
+ await updateJobsAndNumbersAndFilters(_$w);
571
+
572
+ }
573
+ else {
574
+ let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
575
+ queryParams.add({ keyword:encodedKeyWord });
576
+ handleUrlParams(_$w,{keyword:encodedKeyWord});
577
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
578
+ // await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim());
579
+ }
580
+ }
581
+ });
584
582
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SECONDARY_SEARCH_INPUT).onInput(secondarySearchDebounced);
585
583
 
586
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_BUTTON).onClick(async () => {
587
- // if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()==='') {
588
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
589
- // await updateJobsAndNumbersAndFilters(_$w);
590
- // }
591
- // else {
592
- // let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
593
- // const baseUrl = await location.baseUrl();
594
- // await location.to(`${baseUrl}/search?keyword=${encodedKeyWord}`);
595
- // // queryParams.add({ keyword:encodedKeyWord });
596
- // // await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim());
597
- // // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
598
- // }
599
- // });
584
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_BUTTON).onClick(async () => {
585
+ if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()==='') {
586
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
587
+ await updateJobsAndNumbersAndFilters(_$w);
588
+ }
589
+ else {
590
+ let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
591
+ queryParams.add({ keyword:encodedKeyWord });
592
+ await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim());
593
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
594
+ }
595
+ });
600
596
  } catch (error) {
601
597
  console.error('Failed to bind search input:', error);
602
598
  }
603
599
  }
604
600
 
605
- // async function loadCategoriesListPrimarySearch(_$w) {
606
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("categoryResults");
607
- // let categoryValues=[]
608
- // for(const value of allvaluesobjects) {
609
- // if(value.customField===CATEGORY_CUSTOM_FIELD_ID_IN_CMS) {
610
- // categoryValues.push({title:value.title+` (${value.totalJobs})` ,_id:value._id});
611
- // }
612
- // }
613
- // console.log("categoryValues: ", categoryValues);
614
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CATEGORY_RESULTS_REPEATER).data = categoryValues;
615
- // }
601
+ async function loadCategoriesListPrimarySearch(_$w) {
602
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("categoryResults");
603
+ let categoryValues=[]
604
+ for(const value of allvaluesobjects) {
605
+ if(value.customField===CATEGORY_CUSTOM_FIELD_ID_IN_CMS) {
606
+ categoryValues.push({title:value.title+` (${value.totalJobs})` ,_id:value._id});
607
+ }
608
+ }
609
+ console.log("categoryValues: ", categoryValues);
610
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CATEGORY_RESULTS_REPEATER).data = categoryValues;
611
+ }
616
612
 
617
613
  module.exports = {
618
614
  careersMultiBoxesPageOnReady,
package/pages/homePage.js CHANGED
@@ -5,29 +5,12 @@ const {
5
5
  const { handleOnLocationClick } = require('../public/mapUtils');
6
6
  const { filterBrokenMarkers } = require('../public/utils');
7
7
  const { location } = require('@wix/site-location');
8
- const {wixData} = require('wix-data');
9
- const { COLLECTIONS } = require('../backend/collectionConsts');
10
- const { bindPrimarySearch,getAllRecords,loadPrimarySearchRepeater } = require('./pagesUtils');
11
8
  let thisObjectVar;
12
9
  let searchByCityFlag=false;
13
- async function homePageOnReady(_$w,thisObject=null) {
14
-
15
- const queryResult = await wixData.query(COLLECTIONS.SITE_CONFIGS).find();
16
- const siteconfig = queryResult.items[0];
17
- if(siteconfig.categorySearch==="true") {
18
- const allJobs=await getAllRecords(COLLECTIONS.JOBS);
19
- const allvaluesobjects=await getAllRecords(COLLECTIONS.CUSTOM_VALUES);
20
- Promise.all([
21
- bindPrimarySearch(_$w,allvaluesobjects,allJobs),
22
- loadPrimarySearchRepeater(_$w)
23
- ]);
24
- }
25
- else{
26
-
10
+ async function homePageOnReady(_$w,thisObject) {
27
11
  thisObjectVar=thisObject;
28
12
  await bind(_$w);
29
13
  await init(_$w);
30
- }
31
14
 
32
15
  }
33
16
 
@@ -1,6 +1,5 @@
1
1
  const { items: wixData } = require('@wix/data');
2
2
  const { JOBS_COLLECTION_FIELDS } = require('../backend/collectionConsts');
3
- const { CAREERS_MULTI_BOXES_PAGE_CONSTS,CATEGORY_CUSTOM_FIELD_ID_IN_CMS } = require('../backend/careersMultiBoxesPageIds');
4
3
 
5
4
  function groupValuesByField(values, refKey) {
6
5
  const map = new Map();
@@ -59,124 +58,6 @@ function groupValuesByField(values, refKey) {
59
58
  }
60
59
  }
61
60
 
62
- async function loadPrimarySearchRepeater(_$w) {
63
- try {
64
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).onItemReady(async ($item, itemData) => {
65
- $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_POSITION_BUTTON).label = itemData.title || '';
66
- $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_POSITION_BUTTON).onClick(async () => {
67
- await location.to(itemData["link-jobs-title"]);
68
- })
69
-
70
- });
71
-
72
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CATEGORY_RESULTS_REPEATER).onItemReady(async ($item, itemData) => {
73
- $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_CATEGORY_BUTTON).label = itemData.title || '';
74
- $item(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_CATEGORY_BUTTON).onClick(async () => {
75
- const baseUrl = await location.baseUrl();
76
- const encodedCategory=encodeURIComponent(itemData._id);
77
- await location.to(`${baseUrl}/search?category=${encodedCategory}`);
78
- });
79
- });
80
- } catch (error) {
81
- console.error('Failed to load primary search repeater:', error);
82
- }
83
- }
84
-
85
- async function bindPrimarySearch(_$w,allvaluesobjects,alljobs) {
86
-
87
- const primarySearchDebounced = debounce(async () => {
88
- const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value || '').toLowerCase().trim();
89
- await primarySearch(_$w, query, alljobs);
90
- }, 150);
91
-
92
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onInput(async () => {
93
- await primarySearchDebounced();
94
- });
95
-
96
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onClick(async () => {
97
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).expand();
98
- if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()!=='') {
99
- await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim(), alljobs);
100
- }
101
- else {
102
- await loadCategoriesListPrimarySearch(_$w,allvaluesobjects);
103
- }
104
- });
105
-
106
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).onMouseOut(async () => {
107
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
108
- });
109
-
110
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onKeyPress(async (event) => {
111
- if( event.key==='Enter') {
112
- if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()==='') {
113
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
114
- // await updateJobsAndNumbersAndFilters(_$w);
115
-
116
- }
117
- else {
118
- let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
119
- const baseUrl = await location.baseUrl();
120
- await location.to(`${baseUrl}/search?keyword=${encodedKeyWord}`);
121
- // queryParams.add({ keyword:encodedKeyWord });
122
- // handleUrlParams(_$w,{keyword:encodedKeyWord});
123
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
124
- // await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim());
125
- }
126
- }
127
- });
128
-
129
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_BUTTON).onClick(async () => {
130
- if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()==='') {
131
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
132
- //await updateJobsAndNumbersAndFilters(_$w);
133
- }
134
- else {
135
- let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
136
- const baseUrl = await location.baseUrl();
137
- await location.to(`${baseUrl}/search?keyword=${encodedKeyWord}`);
138
- // queryParams.add({ keyword:encodedKeyWord });
139
- // await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim());
140
- // _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).collapse();
141
- }
142
- });
143
-
144
-
145
- }
146
-
147
- async function loadCategoriesListPrimarySearch(_$w,allvaluesobjects) {
148
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("categoryResults");
149
- let categoryValues=[]
150
- for(const value of allvaluesobjects) {
151
- if(value.customField===CATEGORY_CUSTOM_FIELD_ID_IN_CMS) {
152
- categoryValues.push({title:value.title+` (${value.totalJobs})` ,_id:value._id});
153
- }
154
- }
155
- console.log("categoryValues: ", categoryValues);
156
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CATEGORY_RESULTS_REPEATER).data = categoryValues;
157
- }
158
-
159
- async function primarySearch(_$w,query,alljobs) {
160
- console.log("primary search query: ", query);
161
- if(query.length===0 || query===undefined || query==='') {
162
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("categoryResults");
163
- return false;
164
- }
165
-
166
- let filteredJobs=alljobs.filter(job=>job.title.toLowerCase().includes(query));
167
- console.log("filteredJobs.length: ", filteredJobs.length);
168
- if(filteredJobs.length>0) {
169
- //currentJobs=filteredJobs;
170
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("jobResults");
171
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = filteredJobs
172
- return true;
173
- }
174
- else {
175
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("noResults");
176
- return false;
177
- }
178
- }
179
-
180
61
  module.exports = {
181
62
  groupValuesByField,
182
63
  debounce,
@@ -185,7 +66,4 @@ async function primarySearch(_$w,query,alljobs) {
185
66
  getFieldByTitle,
186
67
  getCorrectOption,
187
68
  getOptionIndexFromCheckBox,
188
- loadPrimarySearchRepeater,
189
- bindPrimarySearch,
190
- primarySearch,
191
69
  }
@@ -24,6 +24,10 @@ const {
24
24
  _$w('#responsibilitiesText').text = htmlToText(item.jobDescription.jobDescription.text);
25
25
  _$w('#qualificationsText').text = htmlToText(item.jobDescription.qualifications.text);
26
26
  _$w('#relatedJobsTitleText').text = `More ${item.department} Positions`;
27
+ if(_$w('#additionalInfoText'))
28
+ {
29
+ _$w('#additionalInfoText').text = htmlToText(item.jobDescription.additionalInformation.text);
30
+ }
27
31
  });
28
32
 
29
33
  _$w('#relatedJobsDataset').onReady(() => {
@@ -28,14 +28,13 @@ Module.prototype.require = function(id) {
28
28
  };
29
29
 
30
30
  const careersMultiBoxesPage = rewire('../pages/careersMultiBoxesPage');
31
- const pagesUtils = rewire('../pages/pagesUtils');
32
31
 
33
32
  // Restore original require
34
33
  Module.prototype.require = originalRequire;
35
34
 
36
35
  const secondarySearch = careersMultiBoxesPage.__get__('secondarySearch');
37
- const primarySearch = pagesUtils.__get__('primarySearch');
38
- const loadCategoriesListPrimarySearch = pagesUtils.__get__('loadCategoriesListPrimarySearch');
36
+ const primarySearch = careersMultiBoxesPage.__get__('primarySearch');
37
+ const loadCategoriesListPrimarySearch = careersMultiBoxesPage.__get__('loadCategoriesListPrimarySearch');
39
38
 
40
39
 
41
40
 
@@ -166,7 +165,7 @@ describe('primarySearch function tests', () => {
166
165
  });
167
166
  careersMultiBoxesPage.__set__('alljobs', mockJobs);
168
167
 
169
- await primarySearch(mockW, 'product',mockJobs);
168
+ await primarySearch(mockW, 'product');
170
169
 
171
170
  expect(mockprimarySearchMultiBox.changeState).toHaveBeenCalledWith('jobResults');
172
171
  expect(mockprimarySearcJobResult.data).toHaveLength(11);
@@ -179,7 +178,7 @@ describe('primarySearch function tests', () => {
179
178
  });
180
179
  careersMultiBoxesPage.__set__('alljobs', mockJobs);
181
180
 
182
- await primarySearch(mockW, 'unicorn hunter',mockJobs);
181
+ await primarySearch(mockW, 'unicorn hunter');
183
182
 
184
183
  expect(mockprimarySearchMultiBox.changeState).toHaveBeenCalledWith('noResults');
185
184
  expect(mockprimarySearcJobResult.data).toBeNull();
@@ -194,7 +193,7 @@ describe('primarySearch function tests', () => {
194
193
 
195
194
  careersMultiBoxesPage.__set__('allvaluesobjects', mockCategoryValues);
196
195
 
197
- await loadCategoriesListPrimarySearch(mockW,mockCategoryValues);
196
+ await loadCategoriesListPrimarySearch(mockW);
198
197
 
199
198
  expect(mockprimarySearchMultiBox.changeState).toHaveBeenCalledWith('categoryResults');
200
199
  expect(mockCategoryResultsRepeater.data).toHaveLength(3);