You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

87 regels
2.5 KiB

  1. import React from "react";
  2. import classNames from "classnames";
  3. import { makeStyles } from "@material-ui/core/styles";
  4. import Header from "components/Header/Header.js";
  5. import HeaderLinks from "components/Header/HeaderLinks.js";
  6. import Footer from "components/Footer/Footer.js";
  7. import Parallax from "components/Parallax/Parallax.js";
  8. import styles from "assets/jss/nextjs-material-kit/pages/components.js";
  9. import GetbusinessPartners from "../api/home/businessPartner.js";
  10. import Getservices from "../api/home/service.js";
  11. import Getcarousels from "../api/home/carousel.js";
  12. import DataSnackbarContent from "../pages-sections/snackbar.js";
  13. import DataCarousel from "../pages-sections/home/carousel.js";
  14. import DataService from "../pages-sections/home/service.js";
  15. import DataBusinessPartner from "../pages-sections/home/business_partner.js";
  16. import CoreValue from "../pages-sections/home/core_value.js";
  17. const useStyles = makeStyles(styles);
  18. const Home = function ({
  19. backend,
  20. businessPartners,
  21. service,
  22. carousel,
  23. ...props
  24. }) {
  25. const classes = useStyles();
  26. const { ...rest } = props;
  27. <DataService service={props.service} />;
  28. return (
  29. <div>
  30. <Header
  31. rightLinks={<HeaderLinks />}
  32. fixed
  33. color="info"
  34. changeColorOnScroll={{
  35. height: 400,
  36. color: "white",
  37. }}
  38. {...rest}
  39. />
  40. <Parallax image={require("assets/img/welcome.png")}styles={{ marginTop: "50px" }}/>
  41. <div className={classNames(classes.main, classes.mainRaised)}>
  42. <DataSnackbarContent />
  43. <CoreValue />
  44. <DataCarousel carousel={carousel} backend={backend} />
  45. <DataService service={service} backend={backend} />
  46. <DataBusinessPartner
  47. businessPartners={businessPartners}
  48. backend={backend}
  49. />
  50. </div>
  51. <Footer />
  52. </div>
  53. );
  54. };
  55. export async function getServerSideProps(context) {
  56. var businessPartners = [];
  57. var service = [];
  58. var carousel = [];
  59. const backend = process.env.BACKEND_SERVER_URI;
  60. var res = await GetbusinessPartners.GetbusinessPartners();
  61. if (res["STATUS"] === 1) {
  62. businessPartners = res["DATA"]["businessPartners"];
  63. }
  64. var res = await Getservices.Getservices();
  65. if (res["STATUS"] === 1) {
  66. service = res["DATA"]["services"];
  67. }
  68. var res = await Getcarousels.GetCarousels();
  69. if (res["STATUS"] === 1) {
  70. carousel = res["DATA"]["carousels"];
  71. }
  72. return {
  73. props: { businessPartners, service, carousel, backend }, // will be passed to the page component as props
  74. };
  75. }
  76. export default Home;