Custom error page for everything
This commit is contained in:
parent
a7998e48af
commit
4645d783f2
@ -1,7 +1,8 @@
|
|||||||
import type { NextPage } from "next";
|
import { NextPage, NextPageContext } from "next";
|
||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
import styles from "../styles/Errorpage.module.css";
|
import styles from "../styles/Errorpage.module.css";
|
||||||
|
|
||||||
|
const Error: NextPage<{ statusCode?: number }> = ({ statusCode }) => {
|
||||||
const svg = `
|
const svg = `
|
||||||
<svg viewBox="30 -20 450 280" x="0" y="0">
|
<svg viewBox="30 -20 450 280" x="0" y="0">
|
||||||
<!-- Box -->
|
<!-- Box -->
|
||||||
@ -52,7 +53,7 @@ const svg = `
|
|||||||
<line x1="170" y1="0" x2="120" y2="30" />
|
<line x1="170" y1="0" x2="120" y2="30" />
|
||||||
</g>
|
</g>
|
||||||
<!-- Text -->
|
<!-- Text -->
|
||||||
<text x="120" y="120" style="font-size:4em;font-weight:bold;fill:#000000;transform:rotateX(40deg) rotateY(21deg);">500</text>
|
<text x="120" y="120" style="font-size:4em;font-weight:bold;fill:#000000;transform:rotateX(40deg) rotateY(21deg);">${statusCode ? statusCode : "???"}</text>
|
||||||
<!-- Killeraugen -->
|
<!-- Killeraugen -->
|
||||||
<ellipse cx="275" cy="150" rx="32" ry="20" style="fill:#291e0f;transform:rotateZ(12deg)" />
|
<ellipse cx="275" cy="150" rx="32" ry="20" style="fill:#291e0f;transform:rotateZ(12deg)" />
|
||||||
<ellipse cx="266" cy="153" rx="7" ry="5" style="fill:#4a6b2a;transform:rotateZ(12deg)" />
|
<ellipse cx="266" cy="153" rx="7" ry="5" style="fill:#4a6b2a;transform:rotateZ(12deg)" />
|
||||||
@ -63,17 +64,22 @@ const svg = `
|
|||||||
</svg>
|
</svg>
|
||||||
`;
|
`;
|
||||||
|
|
||||||
const Custom404: NextPage = () => {
|
|
||||||
return <div className={styles.container}>
|
return <div className={styles.container}>
|
||||||
<div id={styles.wrapper}>
|
<div id={styles.wrapper}>
|
||||||
<div id={styles.box} dangerouslySetInnerHTML={{ __html: svg }}>
|
<div id={styles.box} dangerouslySetInnerHTML={{ __html: svg }}>
|
||||||
</div>
|
</div>
|
||||||
<div id={styles.errorText}>
|
<div id={styles.errorText}>
|
||||||
The site you requested could not be found.<br/>
|
{ statusCode === 404 ? "The site you requested could not be found." : "An error occurred." }
|
||||||
|
<br />
|
||||||
<Link href="/"><a>> Back to the main page <</a></Link>
|
<Link href="/"><a>> Back to the main page <</a></Link>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>;
|
</div>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export default Custom404;
|
Error.getInitialProps = ({ res, err }: NextPageContext) => {
|
||||||
|
const statusCode = res ? res.statusCode : err ? err.statusCode : 404;
|
||||||
|
return { statusCode };
|
||||||
|
};
|
||||||
|
|
||||||
|
export default Error;
|
Loading…
Reference in New Issue
Block a user