Changed/added donate page

This commit is contained in:
mrfry 2020-11-03 12:37:11 +01:00
parent e21f281dc5
commit 9aa0c111ce
4 changed files with 89 additions and 18 deletions

View file

@ -28,19 +28,22 @@ export default function Layout (props) {
return ( return (
<div> <div>
<div className='sidebar'> <div className="sidebar">
<div className='headercontainer'> <div className="headercontainer">
<span onClick={() => { setSidebarOpen(!sidebarOpen) }} className='menuicon'> <span
onClick={() => {
setSidebarOpen(!sidebarOpen)
}}
className="menuicon"
>
<div /> <div />
<div /> <div />
<div /> <div />
</span> </span>
<div className='sidebarheader' > <div className="sidebarheader">Frylabs</div>
Frylabs
</div> </div>
</div> {sidebarOpen ? (
{sidebarOpen <div id="sideBarLinks">
? <div id='sideBarLinks'>
{Object.keys(tabs).map((key) => { {Object.keys(tabs).map((key) => {
const item = tabs[key] const item = tabs[key]
return ( return (
@ -49,19 +52,16 @@ export default function Layout (props) {
onClick={closeSideBar} onClick={closeSideBar}
className={href.includes(key) ? 'active' : undefined} className={href.includes(key) ? 'active' : undefined}
id={item.id || undefined} id={item.id || undefined}
>{item.text}</a> >
{item.text}
</a>
</Link> </Link>
) )
})} })}
<a href='/donate'>
Donate
</a>
</div> </div>
: null} ) : null}
</div>
<div className='content'>
{props.children}
</div> </div>
<div className="content">{props.children}</div>
</div> </div>
) )
} }

View file

@ -35,5 +35,9 @@
"href": "/feedback", "href": "/feedback",
"text": "Feedback", "text": "Feedback",
"id": "feedback" "id": "feedback"
},
"donate": {
"href": "/donate",
"text": "Donate"
} }
} }

43
src/pages/donate.js Normal file
View file

@ -0,0 +1,43 @@
import React, { useState, useEffect } from 'react'
import LoadingIndicator from '../components/LoadingIndicator.js'
import constants from '../constants.json'
import styles from './donate.module.css'
export default function Donate(props) {
const [btcAddress, setBtcAddress] = useState()
useEffect(() => {
console.info('Fetching news.json')
fetch(`${constants.apiUrl}btc/btcaddress`, {
credentials: 'include',
})
.then((resp) => {
return resp.text()
})
.then((data) => {
setBtcAddress(data)
})
}, [])
if (!btcAddress) {
return <LoadingIndicator />
} else {
return (
<div className={styles.container}>
<div className={styles.text}>
Privacy okokból csak bitcoint lehet adományozni. Ezen az oldalon
található a bitcoin cím, és a hozzá tartozó QR kód.
</div>
<div className={styles.address}>{btcAddress}</div>
<div>
<img
src={`${constants.apiUrl}btc/btcaddress.png`}
className={styles.qr}
/>
</div>
</div>
)
}
}

View file

@ -0,0 +1,24 @@
.address {
margin: 20px 0px;
font-size: 20px;
color: white;
word-wrap: break-word;
overflow-wrap: anywhere;
text-align: center;
}
.text {
margin: 5px 0px;
text-align: center;
}
.qr {
max-width: 100%;
width: 400px;
}
.container {
display: flex;
flex-direction: column;
align-items: center;
}