Skip to content

Commit 140ea74

Browse files
committed
feature: adds show hidden to url
Co-authored by: CarlosMealha up202005954@edu.fc.up.pt
1 parent 594d135 commit 140ea74

File tree

6 files changed

+28
-12
lines changed

6 files changed

+28
-12
lines changed

src/components/HomePage/SearchArea/AdvancedSearch/AdvancedSearchDesktop.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ const AdvancedSearchDesktop = () => {
5252

5353
const {
5454
advancedOptions, resetAdvancedSearch, FieldsSelectorProps, TechsSelectorProps, JobTypeSelectorProps, JobDurationSwitchProps,
55-
ResetButtonProps, JobDurationSliderText, JobDurationCollapseProps, JobDurationSwitchLabel, JobHiddenSwitchLabel,
55+
ResetButtonProps, JobDurationSliderText, JobDurationCollapseProps, JobDurationSwitchLabel, ShowHiddenSwitchLabel,
5656
JobDurationSliderProps, ShowHiddenSwitchProps,
5757
} = useContext(AdvancedSearchControllerContext);
5858

@@ -115,9 +115,9 @@ const AdvancedSearchDesktop = () => {
115115
</div>
116116
{sessionData?.isAdmin &&
117117
<FormControlLabel
118-
className={classes.jobHiddenSliderToggle}
118+
className={classes.showHiddenToggle}
119119
control={<Switch {...ShowHiddenSwitchProps} />}
120-
label={JobHiddenSwitchLabel}
120+
label={ShowHiddenSwitchLabel}
121121
/>
122122
}
123123
</Collapse>

src/components/HomePage/SearchArea/AdvancedSearch/AdvancedSearchMobile.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ const AdvancedSearchMobile = () => {
7474

7575
const { advancedOptions, toggleAdvancedOptions, searchValue, submitForm,
7676
setSearchValue, FieldsSelectorProps, TechsSelectorProps, resetAdvancedSearch, JobDurationSliderText, ResetButtonProps,
77-
JobTypeSelectorProps, JobDurationSwitchProps, JobDurationCollapseProps, JobDurationSwitchLabel, JobHiddenSwitchLabel,
77+
JobTypeSelectorProps, JobDurationSwitchProps, JobDurationCollapseProps, JobDurationSwitchLabel, ShowHiddenSwitchLabel,
7878
JobDurationSliderProps, onMobileClose, ShowHiddenSwitchProps,
7979
} = useContext(AdvancedSearchControllerContext);
8080

@@ -97,7 +97,6 @@ const AdvancedSearchMobile = () => {
9797
const handleExit = () => {
9898
if (shouldSubmitForm) submitForm();
9999
if (onMobileClose) onMobileClose();
100-
101100
};
102101

103102
const { data,
@@ -161,11 +160,11 @@ const AdvancedSearchMobile = () => {
161160
/>
162161
{sessionData?.isAdmin &&
163162
<FormControlLabel
164-
className={classes.jobHiddenSliderToggle}
163+
className={classes.showHiddenToggle}
165164
control={<Switch {...ShowHiddenSwitchProps} />}
166-
label={JobHiddenSwitchLabel}
165+
label={ShowHiddenSwitchLabel}
167166
/>
168-
}
167+
}
169168
</FormGroup>
170169
</DialogContent>
171170
<DialogActions classes={{ root: classes.mobileAdvancedSearchActions }}>
@@ -205,6 +204,8 @@ AdvancedSearchMobile.propTypes = {
205204
JobDurationSwitchLabel: PropTypes.string,
206205
JobDurationSliderProps: PropTypes.object,
207206
onMobileClose: PropTypes.func,
207+
ShowHiddenSwitchProps: PropTypes.object,
208+
ShowHiddenSwitchLabel: PropTypes.string,
208209
};
209210

210211
export default AdvancedSearchMobile;

src/components/HomePage/SearchArea/AdvancedSearch/useAdvancedSearch.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export default ({
3232

3333
const JobDurationSwitchLabel = "Filter Job Duration";
3434

35-
const JobHiddenSwitchLabel = "Show Hidden Offers";
35+
const ShowHiddenSwitchLabel = "Show Hidden Offers";
3636

3737
const [advancedOptions, toggleAdvancedOptions] = useToggle(enableAdvancedSearchDefault);
3838

@@ -111,10 +111,10 @@ export default ({
111111
JobDurationSwitchProps,
112112
JobDurationCollapseProps,
113113
JobDurationSwitchLabel,
114-
JobHiddenSwitchLabel,
115114
JobDurationSliderProps,
116115
JobDurationSliderText,
117116
ResetButtonProps,
118117
ShowHiddenSwitchProps,
118+
ShowHiddenSwitchLabel,
119119
};
120120
};

src/components/HomePage/SearchArea/SearchArea.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,15 @@ export const AdvancedSearchController = ({
5151
setTechs: actualSetTechs,
5252
resetAdvancedSearchFields: actualResetAdvancedSearchFields,
5353
setSearchValue: setUrlSearchValue,
54+
setShowHidden: actualSetShowHidden,
5455
} = useSearchParams({
5556
setJobDuration,
5657
setShowJobDurationSlider,
5758
setJobType,
5859
setFields,
5960
setTechs,
6061
resetAdvancedSearchFields,
62+
setShowHidden,
6163
});
6264

6365
const advancedSearchProps = useAdvancedSearch({
@@ -76,7 +78,7 @@ export const AdvancedSearchController = ({
7678
resetAdvancedSearchFields: actualResetAdvancedSearchFields,
7779
hideOffer,
7880
showHidden,
79-
setShowHidden,
81+
setShowHidden: actualSetShowHidden,
8082
});
8183

8284
const { search: searchOffers } = useOffersSearcher({
@@ -109,6 +111,8 @@ export const AdvancedSearchController = ({
109111
setFields(ensureArray(queryParams.fields ?? []));
110112
setTechs(ensureArray(queryParams.technologies ?? []));
111113

114+
setShowHidden(queryParams.showHidden === "false");
115+
112116
setSearchValue(queryParams.searchValue);
113117
// eslint-disable-next-line react-hooks/exhaustive-deps
114118
}, []);

src/components/HomePage/SearchArea/searchAreaStyle.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ export default makeStyles((theme) => ({
9292
gridRowStart: 4,
9393
},
9494
},
95-
jobHiddenSliderToggle: {
95+
showHiddenToggle: {
9696
gridRowStart: 4,
9797
gridColumnStart: 2,
9898
},

src/components/HomePage/SearchArea/useUrlSearchParams.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ export default ({
2020
setTechs,
2121
setSearchValue,
2222
resetAdvancedSearchFields,
23+
setShowHidden,
2324
} = {}) => {
2425

2526
const location = useLocation();
@@ -85,6 +86,15 @@ export default ({
8586

8687
}, [changeURLFilters, location, queryParams, setShowJobDurationSlider]);
8788

89+
const actualSetShowHidden = useCallback((showHiddenToggle) => {
90+
91+
changeURLFilters(location, queryParams, { showHidden: showHiddenToggle });
92+
93+
if (setShowHidden)
94+
setShowHidden(showHiddenToggle);
95+
96+
}, [changeURLFilters, location, queryParams, setShowHidden]);
97+
8898
const actualSetFields = useCallback((fields) => {
8999

90100
const sanitizedFields = ensureArray(fields);
@@ -138,5 +148,6 @@ export default ({
138148
setTechs: actualSetTechs,
139149
setSearchValue: actualSetSearchValue,
140150
resetAdvancedSearchFields: actualResetAdvancedSearchFields,
151+
setShowHidden: actualSetShowHidden,
141152
};
142153
};

0 commit comments

Comments
 (0)