Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | import { useRouter } from 'next/router'
import { useState, useEffect } from 'react'
import en from '../../locales/belt-assessment/belt-results/en'
import fr from '../../locales/belt-assessment/belt-results/fr'
import GroupedBeltResults from '../../components/GroupedBeltResults'
import DottedLine from '../../components/DottedLine'
export default function BeltResults({ locale }) {
const t = locale === 'en' ? en : fr
const router = useRouter()
const [state, setState] = useState({})
useEffect(() => {
try {
setState(JSON.parse(router.query.state))
} catch (e) {
console.error(e)
}
}, [])
const groups = {
'Agile': [
'continuous-planning',
'continuous-collaboration',
'continuous-improvement',
],
'Devops and Agile': ['continuous-quality'],
'DevOps': [
'continuous-integration',
'continuous-delivery',
'continuous-operations',
'continuous-security',
],
'Design Thinking': ['continuous-user-feedback'],
}
return (
<div className="flex flex-col gap-5 max-w-2xl mx-auto">
<h1 className="text-2xl font-bold text-periwinkle text-center">
{t.title}
</h1>
<DottedLine />
{Object.keys(groups).map((k) => (
<GroupedBeltResults
key={k}
t={t}
topic={k}
keys={groups[k]}
state={state}
/>
))}
<div className="self-end flex gap-4">
<button
onClick={() => router.push('/belt-assessment/belt-system')}
className="w-24 rounded bg-gray-600 text-white px-2 hover:bg-gray-800"
>
{t.back}
</button>
<button
onClick={() => {
sessionStorage.removeItem('belt-results')
router.push('/belt-assessment/belt-system')
}}
className="w-24 rounded bg-gray-600 text-white px-2 hover:bg-gray-800"
>
{t.reassess}
</button>
</div>
</div>
)
}
export async function getStaticProps({ locale }) {
/* istanbul ignore next */
const langToggleLink =
locale === 'en'
? '/fr/belt-assessment/belt-results'
: '/belt-assessment/belt-results'
/* Place-holder Meta Data Props */
const meta = {
data_en: {
title: 'Digital Dojo - Belt Results',
desc: 'English',
author: '',
keywords: '',
},
data_fr: {
title: 'Dojo Numérique - Résultats de ceinture',
desc: 'Français',
author: '',
keywords: '',
},
}
return {
props: { locale, langToggleLink, meta },
}
}
|