diff --git a/src/app/perfil/[id]/page.js b/src/app/perfil/[id]/page.js index 34fa4cf6dc7320cb631db4b507f943d793abd102..431cb8d6a3e60ae5b2062f55ad00f986ecc779e0 100644 --- a/src/app/perfil/[id]/page.js +++ b/src/app/perfil/[id]/page.js @@ -27,6 +27,43 @@ export default function Perfil({ params }) { * Atribui o id do usuário logado à idLogin para futuras verificações */ useEffect(() => { + + /* Pega as estatisticas do usuario + Mostra na barra de stats mesmo deslogado + */ + const fetchAchievements = async (id) => { + await mecredApi + .get(`/unlocked_achievements/user/${id}?limit=1000`) + .then(({ data }) => { + setAchievements(data); + }) + .catch(() => setError(true)) + } + + fetchAchievements(params.id); + + const fetchProgresses = async (id) => { + await mecredApi + .get(`/user_progresses/${id}`) + .then(({ data }) => { + setProgresses(data); + }) + .catch(() => setError(true)) + } + + fetchProgresses(params.id) + + const fetchItems = async (id) => { + await mecredApi + .get(`/users/${id}/items/?item_type=badge&limit=1000`) + .then(({ data }) => { + setItems(data); + }) + .catch(() => setError(true)) + } + + fetchItems(params.id) + if (isLoggedIn()) { let data = getStoredValue("user_data") let dataJson = JSON.parse(data); @@ -49,70 +86,12 @@ export default function Perfil({ params }) { } fetchUser(params.id) - setIdLogin(dataJson["id"]) - const fetchAchievements = async (id) => { - await mecredApi - .get(`/unlocked_achievements/user/${id}?limit=1000`, { - headers: { - 'access-token': token, - 'token-type': 'Bearer', - 'client': client, - 'uid': uid, - 'Expires': 0 - } - }) - .then(({ data }) => { - setAchievements(data); - }) - .catch(() => setError(true)) - } - - fetchAchievements(params.id); - - const fetchProgresses = async (id) => { - await mecredApi - .get(`/user_progresses/${id}`, { - headers: { - 'access-token': token, - 'token-type': 'Bearer', - 'client': client, - 'uid': uid, - 'Expires': 0 - } - }) - .then(({ data }) => { - setProgresses(data); - }) - .catch(() => setError(true)) - } - - fetchProgresses(params.id) - - const fetchItems = async (id) => { - await mecredApi - .get(`/users/${id}/items/?item_type=badge&limit=1000`, { - headers: { - 'access-token': token, - 'token-type': 'Bearer', - 'client': client, - 'uid': uid, - 'Expires': 0 - } - }) - .then(({ data }) => { - setItems(data); - }) - .catch(() => setError(true)) - } - - fetchItems(params.id) - const fetchStore = async () => { await mecredApi - .get(`/items?filter={"state" : "active"}&item_type=badge&unlock_rule=purchase&limit=1000`) - .then (({data}) => { + .get(`/items?filter={"state" : "active"}&item_type=badge&unlock_rule=purchase&limit=1000`) + .then(({ data }) => { setStore(data) }) .catch(() => setError(true)) @@ -139,19 +118,20 @@ export default function Perfil({ params }) { <> <Overlay type="twoColumns"> {error ? <ErrorComponent name="Usuário" /> : - (profileData && - <UserCard - profileData={profileData} - idLogin={idLogin} - achievements={achievements} - progresses={progresses} - setItems={setItems} - items={items} - store={store} - tab={optTab} - /> - )} + (profileData && + <UserCard + profileData={profileData} + idLogin={idLogin} + achievements={achievements} + progresses={progresses} + setItems={setItems} + items={items} + store={store} + tab={optTab} + /> + )} </Overlay> </> ); } +