Add nonce parameter to QuizPage and update QuizRunner key
This commit is contained in:
@@ -5,9 +5,10 @@ import QuizRunner from '../components/QuizRunner';
|
||||
export default function QuizPage() {
|
||||
const [params] = useSearchParams();
|
||||
|
||||
const { mode, entryId } = useMemo(() => {
|
||||
const { mode, entryId, nonce } = useMemo(() => {
|
||||
const modeParam = params.get('mode');
|
||||
const idParam = params.get('id');
|
||||
const nonceParam = params.get('nonce') || '';
|
||||
let decodedId: string | undefined;
|
||||
if (idParam) {
|
||||
try {
|
||||
@@ -16,11 +17,13 @@ export default function QuizPage() {
|
||||
decodedId = idParam;
|
||||
}
|
||||
}
|
||||
return { mode: modeParam, entryId: decodedId };
|
||||
return { mode: modeParam, entryId: decodedId, nonce: nonceParam };
|
||||
}, [params]);
|
||||
|
||||
const defaultMode = mode === 'entry' ? 'single' : 'all';
|
||||
const autoStart = true;
|
||||
|
||||
return <QuizRunner defaultMode={defaultMode} defaultEntryId={entryId} autoStart={autoStart} />;
|
||||
const runnerKey = `${defaultMode}-${entryId || 'all'}-${nonce}`;
|
||||
|
||||
return <QuizRunner key={runnerKey} defaultMode={defaultMode} defaultEntryId={entryId} autoStart={autoStart} />;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user