Commit bdfdb72a by sujata

chnages

1 parent 570d3af3
# NEXT_PUBLIC_BACKEND_API_URL = http://localhost:1337 # NEXT_PUBLIC_BACKEND_API_URL = http://localhost:1337
NEXT_PUBLIC_BACKEND_API_URL = https://api.advithconsulting.in # NEXT_PUBLIC_BACKEND_API_URL = https://api.advithconsulting.in
NEXT_PUBLIC_BACKEND_API_URL = https://api.advith.io
import Image from "next/image";
import Link from "next/link";
import React from "react";
import { Col, Container, Row } from "react-bootstrap";
const CTABanner = ({cta}) => {
console.log(cta,"details")
return (
<>
<div className="free-quote-area ptb-50">
<div className="free-quote-inner">
<section className="section-title-download d-flex">
<Container>
<Row>
<Col md={6}>
<div className="download-content">
<span className="sub-title">{cta?.Subtitle}</span>
<h2>{cta?.Title}</h2>
<p>
{cta?.Description}
</p>
</div>
</Col>
<Col md={6} className="align-content-center text-center">
<div className="btn-1">
<Link href={cta?.CTA?.URL} className="default-btn-three">
{cta?.CTA?.text}
<i className="ri-arrow-right-line"></i>
</Link>
</div>
</Col>
</Row>
</Container>
</section>
<div className="shape6">
<Image
width={200}
height={250}
src="/images/shape/shape8.png"
className="shape11"
alt="image"
/>
</div>
</div>
</div>
</>
);
};
export default CTABanner;
import React from "react"; import React from "react";
import Link from "next/link";
import { Container } from "react-bootstrap"; import { Container } from "react-bootstrap";
import Heading from "./Heading"; import Heading from "./Heading";
import Image from "next/image"; import Image from "next/image";
...@@ -78,8 +77,8 @@ const FunctionalAreas = ({functionarea}) => { ...@@ -78,8 +77,8 @@ const FunctionalAreas = ({functionarea}) => {
</p> </p>
<div className="row align-items-center"> <div className="row align-items-center">
{functionarea.FunctionalAreas && {functionarea &&
functionarea.FunctionalAreas.map((service) => ( functionarea?.map((service) => (
<div className="col-lg-4 col-sm-6 col-md-6" key={service.id}> <div className="col-lg-4 col-sm-6 col-md-6" key={service.id}>
<div className="single-services-item fuctional-areas border align-items-left"> <div className="single-services-item fuctional-areas border align-items-left">
<Image <Image
......
import React from "react";
import Link from "next/link";
import { Swiper, SwiperSlide } from "swiper/react";
import { Pagination, Autoplay, Navigation } from "swiper/modules";
import Image from "next/image";
import { motion } from "framer-motion";
import { slideFromLeft } from "@/components/reuseables/variants";
import Heading from "@/components/reuseables/Heading";
import { Container } from "react-bootstrap";
import SwiperNav from "@/components/reuseables/SwiperNav";
import { cleanImage } from "@/layout/imageHandling";
const WhatWeDo = ({ service ,serviceheading }) => {
console.log(serviceheading, "serviceData");
return (
<>
<div className="services-area pt-100 pt-md-100 pb-5">
<Container>
<div className="section-title">
<span className="sub-title">Client Servicing</span>
<Heading el="h2" heading={serviceheading?.heading || "What we do?"} />
</div>
<p className="text-center">
{serviceheading?.Description || "At Advith Consulting, we harness our wealth of Knowledge and expertise, leveraging our People to deliver exceptional Client satisfaction."}
</p>
<div className="position-relative px-md-4 mt-md-5 mt-2">
<Swiper
spaceBetween={30}
centeredSlides={true}
navigation={{
nextEl: ".custom-swiper-button-next",
prevEl: ".custom-swiper-button-prev",
}}
pagination={{
clickable: true,
}}
breakpoints={{
0: {
slidesPerView: 1,
},
768: {
slidesPerView: 2,
},
1200: {
slidesPerView: 3,
},
}}
autoplay={{
delay: 8000,
// disableOnInteraction: true,
// pauseOnMouseEnter: true,
}}
loop={true}
modules={[Autoplay, Navigation]}
className="services-slides position-relative"
>
{service &&
service.map((service, index) => (
<SwiperSlide className="single-services-box" key={index}>
<motion.div
variants={slideFromLeft(0.5)}
initial={"hidden"}
whileInView={"show"}
viewport={{ once: false, amount: 0.4 }}
>
<div className="image">
<Link href={service?.CTA?.URL ? service?.CTA?.URL : "#"}>
<Image
src={cleanImage(service?.Image?.url)}
fill
alt={service?.Image?.alternativeText ? service?.Image?.alternativeText : "image"}
className="img-fluid image"
/>
</Link>
</div>
<div className="content">
<h3>
<Link href={service?.CTA?.URL ? service?.CTA?.URL : "#"}>{service?.Title}</Link>
</h3>
<p>{service?.Description}</p>
<Link href={service?.CTA?.URL ? service?.CTA?.URL : "#"} className="default-btn">
{service?.CTA?.text }
<i className="ri-arrow-right-line"></i>
</Link>
</div>
</motion.div>
</SwiperSlide>
))}
<Swiper pagination={{ clickable: true }} />
</Swiper>
<div className="cust_nav swiper-nav text-center mt-md-4 mt-2">
<SwiperNav />
</div>
</div>
</Container>
</div>
</>
);
};
export default WhatWeDo;
import React from "react";
import { Col, Container, Row } from "react-bootstrap";
import Heading from "@/components/reuseables/Heading";
const Content = ({ title,subtitle ,content}) => {
return (
<Container>
<Row className="align-items-center">
<Col lg={12} md={12}>
<div className="call-back-request-text">
<span className="sub-title">{subtitle}</span>
<Heading el="h2" heading={title} className="h2" />
<div className="content" dangerouslySetInnerHTML={{ __html: content}}/>
</div>
</Col>
</Row>
</Container>
);
};
export default Content;
...@@ -37,8 +37,8 @@ const KnowledgeData = [ ...@@ -37,8 +37,8 @@ const KnowledgeData = [
}, },
]; ];
const TechnicalExpertise = ({technicalexpertise}) => { const TechnicalExpertise = ({ technicalexpertise }) => {
console.log(technicalexpertise,"technicalexpertise") console.log(technicalexpertise, "technicalexpertise");
return ( return (
<> <>
<div className="what-we-do-area pt-50 pb-50"> <div className="what-we-do-area pt-50 pb-50">
...@@ -63,14 +63,15 @@ const TechnicalExpertise = ({technicalexpertise}) => { ...@@ -63,14 +63,15 @@ const TechnicalExpertise = ({technicalexpertise}) => {
</Col> </Col>
<Col lg={6} md={12}> <Col lg={6} md={12}>
<div className="what-we-do-content"> <div className="what-we-do-content area-tab">
<span className="sub-title">{technicalexpertise?.Subtitle}</span>
<Heading <Heading
el="h2" el="h2"
heading={technicalexpertise?.SectionTitle} heading={technicalexpertise?.SectionTitle}
className="h2" className="h2"
/> />
<span>
{technicalexpertise?.Subtitle}
</span>
<Tabs> <Tabs>
<TabList> <TabList>
{technicalexpertise?.Technicallist.map((tab, index) => ( {technicalexpertise?.Technicallist.map((tab, index) => (
......
import React from "react";
import Link from "next/link";
import Image from "next/image";
import Heading from "@/components/reuseables/Heading";
import { motion } from "framer-motion";
import { fadeIn } from "@/components/reuseables/variants";
import { Col, Container, Row } from "react-bootstrap";
import { cleanImage } from "@/layout/imageHandling";
const overviewData = [
{
id: 1,
subtitle: "About Us",
title: "Welcome to Advith Consulting ",
paragraphs: [
"Welcome to Advith Consulting, a boutique finance consulting firm with over 40 years of excellence. Our core pillars—Knowledge, People, and Client Servicing—drive our success. We value our team’s unique contributions, fostering a collaborative environment that delivers tailored, innovative solutions. We build strong, lasting client relationships by understanding and exceeding their goals. Our commitment to business ethics and quality work has earned us a reputation for excellence and credibility. United by our values, we continue to deliver exceptional financial consulting services.",
],
linkText: "Know More",
linkUrl: "/contact",
imageSrc: "/images/people/welcome_advith.webp",
imageAlt: "image",
},
// Add more objects here if you have more content sections
];
const Overview = ({overview}) => {
console.log(overview?.Content,"overview")
return (
<>
<div className="what-we-do-area pt-100">
<Container>
{/* {overviewData.map((item) => ( */}
<Row className="align-items-center">
<Col lg={6} md={12}>
<div className="what-we-do-text">
<span className="sub-title">{overview?.Subtitle}</span>
<Heading el="h2" heading={overview?.Title} className="h2" />
<div
className="Content"
dangerouslySetInnerHTML={{ __html: overview?.Content }}
/>
{/* <p className="mb-3">{overview.Description}</p> */}
{/* <Link href={item.linkUrl} className="default-btn">
{item.linkText} <i className="ri-arrow-right-line"></i>
</Link> */}
</div>
</Col>
<Col lg={6} md={12}>
<div>
<motion.div
variants={fadeIn(0.4)}
initial={"hidden"}
whileInView={"show"}
viewport={{ once: false, amount: 0.2 }}
>
<Image
src={cleanImage(overview?.Image?.url)}
alt={
overview?.Overview?.Image?.alternativeText ||
"image"
}
fill
className="img-fluid image"
/>
</motion.div>
</div>
</Col>
</Row>
{/* ))} */}
</Container>
</div>
</>
);
};
export default Overview;
...@@ -54,14 +54,14 @@ const services = [ ...@@ -54,14 +54,14 @@ const services = [
]; ];
const ClientService = ({ service }) => { const ClientService = ({ service }) => {
// console.log(service, "serviceData"); console.log(service, "serviceData");
return ( return (
<> <>
<div className="services-area pt-100 pt-md-100 pb-5"> <div className="services-area pt-100 pt-md-100 pb-5">
<Container> <Container>
<div className="section-title"> <div className="section-title">
<span className="sub-title">Client Servicing</span> <span className="sub-title">Client Servicing</span>
<Heading el="h2" heading="What we do?" /> <Heading el="h2" heading={service?.heading || "What we do?"} />
</div> </div>
<p className="text-center"> <p className="text-center">
At Advith Consulting, we harness our wealth of Knowledge and At Advith Consulting, we harness our wealth of Knowledge and
......
import React from "react";
import Link from "next/link";
import Image from "next/image";
import Heading from "@/components/reuseables/Heading";
import { motion } from "framer-motion";
import { fadeIn } from "@/components/reuseables/variants";
import { Col, Container, Row } from "react-bootstrap";
import { cleanImage } from "@/layout/imageHandling";
const Finance = ({finance}) => {
console.log(finance,"PyramidofFinance")
return (
<>
<div className="what-we-do-area pt-50">
<Container>
{/* {overviewData.map((item) => ( */}
<Row className="align-items-center">
<Col lg={6} md={12}>
<div>
<motion.div
variants={fadeIn(0.4)}
initial={"hidden"}
whileInView={"show"}
viewport={{ once: false, amount: 0.2 }}
>
<Image
src={cleanImage(finance?.Image?.url)}
alt={
finance?.finance?.Image?.alternativeText ||
"image"
}
fill
className="img-fluid image"
/>
</motion.div>
</div>
</Col>
<Col lg={6} md={12}>
<div className="what-we-do-text">
<span className="sub-title">{finance?.Subtitle}</span>
<Heading el="h2" heading={finance?.Title} className="h2" />
<div
className="Content"
dangerouslySetInnerHTML={{ __html: finance?.Content }}
/>
{/* <p className="mb-3">{overview.Description}</p> */}
{/* <Link href={item.linkUrl} className="default-btn">
{item.linkText} <i className="ri-arrow-right-line"></i>
</Link> */}
</div>
</Col>
</Row>
{/* ))} */}
</Container>
</div>
</>
);
};
export default Finance;
import React from "react";
import Link from "next/link";
import Image from "next/image";
import Heading from "@/components/reuseables/Heading";
import { motion } from "framer-motion";
import { fadeIn } from "@/components/reuseables/variants";
import { Col, Container, Row } from "react-bootstrap";
import { cleanImage } from "@/layout/imageHandling";
const overviewData = [
{
id: 1,
subtitle: "About Us",
title: "Welcome to Advith Consulting ",
paragraphs: [
"Welcome to Advith Consulting, a boutique finance consulting firm with over 40 years of excellence. Our core pillars—Knowledge, People, and Client Servicing—drive our success. We value our team’s unique contributions, fostering a collaborative environment that delivers tailored, innovative solutions. We build strong, lasting client relationships by understanding and exceeding their goals. Our commitment to business ethics and quality work has earned us a reputation for excellence and credibility. United by our values, we continue to deliver exceptional financial consulting services.",
],
linkText: "Know More",
linkUrl: "/contact",
imageSrc: "/images/people/welcome_advith.webp",
imageAlt: "image",
},
// Add more objects here if you have more content sections
];
const Overview = ({overview}) => {
console.log(overview?.Content,"overview")
return (
<>
<div className="what-we-do-area pt-50">
<Container>
{/* {overviewData.map((item) => ( */}
<Row className="align-items-center">
<Col lg={12} md={12}>
<div className="what-we-do-text">
<span className="sub-title">{overview?.Subtitle}</span>
<Heading el="h2" heading={overview?.Title} className="h2" />
<div
className="Content"
dangerouslySetInnerHTML={{ __html: overview?.Content }}
/>
{/* <p className="mb-3">{overview.Description}</p> */}
<Link href={overview?.CTA?.URL ? overview?.CTA?.URL : "#"} className="default-btn">
{overview?.CTA?.text }<i className="ri-arrow-right-line"></i>
</Link>
</div>
</Col>
</Row>
{/* ))} */}
</Container>
</div>
</>
);
};
export default Overview;
...@@ -57,12 +57,12 @@ const Header = () => { ...@@ -57,12 +57,12 @@ const Header = () => {
const clientServices = [ const clientServices = [
{ {
title: "Virtual Finance Office", title: "Virtual Finance Office",
href: "/client-servicing/cfo", href: "/client-servicing/virtual-finance-office",
items: [ items: [
{ name: "Virtual CFO Services", href: "/client-servicing/cfo" }, { name: "Virtual CFO Services", href: "client-servicing/virtual-finance-office/virtual-cfo" },
{ name: "Virtual FC Services", href: "/client-servicing/cfo" }, { name: "Virtual FC Services", href: "/client-servicing/virtual-finance-office/virtual-fc" },
{ name: "Book Closures and Audit Support", href: "/client-servicing/cfo" }, { name: "Book Closures and Audit Support", href: "/client-servicing/virtual-finance-office/book-closures-audit" },
{ name: "Accounting Payroll & Compliance", href: "/client-servicing/cfo" }, { name: "Accounting Payroll & Compliance", href: "/client-servicing/virtual-finance-office/apc" },
], ],
}, },
{ {
...@@ -70,8 +70,8 @@ const Header = () => { ...@@ -70,8 +70,8 @@ const Header = () => {
href: "/client-servicing/ta", href: "/client-servicing/ta",
items: [ items: [
{ name: "Transaction Advisory", href: "/client-servicing/ta" }, { name: "Transaction Advisory", href: "/client-servicing/ta" },
{ name: "Risk Advisory", href: "/client-servicing/ta" }, { name: "Risk Advisory", href: "/client-servicing/ra" },
{ name: "Business Advisory", href: "/client-servicing/ta" }, { name: "Business Advisory", href: "/client-servicing/ba" },
], ],
}, },
{ {
......
...@@ -9,7 +9,7 @@ const nextConfig = { ...@@ -9,7 +9,7 @@ const nextConfig = {
// }, // },
{ {
protocol: "https", protocol: "https",
hostname: "api.advithconsulting.in", hostname: "api.advith.io",
}, },
], ],
}, },
......
import React from "react";
import PageBanner from "@/components/reuseables/PageBanner";
import CallBackRequest from "@/components/reuseables/CallBackRequest";
import { useEffect } from "react";
import { useDispatch, useSelector } from "react-redux";
import { fetchServiceList } from "@/redux/slices/clientservice";
import { cleanImage } from "@/layout/imageHandling";
import qs from "qs";
import axios from "axios";
import { fetchIndustryList } from "@/redux/slices/industryslice";
import { fetchFunctionArea } from "@/redux/slices/functionareaslice";
import ClientService from "@/container/Home/ClientService";
import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode";
import Overview from "@/container/VirtualOffice/Overview";
import WhatWeDo from "@/components/reuseables/WhatWeDo";
import PartnerSlider from "@/container/Home/PartnerSlider";
import CTABanner from "@/components/reuseables/CTABanner";
import Seo from "@/components/reuseables/Seo/Seo";
const ClientServicingPage = ({ AdvisoryPage, conversionData }) => {
// console.log(AdvisoryPage, "data1");
const banners = [
{
imageSrc: cleanImage(AdvisoryPage?.Banner?.Image?.url),
pageTitle: AdvisoryPage?.Banner?.Heading,
homePageUrl: "/",
homePageText: "Home",
activePageText: AdvisoryPage?.Banner?.Heading,
},
// Add more banners as needed
];
const serviceData = AdvisoryPage?.WeOffer;
const serviceheading = AdvisoryPage?.WeOfferHeading;
// const AdvisoryPage = AdvisoryPage?.Technicalexpertise;
const dispatch = useDispatch();
useEffect(() => {
// dispatch(fetchServiceList());
dispatch(fetchIndustryList());
dispatch(fetchFunctionArea());
}, []);
// const serviceData = useSelector((state) => state.servicelist.data);
// const IndustryData = useSelector((state) => state.industrylist.data);
// const FunctionArea = useSelector((state) => state.functionarea.data);
const CtaBanner = AdvisoryPage?.CTABanner;
// console.log(FunctionArea, "data")
const seo = AdvisoryPage?.seo;
const code = conversionData?.conversion;
const overview = AdvisoryPage?.Overview;
const Clientel = AdvisoryPage?.Clientel;
// console.log(Clientel, "technicalexpertise");
return (
<>
<Seo seo={seo} />
<PageBanner banners={banners} />
<ConversionCode code={code} />
<div className="ptb-100">
<Overview overview={overview} />
</div>
<WhatWeDo service={serviceData} serviceheading={serviceheading} />
<div className="ptb-100 bg-fafafa">
<PartnerSlider Clientel={Clientel} />
</div>
<CTABanner cta={CtaBanner} />
{/* <ClientService service={serviceData} /> */}
<CallBackRequest />
</>
);
};
export default ClientServicingPage;
export async function getServerSideProps() {
try {
const query1 = {
populate: [
"Banner",
"Banner.Image",
"Overview.CTA",
"WeOffer",
"WeOffer.Image",
"WeOffer.CTA",
"WeOfferHeading",
"CTABanner.CTA",
"Clientel.logos",
// "Technicalexpertise",
// "Technicalexpertise.Technicallist"
"seo",
"seo.metaImage",
"seo.schema",
],
};
const query2 = {
populate: ["conversion"],
};
const query1String = qs.stringify(query1, {
encodeValuesOnly: true,
});
const query12String = qs.stringify(query2, {
encodeValuesOnly: true,
});
const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/advisory-services-page?${query1String}`;
const endpoint2 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/google-manger?${query12String}`;
console.log(`Final url: ${endpoint1}`);
const [response1, response2] = await Promise.all([
axios.get(endpoint1),
axios.get(endpoint2),
]);
const AdvisoryPage = response1.data.data;
const conversionData = response2.data.data;
return {
props: { AdvisoryPage, conversionData },
};
} catch (error) {
console.log("Error", error);
}
}
...@@ -5,21 +5,16 @@ import Industries from "@/components/reuseables/Industries"; ...@@ -5,21 +5,16 @@ import Industries from "@/components/reuseables/Industries";
import CallBackRequest from "@/components/reuseables/CallBackRequest"; import CallBackRequest from "@/components/reuseables/CallBackRequest";
import { useEffect } from "react"; import { useEffect } from "react";
import { useDispatch, useSelector } from "react-redux"; import { useDispatch, useSelector } from "react-redux";
import { fetchServiceList } from "@/redux/slices/clientservice";
import { cleanImage } from "@/layout/imageHandling"; import { cleanImage } from "@/layout/imageHandling";
import qs from "qs"; import qs from "qs";
import axios from "axios"; import axios from "axios";
import { fetchIndustryList } from "@/redux/slices/industryslice"; import { fetchIndustryList } from "@/redux/slices/industryslice";
import { fetchFunctionArea } from "@/redux/slices/functionareaslice";
import TechnicalExpertise from "@/container/ClientServicing/ TechnicalExpertise"; import TechnicalExpertise from "@/container/ClientServicing/ TechnicalExpertise";
import ClientService from "@/container/Home/ClientService";
import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode"; import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode";
import WhatWeDo from "@/components/reuseables/WhatWeDo";
import Seo from "@/components/reuseables/Seo/Seo";
const ClientServicingPage = ({ ClientPage, conversionData }) => {
const ClientServicingPage = ({ ClientPage , conversionData }) => {
// console.log(ClientPage, "data1");
const banners = [ const banners = [
{ {
imageSrc: cleanImage(ClientPage?.Banner?.Image?.url), imageSrc: cleanImage(ClientPage?.Banner?.Image?.url),
...@@ -28,37 +23,27 @@ const ClientServicingPage = ({ ClientPage , conversionData }) => { ...@@ -28,37 +23,27 @@ const ClientServicingPage = ({ ClientPage , conversionData }) => {
homePageText: "Home", homePageText: "Home",
activePageText: ClientPage?.Banner?.Heading, activePageText: ClientPage?.Banner?.Heading,
}, },
// Add more banners as needed
]; ];
const technicalexpertise = ClientPage?.Technicalexpertise; const technicalexpertise = ClientPage?.Technicalexpertise;
// console.log(technicalexpertise,"technicalexpertise") const serviceHeading = ClientPage?.whatwedoheading;
const serviceData = ClientPage?.whatwedo;
const dispatch = useDispatch(); const dispatch = useDispatch();
useEffect(() => { useEffect(() => {
dispatch(fetchServiceList());
dispatch(fetchIndustryList()); dispatch(fetchIndustryList());
dispatch(fetchFunctionArea());
}, []); }, []);
const IndustryData = useSelector((state) => state.industrylist.data);
const serviceData = useSelector((state) => state.servicelist.data) const FunctionArea =ClientPage?.FunctionalAreas;
const IndustryData = useSelector((state) => state.industrylist.data)
const FunctionArea = useSelector((state) => state.functionarea.data)
// console.log(FunctionArea, "data")
const seo = ClientPage?.seo; const seo = ClientPage?.seo;
const code = conversionData?.conversion; const code = conversionData?.conversion;
return ( return (
<> <>
<Seo seo={seo} />
<PageBanner banners={banners} /> <PageBanner banners={banners} />
<ConversionCode code={code} /> <ConversionCode code={code} />
<WhatWeDo service={serviceData} serviceheading={serviceHeading} />
<ClientService service={serviceData} /> <TechnicalExpertise technicalexpertise={technicalexpertise} />
{/* <OurService /> */} <FunctionalAreas functionarea={FunctionArea} />
<TechnicalExpertise technicalexpertise={technicalexpertise}/>
<FunctionalAreas functionarea={FunctionArea} />
<Industries industry={IndustryData} /> <Industries industry={IndustryData} />
<CallBackRequest /> <CallBackRequest />
</> </>
...@@ -66,17 +51,23 @@ const ClientServicingPage = ({ ClientPage , conversionData }) => { ...@@ -66,17 +51,23 @@ const ClientServicingPage = ({ ClientPage , conversionData }) => {
}; };
export default ClientServicingPage; export default ClientServicingPage;
export async function getServerSideProps() { export async function getServerSideProps() {
try { try {
const query1 = { const query1 = {
populate: [ populate: [
"Banner", "Banner",
"Banner.Image", "Banner.Image",
"Technicalexpertise", "whatwedoheading",
"Technicalexpertise.Technicallist" "whatwedo",
"whatwedo.Image",
"whatwedo.CTA",
"FunctionalAreas",
"FunctionalAreas.Icon",
"Technicalexpertise",
"Technicalexpertise.Technicallist",
"seo",
"seo.metaImage",
"seo.schema",
], ],
}; };
...@@ -94,7 +85,7 @@ export async function getServerSideProps() { ...@@ -94,7 +85,7 @@ export async function getServerSideProps() {
const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/client-servicing?${query1String}`; const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/client-servicing?${query1String}`;
const endpoint2 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/google-manger?${query12String}`; const endpoint2 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/google-manger?${query12String}`;
console.log(`Final url: ${endpoint1}`); console.log(`Final url: ${endpoint1}`);
const [response1, response2] = await Promise.all([ const [response1, response2] = await Promise.all([
...@@ -105,7 +96,7 @@ export async function getServerSideProps() { ...@@ -105,7 +96,7 @@ export async function getServerSideProps() {
const conversionData = response2.data.data; const conversionData = response2.data.data;
return { return {
props: { ClientPage,conversionData }, props: { ClientPage, conversionData },
}; };
} catch (error) { } catch (error) {
console.log("Error", error); console.log("Error", error);
......
...@@ -9,6 +9,8 @@ import LeftSideImage from "@/container/Corpedia/LeftSideImage"; ...@@ -9,6 +9,8 @@ import LeftSideImage from "@/container/Corpedia/LeftSideImage";
import RightSideImage from "@/container/Corpedia/RightSideImage"; import RightSideImage from "@/container/Corpedia/RightSideImage";
import Seo from "@/components/reuseables/Seo/Seo"; import Seo from "@/components/reuseables/Seo/Seo";
import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode"; import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode";
import Content from "@/components/reuseables/services/Content";
import CallBackRequest from "@/components/reuseables/CallBackRequest";
...@@ -42,7 +44,6 @@ const clientserviceapc = ({ apcpage ,conversionData }) => { ...@@ -42,7 +44,6 @@ const clientserviceapc = ({ apcpage ,conversionData }) => {
<> <>
<Seo seo={seo} /> <Seo seo={seo} />
<ConversionCode code={code} /> <ConversionCode code={code} />
<PageBanner banners={banners} /> <PageBanner banners={banners} />
<div className="cfo-services-area ptb-100"> <div className="cfo-services-area ptb-100">
<section className="cfo-page"> <section className="cfo-page">
...@@ -82,6 +83,14 @@ const clientserviceapc = ({ apcpage ,conversionData }) => { ...@@ -82,6 +83,14 @@ const clientserviceapc = ({ apcpage ,conversionData }) => {
data={section?.ElementList} data={section?.ElementList}
/> />
); );
case "dynamic-zone.text":
return (
<Content
title={section?.Heading}
subtitle={section?.Subtitle}
content={section?.Description}
/>
);
default: default:
return null; return null;
} }
...@@ -89,9 +98,10 @@ const clientserviceapc = ({ apcpage ,conversionData }) => { ...@@ -89,9 +98,10 @@ const clientserviceapc = ({ apcpage ,conversionData }) => {
</section> </section>
</div> </div>
<div className="ptb-100"> <div className="pb-100">
<Clientele partners={clientlogo} /> <Clientele partners={clientlogo} />
</div> </div>
<CallBackRequest />
</> </>
); );
}; };
......
...@@ -9,6 +9,7 @@ import LeftSideImage from "@/container/Corpedia/LeftSideImage"; ...@@ -9,6 +9,7 @@ import LeftSideImage from "@/container/Corpedia/LeftSideImage";
import RightSideImage from "@/container/Corpedia/RightSideImage"; import RightSideImage from "@/container/Corpedia/RightSideImage";
import Seo from "@/components/reuseables/Seo/Seo"; import Seo from "@/components/reuseables/Seo/Seo";
import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode"; import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode";
import CallBackRequest from "@/components/reuseables/CallBackRequest";
// method one content // method one content
const bookclosures = ({ bookclosurepage ,conversionData }) => { const bookclosures = ({ bookclosurepage ,conversionData }) => {
...@@ -23,7 +24,7 @@ const bookclosures = ({ bookclosurepage ,conversionData }) => { ...@@ -23,7 +24,7 @@ const bookclosures = ({ bookclosurepage ,conversionData }) => {
}, },
]; ];
const dynamicdata = bookclosurepage?.FCDeatils; const dynamicdata = bookclosurepage?.BookClosureDetails;
// console.log("dynamicdata", dynamicdata); // console.log("dynamicdata", dynamicdata);
const clientlogo = bookclosurepage?.Clientel; const clientlogo = bookclosurepage?.Clientel;
...@@ -44,25 +45,25 @@ const bookclosures = ({ bookclosurepage ,conversionData }) => { ...@@ -44,25 +45,25 @@ const bookclosures = ({ bookclosurepage ,conversionData }) => {
<section className="cfo-page"> <section className="cfo-page">
{dynamicdata && {dynamicdata &&
dynamicdata?.map((section, index) => { dynamicdata?.map((section, index) => {
// console.log("section", section); console.log("section", section);
switch (section.__component) { switch (section.__component) {
case "dynamic-zone.about": case "dynamic-zone.about":
return ( return (
<LeftSideImage <LeftSideImage
title={section?.Title} title={section?.Title}
subtitle={section?.Subtitle} subtitle={section?.Subtitle}
image={section?.Image} image={section?.Image}
content={section?.Content} content={section?.Content}
/> />
); );
case "dynamic-zone.background": case "dynamic-zone.background":
return ( return (
<RightSideImage <RightSideImage
title={section?.Title} title={section?.Title}
subtitle={section?.Subtitle} subtitle={section?.Subtitle}
image={section?.Image} image={section?.Image}
content={section?.Content} content={section?.Content}
/> />
); );
case "dynamic-zone.element-one": case "dynamic-zone.element-one":
return ( return (
...@@ -78,6 +79,7 @@ const bookclosures = ({ bookclosurepage ,conversionData }) => { ...@@ -78,6 +79,7 @@ const bookclosures = ({ bookclosurepage ,conversionData }) => {
data={section?.ElementList} data={section?.ElementList}
/> />
); );
default: default:
return null; return null;
} }
...@@ -85,11 +87,12 @@ const bookclosures = ({ bookclosurepage ,conversionData }) => { ...@@ -85,11 +87,12 @@ const bookclosures = ({ bookclosurepage ,conversionData }) => {
</section> </section>
</div> </div>
<div className="ptb-100"> <div className="pb-100">
<Clientele <Clientele
partners={clientlogo} partners={clientlogo}
/> />
</div> </div>
<CallBackRequest />
</> </>
); );
}; };
......
...@@ -4,19 +4,21 @@ import Industries from "@/components/reuseables/Industries"; ...@@ -4,19 +4,21 @@ import Industries from "@/components/reuseables/Industries";
import CallBackRequest from "@/components/reuseables/CallBackRequest"; import CallBackRequest from "@/components/reuseables/CallBackRequest";
import { useEffect } from "react"; import { useEffect } from "react";
import { useDispatch, useSelector } from "react-redux"; import { useDispatch, useSelector } from "react-redux";
import { fetchServiceList } from "@/redux/slices/clientservice";
import { cleanImage } from "@/layout/imageHandling"; import { cleanImage } from "@/layout/imageHandling";
import qs from "qs"; import qs from "qs";
import axios from "axios"; import axios from "axios";
import { fetchIndustryList } from "@/redux/slices/industryslice"; import { fetchIndustryList } from "@/redux/slices/industryslice";
import { fetchFunctionArea } from "@/redux/slices/functionareaslice";
import TechnicalExpertise from "@/container/ClientServicing/ TechnicalExpertise";
import ClientService from "@/container/Home/ClientService";
import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode"; import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode";
import FunctionalAreas from "@/components/reuseables/FunctionalAreas"; import WhatWeDo from "@/components/reuseables/WhatWeDo";
import LeftSideImage from "@/container/Corpedia/LeftSideImage"; import Overview from "@/container/VirtualOffice/Overview";
import Finance from "@/container/VirtualOffice/Finance";
import CTABanner from "@/components/reuseables/CTABanner";
import Seo from "@/components/reuseables/Seo/Seo";
import PartnerSlider from "@/container/Home/PartnerSlider";
import HomeBlog from "@/container/Home/HomeBlog";
import { fetchBlogList } from "@/redux/slices/bloglistslice";
const VirtualFinanceOfficePage = ({ ClientPage , conversionData ,title , }) => { const VirtualFinanceOfficePage = ({ ClientPage, conversionData, title }) => {
// console.log(ClientPage, "data1"); // console.log(ClientPage, "data1");
const banners = [ const banners = [
{ {
...@@ -28,39 +30,48 @@ const VirtualFinanceOfficePage = ({ ClientPage , conversionData ,title , }) => { ...@@ -28,39 +30,48 @@ const VirtualFinanceOfficePage = ({ ClientPage , conversionData ,title , }) => {
}, },
]; ];
const technicalexpertise = ClientPage?.Technicalexpertise; const overview = ClientPage?.Overview;
// console.log(technicalexpertise,"technicalexpertise") const PyramidofFinance = ClientPage?.PyramidofFinance
const serviceData = ClientPage?.whatwedo;
const CtaBanner = ClientPage?.CTABanner;
console.log(CtaBanner, "CTABanner");
const dispatch = useDispatch(); const dispatch = useDispatch();
useEffect(() => { useEffect(() => {
dispatch(fetchServiceList()); // dispatch(fetchServiceList());
dispatch(fetchBlogList());
dispatch(fetchIndustryList()); dispatch(fetchIndustryList());
dispatch(fetchFunctionArea()); // dispatch(fetchFunctionArea());
}, []); }, []);
const serviceData = useSelector((state) => state.servicelist.data)
const IndustryData = useSelector((state) => state.industrylist.data)
const FunctionArea = useSelector((state) => state.functionarea.data)
const blogData = useSelector((state) => state.bloglist.data);
const IndustryData = useSelector((state) => state.industrylist.data);
const seo = ClientPage?.seo; const seo = ClientPage?.seo;
const code = conversionData?.conversion; const code = conversionData?.conversion;
const Clientel = ClientPage?.Clientel;
return ( return (
<> <>
<Seo seo={seo} />
<PageBanner banners={banners} /> <PageBanner banners={banners} />
<ConversionCode code={code} /> <ConversionCode code={code} />
<LeftSideImage <div className="ptb-100">
title={title} <Overview overview={overview} />
subtitle={Subtitle} </div>
image={Image} <WhatWeDo service={serviceData} />
content={Content} <Finance finance={PyramidofFinance} />
/> <CTABanner cta={CtaBanner} />
<ClientService service={serviceData} />
{/* <OurService /> */} {/* <OurService /> */}
<TechnicalExpertise technicalexpertise={technicalexpertise}/> {/* <TechnicalExpertise technicalexpertise={technicalexpertise} /> */}
<FunctionalAreas functionarea={FunctionArea} /> {/* <FunctionalAreas functionarea={FunctionArea} /> */}
<div className="ptb-100 bg-fafafa">
<PartnerSlider Clientel={Clientel} />
</div>
<Industries industry={IndustryData} /> <Industries industry={IndustryData} />
<HomeBlog data={blogData} />
<CallBackRequest /> <CallBackRequest />
</> </>
); );
...@@ -68,19 +79,23 @@ const VirtualFinanceOfficePage = ({ ClientPage , conversionData ,title , }) => { ...@@ -68,19 +79,23 @@ const VirtualFinanceOfficePage = ({ ClientPage , conversionData ,title , }) => {
export default VirtualFinanceOfficePage; export default VirtualFinanceOfficePage;
export async function getServerSideProps() { export async function getServerSideProps() {
try { try {
const query1 = { const query1 = {
populate: [ populate: [
"Banner", "Banner",
"Banner.Image", "Banner.Image",
// "Technicalexpertise", "whatwedo",
// "Technicalexpertise.Technicallist" "whatwedo.Image",
"seo", "whatwedo.CTA",
"Overview",
"Overview.CTA",
"PyramidofFinance.Image",
"CTABanner.CTA",
"Clientel.logos",
"seo",
"seo.metaImage", "seo.metaImage",
"seo.schema", "seo.schema",
], ],
}; };
...@@ -98,7 +113,7 @@ export async function getServerSideProps() { ...@@ -98,7 +113,7 @@ export async function getServerSideProps() {
const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/virtual-finance-office-page?${query1String}`; const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/virtual-finance-office-page?${query1String}`;
const endpoint2 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/google-manger?${query12String}`; const endpoint2 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/google-manger?${query12String}`;
console.log(`Final url virtual finace: ${endpoint1}`); console.log(`Final url virtual finace: ${endpoint1}`);
const [response1, response2] = await Promise.all([ const [response1, response2] = await Promise.all([
...@@ -109,7 +124,7 @@ export async function getServerSideProps() { ...@@ -109,7 +124,7 @@ export async function getServerSideProps() {
const conversionData = response2.data.data; const conversionData = response2.data.data;
return { return {
props: { ClientPage,conversionData }, props: { ClientPage, conversionData },
}; };
} catch (error) { } catch (error) {
console.log("Error", error); console.log("Error", error);
......
...@@ -9,13 +9,11 @@ import LeftSideImage from "@/container/Corpedia/LeftSideImage"; ...@@ -9,13 +9,11 @@ import LeftSideImage from "@/container/Corpedia/LeftSideImage";
import RightSideImage from "@/container/Corpedia/RightSideImage"; import RightSideImage from "@/container/Corpedia/RightSideImage";
import Seo from "@/components/reuseables/Seo/Seo"; import Seo from "@/components/reuseables/Seo/Seo";
import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode"; import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode";
import Content from "@/components/reuseables/services/Content";
// method one content // method one content
const clientservicecfo = ({ cfopage ,conversionData }) => { const clientservicecfo = ({ cfopage, conversionData }) => {
// console.log(cfopage ,"cfopage") // console.log(cfopage ,"cfopage")
const banners = [ const banners = [
{ {
...@@ -28,7 +26,7 @@ const clientservicecfo = ({ cfopage ,conversionData }) => { ...@@ -28,7 +26,7 @@ const clientservicecfo = ({ cfopage ,conversionData }) => {
]; ];
const dynamicdata = cfopage?.CfoDeatils; const dynamicdata = cfopage?.CfoDeatils;
// console.log("dynamicdata", dynamicdata); console.log("dynamicdata", dynamicdata);
const clientlogo = cfopage?.Clientel; const clientlogo = cfopage?.Clientel;
// console.log("clientlogo", clientlogo); // console.log("clientlogo", clientlogo);
...@@ -42,31 +40,30 @@ const clientservicecfo = ({ cfopage ,conversionData }) => { ...@@ -42,31 +40,30 @@ const clientservicecfo = ({ cfopage ,conversionData }) => {
<> <>
<Seo seo={seo} /> <Seo seo={seo} />
<ConversionCode code={code} /> <ConversionCode code={code} />
<PageBanner banners={banners} /> <PageBanner banners={banners} />
<div className="cfo-services-area ptb-100"> <div className="cfo-services-area ptb-100">
<section className="cfo-page"> <section className="cfo-page">
{dynamicdata && {dynamicdata &&
dynamicdata?.map((section, index) => { dynamicdata?.map((section, index) => {
// console.log("section", section); console.log("section", section);
switch (section.__component) { switch (section.__component) {
case "dynamic-zone.about": case "dynamic-zone.about":
return ( return (
<LeftSideImage <LeftSideImage
title={section?.Title} title={section?.Title}
subtitle={section?.Subtitle} subtitle={section?.Subtitle}
image={section?.Image} image={section?.Image}
content={section?.Content} content={section?.Content}
/> />
); );
case "dynamic-zone.background": case "dynamic-zone.background":
return ( return (
<RightSideImage <RightSideImage
title={section?.Title} title={section?.Title}
subtitle={section?.Subtitle} subtitle={section?.Subtitle}
image={section?.Image} image={section?.Image}
content={section?.Content} content={section?.Content}
/> />
); );
case "dynamic-zone.element-one": case "dynamic-zone.element-one":
return ( return (
...@@ -82,6 +79,14 @@ const clientservicecfo = ({ cfopage ,conversionData }) => { ...@@ -82,6 +79,14 @@ const clientservicecfo = ({ cfopage ,conversionData }) => {
data={section?.ElementList} data={section?.ElementList}
/> />
); );
case "dynamic-zone.text":
return (
<Content
title={section?.Heading}
subtitle={section?.Subtitle}
content={section?.Description}
/>
);
default: default:
return null; return null;
} }
...@@ -89,9 +94,10 @@ const clientservicecfo = ({ cfopage ,conversionData }) => { ...@@ -89,9 +94,10 @@ const clientservicecfo = ({ cfopage ,conversionData }) => {
</section> </section>
</div> </div>
<div className="ptb-100"> <div className="pb-100">
<Clientele partners={clientlogo} /> <Clientele partners={clientlogo} />
</div> </div>
</> </>
); );
}; };
...@@ -129,10 +135,9 @@ export async function getServerSideProps() { ...@@ -129,10 +135,9 @@ export async function getServerSideProps() {
const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/cfo-page?${query1String}`; const endpoint1 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/cfo-page?${query1String}`;
const endpoint2 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/google-manger?${query12String}`; const endpoint2 = `${process.env.NEXT_PUBLIC_BACKEND_API_URL}/api/google-manger?${query12String}`;
console.log(`Final url: ${endpoint1}`); console.log(`Final url: ${endpoint1}`);
const [response1, response2] = await Promise.all([ const [response1, response2] = await Promise.all([
axios.get(endpoint1), axios.get(endpoint1),
axios.get(endpoint2), axios.get(endpoint2),
...@@ -141,9 +146,8 @@ export async function getServerSideProps() { ...@@ -141,9 +146,8 @@ export async function getServerSideProps() {
const cfopage = response1.data.data; const cfopage = response1.data.data;
const conversionData = response2.data.data; const conversionData = response2.data.data;
return { return {
props: { cfopage ,conversionData }, props: { cfopage, conversionData },
}; };
} catch (error) { } catch (error) {
console.log("Error", error); console.log("Error", error);
......
...@@ -9,6 +9,7 @@ import LeftSideImage from "@/container/Corpedia/LeftSideImage"; ...@@ -9,6 +9,7 @@ import LeftSideImage from "@/container/Corpedia/LeftSideImage";
import RightSideImage from "@/container/Corpedia/RightSideImage"; import RightSideImage from "@/container/Corpedia/RightSideImage";
import Seo from "@/components/reuseables/Seo/Seo"; import Seo from "@/components/reuseables/Seo/Seo";
import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode"; import ConversionCode from "@/components/reuseables/ConversionCode/ConversionCode";
import CallBackRequest from "@/components/reuseables/CallBackRequest";
...@@ -89,9 +90,10 @@ const clientservicefc = ({ fcpage ,conversionData }) => { ...@@ -89,9 +90,10 @@ const clientservicefc = ({ fcpage ,conversionData }) => {
</section> </section>
</div> </div>
<div className="ptb-100"> <div className="pb-100" >
<Clientele partners={clientlogo} /> <Clientele partners={clientlogo} />
</div> </div>
<CallBackRequest />
</> </>
); );
}; };
......
...@@ -238,7 +238,7 @@ p:last-child { ...@@ -238,7 +238,7 @@ p:last-child {
.section-title .sub-title { .section-title .sub-title {
display: block; display: block;
margin-bottom: 12px; /* margin-bottom: 12px; */
color: var(--mainColor); color: var(--mainColor);
font-size: 15px; font-size: 15px;
font-weight: 700; font-weight: 700;
...@@ -3347,10 +3347,10 @@ Free Quote Area CSS ...@@ -3347,10 +3347,10 @@ Free Quote Area CSS
z-index: 1; z-index: 1;
background-color: var(--blackColor); background-color: var(--blackColor);
/* border-radius: 20px; */ /* border-radius: 20px; */
padding-top: 100px; padding-top: 50px;
padding-left: 50px; padding-left: 50px;
padding-right: 50px; padding-right: 50px;
padding-bottom: 75px; padding-bottom: 50px;
} }
.free-quote-inner .section-title h2 { .free-quote-inner .section-title h2 {
...@@ -3468,6 +3468,7 @@ Free Quote Area CSS ...@@ -3468,6 +3468,7 @@ Free Quote Area CSS
position: absolute; position: absolute;
top: 50%; top: 50%;
transform: translateY(-50%); transform: translateY(-50%);
width: 100px;
} }
.shape6 img { .shape6 img {
...@@ -3687,7 +3688,7 @@ Call Back Request Area CSS ...@@ -3687,7 +3688,7 @@ Call Back Request Area CSS
display: block; display: block;
margin-bottom: 10px; margin-bottom: 10px;
color: var(--mainColor); color: var(--mainColor);
font-size: 15px; font-size: 18px;
font-weight: 700; font-weight: 700;
} }
...@@ -3700,6 +3701,7 @@ Call Back Request Area CSS ...@@ -3700,6 +3701,7 @@ Call Back Request Area CSS
.call-back-request-text p { .call-back-request-text p {
margin-bottom: 0; margin-bottom: 0;
color: var(--blackColor); color: var(--blackColor);
text-align: justify;
} }
.call-back-request-text .single-call-back-box { .call-back-request-text .single-call-back-box {
...@@ -5754,8 +5756,8 @@ Page Title Area CSS ...@@ -5754,8 +5756,8 @@ Page Title Area CSS
background-position: center center; background-position: center center;
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: cover; background-size: cover;
padding-top: 100px; padding-top: 50px;
padding-bottom: 100px; padding-bottom: 50px;
position: relative; position: relative;
} }
...@@ -8363,7 +8365,7 @@ ul.pagination.custom-pagination { ...@@ -8363,7 +8365,7 @@ ul.pagination.custom-pagination {
padding-bottom: 15px; padding-bottom: 15px;
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
margin-bottom: 40px; /* margin-bottom: 40px; */
color: #fff; color: #fff;
} }
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!