- Fix mobile menu auto collapse on select
- Add /u/ route for public user profiles (Added private flag to db - to implement later)
- Add /user route for your own profile / edit profile
- Added handling for if API is offline/incorrect
- Add index.html loading spinner while react bundle downloads
- Change HashRouter to BrowserRouter
- Added sources column to scrobbles
This commit is contained in:
Daniel Mason 2021-04-01 23:17:46 +13:00
parent af02bd99cc
commit e570314ac2
Signed by: idanoo
GPG key ID: 387387CDBC02F132
27 changed files with 435 additions and 89 deletions

View file

@ -11,8 +11,10 @@ const HomeBanner = () => {
useEffect(() => {
getStats()
.then(data => {
setBannerData(data);
setIsLoading(false);
if (data.users) {
setBannerData(data);
setIsLoading(false);
}
})
}, [])

View file

@ -45,38 +45,41 @@ const Navigation = () => {
{user ?
<Nav className="navLinkLoginMobile" navbar>
{loggedInMenuItems.map(menuItem =>
<NavItem>
<Link
<NavItem key={menuItem}>
<Link
key={menuItem}
className="navLinkMobile"
style={active === menuItem ? activeStyle : {}}
to={menuItem}
onClick={toggleCollapsed}
>{menuItem}</Link>
</NavItem>
)}
<Link
to="/profile"
style={active === "profile" ? activeStyle : {}}
to="/user"
style={active === "user" ? activeStyle : {}}
className="navLinkMobile"
>Profile</Link>
onClick={toggleCollapsed}
>{user.username}</Link>
{user.admin &&
<Link
to="/admin"
style={active === "admin" ? activeStyle : {}}
className="navLink"
onClick={toggleCollapsed}
>Admin</Link>}
<Link to="/" className="navLink" onClick={Logout}>Logout</Link>
</Nav>
: <Nav className="navLinkLoginMobile" navbar>
{menuItems.map(menuItem =>
<NavItem>
<NavItem key={menuItem}>
<Link
key={menuItem}
className="navLinkMobile"
style={active === menuItem ? activeStyle : {}}
to={menuItem === "Home" ? "/" : menuItem}
>
{menuItem}
onClick={toggleCollapsed}
>{menuItem}
</Link>
</NavItem>
)}
@ -85,6 +88,7 @@ const Navigation = () => {
to="/Login"
style={active === "Login" ? activeStyle : {}}
className="navLinkMobile"
onClick={toggleCollapsed}
>Login</Link>
</NavItem>
<NavItem>
@ -92,6 +96,7 @@ const Navigation = () => {
to="/Register"
className="navLinkMobile"
style={active === "Register" ? activeStyle : {}}
onClick={toggleCollapsed}
>Register</Link>
</NavItem>
</Nav>
@ -132,8 +137,8 @@ const Navigation = () => {
{user ?
<div className="navLinkLogin">
<Link
to="/profile"
style={active === "profile" ? activeStyle : {}}
to="/user"
style={active === "user" ? activeStyle : {}}
className="navLink"
>{user.username}</Link>
{user.admin &&

View file

@ -14,9 +14,9 @@ const ScrobbleTable = (props) => {
</thead>
<tbody>
{
props.data && props.data.items &&
props.data.items.map(function (element) {
return <tr>
props.data &&
props.data.map(function (element) {
return <tr key={element.uuid}>
<td>{element.time}</td>
<td>{element.track}</td>
<td>{element.artist}</td>