import React, { useEffect, useState } from 'react';
import "./home.css"
import News from '../news';
import Record from '../record';
export default function Homepage({ token }) {
const [profile, setProfile] = useState(null);
useEffect(() => {
if (!token) {
return;
}
async function home() {
const profileResponse = await fetch(`https://lp.ardapektezol.com/api/v1/profile`, {
headers: {
Authorization: token
}
})
const profileData = await profileResponse.json();
setProfile(profileData);
const gamesResponse = await fetch("https://lp.ardapektezol.com/api/v1/games", {
headers: {
Authorization: token
}
});
const gamesData = await gamesResponse.json();
const recommendedMapImg = document.querySelector("#recommendedMapImg");
recommendedMapImg.style.backgroundImage = `url(${gamesData.data[0].image})`
const column1 = document.querySelector("#column1");
const column2 = document.querySelector("#column2");
column2.style.height = column1.clientHeight + "px";
const panels = document.querySelectorAll(".homepage-panel");
panels.forEach(e => {
// this is cuz react is silly
if (e.innerHTML.includes('
')) {
return
}
const title = e.getAttribute("title");
const titleDiv = document.createElement("div");
const titleSpan = document.createElement("span");
titleDiv.classList.add("homepage-panel-title-div")
titleSpan.innerText = title
titleDiv.appendChild(titleSpan)
e.insertBefore(titleDiv, e.firstChild)
});
}
try {
home();
} catch (e) {
console.log("error while setting up home page:", e);
}
}, [token]);
const newsList = [
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
{
"title": "Portal Saved on Container Ride",
"short_description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus vehicula facilisis quam, non ultrices nisl aliquam at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas."
},
]
return (
Home
{profile ?
Welcome back,
Wolfboy248
: null}
{/* Column 1 */}
{profile ?
Overall rank
{profile.rankings.overall.rank > 0 ? "#" + profile.rankings.overall.rank : "No rank"}
Singleplayer
{profile.rankings.singleplayer.rank > 0 ? "#" + profile.rankings.singleplayer.rank : "No rank"} {profile.rankings.singleplayer.rank > 0 ? "(" + profile.rankings.singleplayer.completion_count + "/" + profile.rankings.singleplayer.completion_total + ")" : ""}
Cooperative rank
{profile.rankings.cooperative.rank > 0 ? "#" + profile.rankings.cooperative.rank : "No rank"} {profile.rankings.cooperative.rank > 0 ? "(" + profile.rankings.cooperative.completion_count + "/" + profile.rankings.cooperative.completion_total + ")" : ""}
: null}
{profile ?
Container Ride
Your Record: 4 portals
World Record: 2 portals
: null}
Place
Runner
Portals
Time
Date
{/* Column 2 */}
{newsList.map((newsList, index) => (
))}
)
}