Files
pawol.nu/pages/awtis.js
T

52 lines
1.5 KiB
JavaScript
Raw Normal View History

2020-12-11 01:52:31 +01:00
import PropTypes from 'prop-types'
2022-01-19 07:06:26 +04:00
import {Container, Grid} from '@mui/material'
2020-12-11 01:52:31 +01:00
import {jwennAwtisKantite, jwennAwtisPajinasyon} from '../lib/oki-api'
import AwtisKat from '../components/awtis/awtis-kat'
import Pajinasyon from '../components/awtis/pajinasyon'
2020-12-15 23:46:05 +01:00
import HeadLayout from '../components/head-layout'
2020-12-11 01:52:31 +01:00
2020-12-12 21:50:16 +01:00
const AWTIS_POU_CHAK_PAJ = process.env.NEXT_PUBLIC_AWTIS_POU_CHAK_PAJ || 6
2020-12-11 01:52:31 +01:00
export default function Awtis({pajTotal, awtisPouChakPaj, paj}) {
return (
2022-01-28 18:02:25 +04:00
<HeadLayout title='Awtis | Liste des artistes' tab={2} slug='awtis'>
2020-12-11 01:52:31 +01:00
<Pajinasyon pajTotal={pajTotal} paj={paj} />
<Container>
2022-01-20 00:26:22 +04:00
<Grid container spacing={{xs: 2, md: 3}}>
2020-12-11 01:52:31 +01:00
{awtisPouChakPaj.map(anAwtis => <AwtisKat key={anAwtis._id} anAwtis={anAwtis} />)}
</Grid>
</Container>
2020-12-15 23:46:05 +01:00
</HeadLayout>
2020-12-11 01:52:31 +01:00
)
}
Awtis.propTypes = {
pajTotal: PropTypes.number.isRequired,
awtisPouChakPaj: PropTypes.array.isRequired,
paj: PropTypes.number.isRequired
}
export async function getServerSideProps({query}) {
const {paj} = query
2020-12-14 13:23:51 +01:00
const pajParsed = Array.isArray(paj) ? Number.parseInt(paj[1], 10) : Number.parseInt(paj, 10)
2020-12-11 01:52:31 +01:00
const awtisPouChakPaj = await jwennAwtisPajinasyon(pajParsed)
const awtisCountRequest = await jwennAwtisKantite()
const awtisCount = Number.parseInt(awtisCountRequest, 10)
2020-12-12 21:50:16 +01:00
const pajTotal = Math.ceil(awtisCount / AWTIS_POU_CHAK_PAJ)
2020-12-11 01:52:31 +01:00
if (pajParsed > pajTotal) {
throw new Error('Pa twouvé paj-la')
}
return {
props: {
pajTotal,
awtisPouChakPaj,
paj: pajParsed
}
}
}