Prevent errors from index and paroles pages

This commit is contained in:
Cédric FAMIBELLE-PRONZOLA
2022-05-14 03:37:04 +04:00
parent c1e8960290
commit 44e0329c64
5 changed files with 130 additions and 35 deletions
+33 -7
View File
@@ -8,7 +8,14 @@ import RezoDialog from '../components/rezo/rezo-dialog'
import DenyeTeks from '../components/teks/denye-teks'
import {jwennDenyeTeks} from '../lib/oki-api'
export default function Home({teks}) {
import Custom500 from './500'
export default function Home({errorCode, errorMessage, teks}) {
if (errorCode) {
console.log('⚠️ error', errorMessage)
return <Custom500 statusCode={errorCode} />
}
return (
<HeadLayout tab={0}>
<Box sx={{display: 'flex', flexDirection: 'column', minHeight: '100vh'}}>
@@ -28,11 +35,11 @@ export default function Home({teks}) {
<RezoDialog />
</Container>
</Box>
<Container>
<Container sx={{flexGrow: 100}}>
<Divider variant='middle' sx={{marginBottom: 1}}>
<Chip sx={{fontWeight: 'bold'}} color='primary' icon={<ArrowCircleDownIcon />} label='Derniers textes publiés ' variant='outlined' />
</Divider>
<DenyeTeks {...teks} />
<DenyeTeks denyeTeks={teks} />
</Container>
<Footer />
</Box>
@@ -41,15 +48,34 @@ export default function Home({teks}) {
}
export async function getServerSideProps() {
const denyeTeks = await jwennDenyeTeks()
let denyeTeks
let errorCode
let errorMessage
try {
denyeTeks = await jwennDenyeTeks()
} catch (error) {
errorMessage = error.message
errorCode = true
}
return {
props: {
teks: denyeTeks
errorCode: errorCode || null,
errorMessage: errorMessage || null,
teks: denyeTeks || null
}
}
}
Home.propTypes = {
teks: PropTypes.array.isRequired
Home.defaultProps = {
errorCode: null,
errorMessage: null,
teks: null
}
Home.propTypes = {
errorCode: PropTypes.bool,
errorMessage: PropTypes.string,
teks: PropTypes.array
}