sr-npm 1.7.740 → 1.7.742

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.740",
3
+ "version": "1.7.742",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -13,6 +13,7 @@ let allvaluesobjects=[] // all values in the database
13
13
  let valueToJobs={} // valueId -> array of jobIds
14
14
  let currentJobs=[] // current jobs that are displayed in the jobs repeater
15
15
  let secondarySearchJobs=[] // secondary search results that are displayed in the jobs repeater
16
+ let secondarySearchIsFilled=false // whether the secondary search is filled with results
16
17
  const pagination = {
17
18
  pageSize: 10,
18
19
  currentPage: 1,
@@ -31,6 +32,7 @@ async function careersMultiBoxesPageOnReady(_$w,urlParams) {
31
32
  }
32
33
  selectedByField.clear();
33
34
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SECONDARY_SEARCH_INPUT).value='';
35
+ secondarySearchIsFilled=false;
34
36
  await updateJobsAndNumbersAndFilters(_$w,true);
35
37
  }
36
38
  });
@@ -171,8 +173,8 @@ async function loadJobsRepeater(_$w) {
171
173
  handlePaginationButtons(_$w);
172
174
  }
173
175
 
174
- function updateTotalJobsCountText(_$w,secondarySearch=false) {
175
- secondarySearch? _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.TotalJobsCountText).text = `${secondarySearchJobs.length} Jobs`:
176
+ function updateTotalJobsCountText(_$w) {
177
+ secondarySearchIsFilled? _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.TotalJobsCountText).text = `${secondarySearchJobs.length} Jobs`:
176
178
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.TotalJobsCountText).text = `${currentJobs.length} Jobs`;
177
179
  }
178
180
 
@@ -245,9 +247,9 @@ async function loadJobsRepeater(_$w) {
245
247
 
246
248
 
247
249
 
248
- async function updateJobsAndNumbersAndFilters(_$w) {
250
+ async function updateJobsAndNumbersAndFilters(_$w,clearAll=false) {
249
251
  await applyJobFilters(_$w); // re-query jobs
250
- await refreshFacetCounts(_$w); // recompute and update counts in all lists
252
+ await refreshFacetCounts(_$w,clearAll); // recompute and update counts in all lists
251
253
  await updateSelectedValuesRepeater(_$w);
252
254
  updateTotalJobsCountText(_$w);
253
255
  }
@@ -294,7 +296,8 @@ async function loadJobsRepeater(_$w) {
294
296
 
295
297
  async function applyJobFilters(_$w) {
296
298
  let tempFilteredJobs=[];
297
- let finalFilteredJobs=alljobs;
299
+ let finalFilteredJobs=[];
300
+ secondarySearchIsFilled? finalFilteredJobs=secondarySearchJobs:finalFilteredJobs=alljobs;
298
301
  let addedJobsIds=[]
299
302
  // AND across categories, OR within each category
300
303
  for (const [key, values] of selectedByField.entries()) {
@@ -338,11 +341,11 @@ async function loadJobsRepeater(_$w) {
338
341
  handlePaginationButtons(_$w);
339
342
  }
340
343
 
341
- function handlePaginationButtons(_$w,secondarySearch=false)
344
+ function handlePaginationButtons(_$w)
342
345
  {
343
346
  handlePageUrlParam();
344
347
  pagination.currentPage===1? _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PAGE_BUTTON_PREVIOUS).disable():_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PAGE_BUTTON_PREVIOUS).enable();
345
- if(secondarySearch) {
348
+ if(secondarySearchIsFilled) {
346
349
  pagination.currentPage>=Math.ceil(secondarySearchJobs.length/pagination.pageSize)? _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PAGE_BUTTON_NEXT).disable():_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PAGE_BUTTON_NEXT).enable();
347
350
  }
348
351
  else {
@@ -360,12 +363,11 @@ function handlePageUrlParam() {
360
363
  }
361
364
 
362
365
  }
363
- async function refreshFacetCounts(_$w,clearAll=false,secondarySearch=false) {
366
+ async function refreshFacetCounts(_$w,clearAll=false) {
364
367
 
365
368
  console.log("refreshing facet counts");
366
369
 
367
-
368
- secondarySearch? countJobsPerField(secondarySearchJobs):countJobsPerField(currentJobs);
370
+ secondarySearchIsFilled? countJobsPerField(secondarySearchJobs):countJobsPerField(currentJobs);
369
371
  // const fieldIds = Array.from(optionsByFieldId.keys());
370
372
  // const currentJobsIds=currentJobs.map(job=>job._id);
371
373
  // for (const fieldId of fieldIds) {
@@ -431,6 +433,7 @@ function primarySearch(_$w,query) {
431
433
  async function secondarySearch(_$w,query) {
432
434
  if(query.length===0) {
433
435
  secondarySearchJobs=currentJobs;
436
+ secondarySearchIsFilled=false;
434
437
  }
435
438
  else {
436
439
  secondarySearchJobs=currentJobs.filter(job=>job.title.toLowerCase().includes(query));
@@ -447,9 +450,10 @@ async function secondarySearch(_$w,query) {
447
450
  else{
448
451
  await _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOBS_MULTI_STATE_BOX).changeState("searchResult");
449
452
  }
450
- handlePaginationButtons(_$w,true);
451
- updateTotalJobsCountText(_$w,true);
452
- await refreshFacetCounts(_$w, false, true); //false for clearAll, true for secondarySearch
453
+ secondarySearchIsFilled=true
454
+ handlePaginationButtons(_$w);
455
+ updateTotalJobsCountText(_$w);
456
+ await refreshFacetCounts(_$w); //false for clearAll, true for secondarySearch
453
457
  return secondarySearchJobs;
454
458
  }
455
459
  async function bindSearchInput(_$w) {