diff --git a/src/pages/recruitment-solutions/case-studies/[url_slug]/__components/CaseStudyContent/index.jsx b/src/pages/recruitment-solutions/case-studies/[url_slug]/__components/CaseStudyContent/index.jsx new file mode 100644 index 0000000..e522610 --- /dev/null +++ b/src/pages/recruitment-solutions/case-studies/[url_slug]/__components/CaseStudyContent/index.jsx @@ -0,0 +1,172 @@ +import PropTypes from "prop-types"; +import clsx from "classnames"; +import { Col, Container, Row } from "react-bootstrap"; +import { BlockQuoteCard, DynamicText } from "@/ui"; + +export default function CaseStudyContent({ + className, + client, + contact, + business_type, + staffing_type, + geographical_footprint, + number_of_employees, + turnover, + company_background, + key_features, + challenge, + solution, + journey, + result, + testimonial, + url_slug, +}) { + return ( +
+
+ + + + + + + + Company Background + +
+ + + + +
+
+ + + + + The Challenge + +
+ + + + +
+
+ + + + + + The Solution + +
+ + + +
+
+ + + + + The Journey + +
+ + + + +
+
+ + + + + The Result + +
+ + + +
+
+ + + +
+
+ ); +} + +CaseStudyContent.defaultProps = { + className: "py-5", +}; + +CaseStudyContent.propTypes = { + className: PropTypes.string, +}; diff --git a/src/pages/recruitment-solutions/case-studies/[url_slug]/__components/index.jsx b/src/pages/recruitment-solutions/case-studies/[url_slug]/__components/index.jsx new file mode 100644 index 0000000..0ddb33a --- /dev/null +++ b/src/pages/recruitment-solutions/case-studies/[url_slug]/__components/index.jsx @@ -0,0 +1,3 @@ +import { lazy } from "react"; + +export const CaseStudyContent = lazy(() => import("./CaseStudyContent")); diff --git a/src/pages/recruitment-solutions/case-studies/[url_slug]/index.page.js b/src/pages/recruitment-solutions/case-studies/[url_slug]/index.page.js index ed70eb7..b4e3fec 100644 --- a/src/pages/recruitment-solutions/case-studies/[url_slug]/index.page.js +++ b/src/pages/recruitment-solutions/case-studies/[url_slug]/index.page.js @@ -1,11 +1,12 @@ import { Content } from "@/ui"; import { getRoute } from "@/getters/getRoute"; import { casestudyHelper } from "@/helpers/casestudyHelper"; +import * as additionalComponents from "./__components"; export default function CaseStudyPage({ content }) { return ( <> - + ); } @@ -34,6 +35,7 @@ export async function getStaticProps({ params: { url_slug } }) { path: `page.caseStudy.${url_slug}.component.Header.title`, placeholder: casestudy.title, }, + img: casestudy.cover_image ?? null, back: { path: "page.caseStudy.component.Header.back", placeholder: `Back to Case Studies`, @@ -41,6 +43,7 @@ export async function getStaticProps({ params: { url_slug } }) { }, }, }, + { component: "CaseStudyContent", props: { ...casestudy } }, ], }, }; diff --git a/src/ui/BlockQuoteCard/index.jsx b/src/ui/BlockQuoteCard/index.jsx index fff3a11..e29f56e 100644 --- a/src/ui/BlockQuoteCard/index.jsx +++ b/src/ui/BlockQuoteCard/index.jsx @@ -6,11 +6,13 @@ export default function BlockQuoteCard({ className, quote, author }) { return (
- - -
- -
+ {author && ( + + +
+ +
+ )} @@ -21,10 +23,7 @@ export default function BlockQuoteCard({ className, quote, author }) { BlockQuoteCard.defaultProps = { className: "", quote: "", - author: { - name: "", - position: "", - }, + author: null, }; BlockQuoteCard.propTypes = {