Skip to content

Commit 992ea92

Browse files
CG-4432 Sorting doesn't work when logged in
- Modify header component - Made some changes to SearchPage
1 parent 3f14bd7 commit 992ea92

File tree

3 files changed

+28
-25
lines changed

3 files changed

+28
-25
lines changed

samples/musicfestival-frontend-react/src/components/Header.tsx

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useState } from 'react';
1+
import { useEffect, useState } from 'react';
22
import authService from '../authService';
33
import LoginButton from './LoginButton';
44
import LogoutButton from './LogoutButton';
@@ -7,12 +7,14 @@ function Header() {
77
const [isLoggedIn, setIsLoggedIn] = useState(false);
88
const [username, setUsername] = useState("");
99

10-
authService.getUser().then((user) => {
11-
if (user && !user.expired) {
12-
setIsLoggedIn(true);
13-
setUsername(user.profile.name || "");
14-
}
15-
});
10+
useEffect(() => {
11+
authService.getUser().then((user) => {
12+
if (user && !user.expired) {
13+
setIsLoggedIn(true);
14+
setUsername(user.profile.name || "");
15+
}
16+
});
17+
}, [])
1618

1719
return (
1820
<nav className="Page-container LoginBar">

samples/musicfestival-frontend-react/src/helpers/queryCacheHelper.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ const generateGQLSearchQueryVars = (token: string, pathname: string, searchParam
2121
if (isEditOrPreviewMode() && token) {
2222
variables = { locales: locales as Locales, searchParam, sortOption };
2323
}
24-
24+
2525
return variables
2626
}
2727

samples/musicfestival-frontend-react/src/pages/SearchPage.tsx

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useState } from "react";
1+
import { memo, useCallback, useEffect, useState } from "react";
22
import { useSearchParams } from "react-router-dom";
33
import Footer from "../components/Footer";
44
import Header from "../components/Header";
@@ -18,7 +18,7 @@ const hmacKeyUrl = process.env.REACT_APP_CG_PROXY_URL as string
1818

1919
function SearchPage() {
2020
console.log("Start")
21-
const queryClient = useQueryClient();
21+
const queryClient = useQueryClient()
2222
const ARTIST = "Artist"
2323
const OTHERCONTENT = "OtherContent"
2424

@@ -48,7 +48,6 @@ function SearchPage() {
4848
{value: "Artists", key: "Artist"},
4949
{value: "Other Content", key: "OtherContent"}
5050
]
51-
5251

5352
let headers = {}
5453
let url = singleKeyUrl
@@ -60,13 +59,15 @@ function SearchPage() {
6059
updateSearchQueryCache(queryClient, artistData, variables, message)
6160
}
6261
}
63-
});
64-
65-
authService.getAccessToken().then((_token) => {
66-
_token && setToken(_token)
67-
modeEdit && !_token && !artistData && authService.login()
6862
})
6963

64+
useEffect(() => {
65+
authService.getAccessToken().then((_token) => {
66+
_token && setToken(_token)
67+
modeEdit && !_token && !artistData && authService.login()
68+
})
69+
}, [])
70+
7071
if (modeEdit) {
7172
if (token) {
7273
headers = { 'Authorization': 'Bearer ' + token }
@@ -83,32 +84,32 @@ function SearchPage() {
8384
const currentItems = artistData?.ArtistDetailsPage?.items?.slice(itemOffset, endOffset)
8485
const pageCount = Math.ceil(resultNumber / itemsPerPage)
8586

86-
const { data : otherContentSearchQueryData } = useOtherContentSearchQuery({ endpoint: singleKeyUrl }, variables, { staleTime: 2000, enabled: !modeEdit || !!token })
87+
const { data : otherContentSearchQueryData } = useOtherContentSearchQuery({ endpoint: url, fetchParams: { headers: headers } }, variables, { staleTime: 2000, enabled: !modeEdit || !!token })
8788
otherData = otherContentSearchQueryData
8889
otherResultNumber = otherData?.Content?.items?.length ?? 0
8990
const currentOtherItems = otherData?.Content?.items?.slice(otherItemOffset, endOffsetOther)
9091
const pageOtherCount = Math.ceil(otherResultNumber / itemsPerPage)
9192

92-
const { data : artistAutocompleteData } = useArtistAutocompleteQuery({ endpoint: singleKeyUrl }, variables, { staleTime: 2000, enabled: !modeEdit || !!token })
93+
const { data : artistAutocompleteData } = useArtistAutocompleteQuery({ endpoint: url, fetchParams: { headers: headers } }, variables, { staleTime: 2000, enabled: !modeEdit || !!token })
9394
autocompleteData = artistAutocompleteData
9495

9596
const handlePageClick = (event: any) => {
9697
const newOffset = (event.selected * itemsPerPage) % resultNumber
9798
setItemOffset(newOffset)
98-
};
99+
}
99100

100101
const handleItemsChange = (event: any) => {
101102
setItemsPerPage(event.target.value)
102-
};
103+
}
103104

104105
const handleOtherPageClick = (event: any) => {
105106
const newOffset = (event.selected * itemsPerPage) % otherResultNumber
106107
setOtherItemOffset(newOffset)
107-
};
108+
}
108109

109110
const handleOtherItemsChange = (event: any) => {
110111
setOtherItemsPerPage(event.target.value)
111-
};
112+
}
112113

113114
const handleChange = (event: any) => {
114115
setOrderBy(event.target.value)
@@ -120,8 +121,8 @@ function SearchPage() {
120121

121122
const handleFilterByChange = (event : any) => {
122123
setFilterBy(event.target.value)
123-
setOtherItemsPerPage(event.target.value)
124-
};
124+
//setOtherItemsPerPage(event.target.value)
125+
}
125126

126127

127128
return (
@@ -364,4 +365,4 @@ function SearchPage() {
364365
);
365366
}
366367

367-
export default SearchPage;
368+
export default memo(SearchPage);

0 commit comments

Comments
 (0)