sr-npm 1.2.30 → 1.2.32

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.2.30",
3
+ "version": "1.2.32",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -600,16 +600,15 @@ async function secondarySearch(_$w,query) {
600
600
  await refreshFacetCounts(_$w);
601
601
  return allsecondarySearchJobs;
602
602
  }
603
- function bindSearchInput(_$w) {
603
+ function bindSearchInput(_$w) {
604
604
  try {
605
- bindPrimarySearch(_$w,allvaluesobjects,alljobs);
605
+ bindPrimarySearch(_$w, allvaluesobjects);
606
606
 
607
607
  const secondarySearchDebounced = debounce(async () => {
608
608
  const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SECONDARY_SEARCH_INPUT).value || '').toLowerCase().trim();
609
609
  await secondarySearch(_$w, query);
610
610
  }, 150);
611
611
 
612
-
613
612
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.SECONDARY_SEARCH_INPUT).onInput(secondarySearchDebounced);
614
613
 
615
614
  } catch (error) {
package/pages/homePage.js CHANGED
@@ -1,24 +1,22 @@
1
- const {
2
- debounce,
3
- getFilter,
4
- } = require('../public/filterUtils');
5
- const { handleOnLocationClick } = require('../public/mapUtils');
6
- const { filterBrokenMarkers } = require('../public/utils');
1
+ const { debounce, getFilter } = require('../public/filterUtils');
2
+ const { handleOnLocationClick } = require('../public/mapUtils');
3
+ const { filterBrokenMarkers } = require('../public/utils');
7
4
  const { location } = require('@wix/site-location');
8
5
  const {wixData} = require('wix-data');
9
6
  const { COLLECTIONS } = require('../backend/collectionConsts');
10
- const { bindPrimarySearch,getAllRecords,loadPrimarySearchRepeater } = require('./pagesUtils');
7
+ const { bindPrimarySearch, getAllRecords, loadPrimarySearchRepeater } = require('./pagesUtils');
8
+
11
9
  let thisObjectVar;
12
10
  let searchByCityFlag=false;
13
11
  let loadedCategories=false;
14
- async function homePageOnReady(_$w,thisObject=null) {
15
12
 
13
+ async function homePageOnReady(_$w,thisObject = null) {
16
14
  const queryResult = await wixData.query(COLLECTIONS.SITE_CONFIGS).find();
17
15
  const siteconfig = queryResult.items[0];
16
+
18
17
  if(siteconfig.twg) {
19
- const allJobs=await getAllRecords(COLLECTIONS.JOBS);
20
18
  const allvaluesobjects=await getAllRecords(COLLECTIONS.CUSTOM_VALUES);
21
- bindPrimarySearch(_$w,allvaluesobjects,allJobs);
19
+ bindPrimarySearch(_$w, allvaluesobjects);
22
20
  loadPrimarySearchRepeater(_$w)
23
21
  console.log("siteconfig.twg: ",siteconfig.twg);
24
22
  if(siteconfig.twg==="external") {
@@ -27,19 +25,16 @@ async function homePageOnReady(_$w,thisObject=null) {
27
25
  }
28
26
  }
29
27
  else{
30
-
31
- thisObjectVar=thisObject;
32
- await bind(_$w);
33
- await init(_$w);
28
+ thisObjectVar = thisObject;
29
+ bind(_$w);
30
+ init(_$w);
34
31
  }
35
32
 
36
- }
37
-
38
- function bind(_$w) {
33
+ }
39
34
 
35
+ function bind(_$w) {
40
36
  bindTeamRepeater(_$w);
41
37
 
42
-
43
38
  _$w('#citiesDataset').onReady(async () => {
44
39
  const numOfItems = await _$w('#citiesDataset').getTotalCount();
45
40
  const items = await _$w('#citiesDataset').getItems(0, numOfItems);
@@ -53,8 +48,8 @@ async function homePageOnReady(_$w,thisObject=null) {
53
48
  latitude: location.latitude,
54
49
  longitude: location.longitude
55
50
  },
56
- address: item.locationAddress.formatted,
57
- title: item.title,
51
+ address: item.locationAddress.formatted,
52
+ title: item.title,
58
53
  link: cityLinkUrl,
59
54
  linkTitle:`View ${item.count} Open Positions`
60
55
  };
@@ -103,7 +98,6 @@ function bindTeamRepeater(_$w) {
103
98
  }
104
99
 
105
100
  function bindViewAllButton(_$w) {
106
-
107
101
  _$w('#viewAllCategoriesButton').onClick(()=>{
108
102
  if(!loadedCategories) {
109
103
  loadedCategories=true;
@@ -122,11 +116,11 @@ function bindViewAllButton(_$w) {
122
116
 
123
117
 
124
118
  function init(_$w) {
125
- const debouncedInput = debounce(()=>handleSearchInput(_$w), 400,thisObjectVar);
119
+ const debouncedInput = debounce(() => handleSearchInput(_$w), 400, thisObjectVar);
126
120
 
127
121
  _$w('#searchInput').onInput(debouncedInput);
128
122
  _$w('#searchInput').maxLength = 40;
129
- _$w('#searchButton').onClick(()=>handleSearch(_$w('#searchInput').value));
123
+ _$w('#searchButton').onClick(() => handleSearch(_$w('#searchInput').value));
130
124
 
131
125
  _$w('#searchInput').onKeyPress((event) => {
132
126
  if (event.key === 'Enter') {
@@ -171,17 +165,17 @@ async function handleSearchInput(_$w) {
171
165
  count = _$w('#jobsDataset').getTotalCount();
172
166
 
173
167
  if (count > 0) {
174
- searchByCityFlag=false;
168
+ searchByCityFlag = false;
175
169
  _$w('#resultsContainer').expand();
176
170
  _$w('#searchMultiStateBox').changeState('results');
177
171
  } else {
178
- filter=await getFilter(searchByCity);
172
+ filter = await getFilter(searchByCity);
179
173
  await _$w('#jobsDataset').setFilter(filter);
180
174
  await _$w('#jobsDataset').refresh();
181
175
  count = _$w('#jobsDataset').getTotalCount();
182
- if(count > 0)
176
+ if( count > 0 )
183
177
  {
184
- searchByCityFlag=true;
178
+ searchByCityFlag = true;
185
179
  _$w('#resultsContainer').expand();
186
180
  _$w('#searchMultiStateBox').changeState('results');
187
181
  }
@@ -3,6 +3,7 @@ const { JOBS_COLLECTION_FIELDS,COLLECTIONS } = require('../backend/collectionCon
3
3
  const { CAREERS_MULTI_BOXES_PAGE_CONSTS,CATEGORY_CUSTOM_FIELD_ID_IN_CMS } = require('../backend/careersMultiBoxesPageIds');
4
4
  const { location } = require("@wix/site-location");
5
5
  const { normalizeString } = require('../backend/utils');
6
+ const { getFilter } = require('../public/filterUtils');
6
7
 
7
8
  function groupValuesByField(values, refKey) {
8
9
  const map = new Map();
@@ -124,21 +125,20 @@ function loadPrimarySearchRepeater(_$w) {
124
125
 
125
126
  }
126
127
 
127
- function bindPrimarySearch(_$w,allvaluesobjects,alljobs) {
128
+ function bindPrimarySearch(_$w, allvaluesobjects) {
128
129
 
129
- const primarySearchDebounced = debounce(async () => {
130
- const query = (_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value || '').toLowerCase().trim();
131
- await primarySearch(_$w, query, alljobs);
132
- }, 400);
130
+ const handleSearchInput = async () => { await primarySearch(_$w) }
133
131
 
134
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onInput(async () => {
132
+ const primarySearchDebounced = debounce(() => handleSearchInput(), 400);
133
+
134
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onInput(async () => {
135
135
  await primarySearchDebounced();
136
136
  });
137
137
 
138
138
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onClick(async () => {
139
139
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).expand();
140
140
  if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()!=='') {
141
- await primarySearch(_$w, _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim(), alljobs);
141
+ await primarySearch(_$w);
142
142
  }
143
143
  else {
144
144
  await loadCategoriesListPrimarySearch(_$w,allvaluesobjects);
@@ -162,26 +162,24 @@ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).onKeyPress(async (even
162
162
  else {
163
163
  let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
164
164
  const baseUrl = await location.baseUrl();
165
- location.to(`${baseUrl}/search?keyword=${encodedKeyWord}`);
165
+ location.to(`${baseUrl}/search?keyword=${encodedKeyWord}`);
166
166
  }
167
167
  }
168
168
  });
169
169
 
170
170
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_BUTTON).onClick(async () => {
171
- console.log("primary search button clicked");
172
- console.log("_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value: ",_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
173
- if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()==='') {
174
- const baseUrl = await location.baseUrl();
175
- location.to(`${baseUrl}/search`);
176
- }
177
- else {
178
- let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
179
- const baseUrl = await location.baseUrl();
180
- location.to(`${baseUrl}/search?keyword=${encodedKeyWord}`);
181
- }
182
- });
183
-
184
-
171
+ console.log("primary search button clicked");
172
+ console.log("_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value: ",_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
173
+ if(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value.trim()==='') {
174
+ const baseUrl = await location.baseUrl();
175
+ location.to(`${baseUrl}/search`);
176
+ }
177
+ else {
178
+ let encodedKeyWord=encodeURIComponent(_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value);
179
+ const baseUrl = await location.baseUrl();
180
+ location.to(`${baseUrl}/search?keyword=${encodedKeyWord}`);
181
+ }
182
+ });
185
183
  }
186
184
 
187
185
  async function loadCategoriesListPrimarySearch(_$w,allvaluesobjects) {
@@ -195,39 +193,47 @@ async function loadCategoriesListPrimarySearch(_$w,allvaluesobjects) {
195
193
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CATEGORY_RESULTS_REPEATER).data = categoryValues;
196
194
  }
197
195
 
198
- async function primarySearch(_$w,query,alljobs) {
199
- if(query.length===0 || query===undefined || query==='') {
196
+ async function primarySearch(_$w) {
197
+ const query = _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value?.toLowerCase().trim() || '';
198
+
199
+ if(query === undefined || query === '') {
200
200
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("categoryResults");
201
201
  return false;
202
202
  }
203
-
204
- let filteredJobs = alljobs.filter(job=>job.title.toLowerCase().includes(query));
205
- if(filteredJobs.length>0) {
206
- console.log('filteredJobs is not empty');
203
+
204
+ const searchByTitle = [{field: 'title', searchTerm: query}];
205
+ const searchByCity = [{field: 'location.fullLocation', searchTerm: query}];
206
+
207
+ let filter = await getFilter(searchByTitle);
208
+
209
+ await _$w('#jobsDataset').setFilter(filter);
210
+ await _$w('#jobsDataset').refresh();
211
+
212
+ let count = _$w('#jobsDataset').getTotalCount();
213
+
214
+ if( count > 0 ) {
215
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).expand();
207
216
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("jobResults");
208
217
  }
209
218
  else {
210
- console.log("searching by location")
211
- filteredJobs = alljobs.filter(job=>job.location.fullLocation.toLowerCase().includes(query));
212
- if (filteredJobs.length>0) {
219
+ filter = await getFilter(searchByCity);
220
+ await _$w('#jobsDataset').setFilter(filter);
221
+ await _$w('#jobsDataset').refresh();
222
+
223
+ count = _$w('#jobsDataset').getTotalCount();
224
+ if (count > 0) {
225
+ _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_CONTAINER).expand();
213
226
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("jobResults");
214
227
  }
215
228
  else{
216
- console.log('filteredJobs is empty');
217
229
  _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("noResults");
218
230
  }
219
231
  }
220
-
221
- console.log("filteredJobs: ",filteredJobs);
222
- _$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = filteredJobs
223
- return filteredJobs.length>0;
224
232
  }
225
233
 
226
234
  async function getValueFromValueId(valueId) {
227
- const result=await getAllRecords(COLLECTIONS.CUSTOM_VALUES);
228
- console.log("result: ",result);
229
- console.log("valueId: ",valueId);
230
- return result.find(value=>value._id===valueId);
235
+ const result = await getAllRecords(COLLECTIONS.CUSTOM_VALUES);
236
+ return result.find(value => value._id === valueId);
231
237
 
232
238
  }
233
239
 
@@ -23,7 +23,7 @@ function getFilter(fieldsToSearch = [], mode = 'or') {
23
23
  return filter;
24
24
  }
25
25
 
26
- function debounce(fn, delay = 400,thisObject) {
26
+ function debounce(fn, delay = 400, thisObject) {
27
27
  let timeout;
28
28
  return function (...args) {
29
29
  clearTimeout(timeout);