Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 

94 linhas
2.8 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 HeaderSuzuki from "components/Header/HeaderSuzuki.js";
  6. import Parallax from "components/Parallax/Parallax.js";
  7. import styles from "assets/jss/nextjs-material-kit/pages/components.js";
  8. import FooterSuzuki from "components/Footer/FooterSuzuki.js";
  9. import Getservices from "../../api/home/service.js";
  10. import Getcarousels from "../../api/home/carousel.js";
  11. import DataSnackbarContent from "../../pages-sections/suzuki/snackbar.js";
  12. import DataCarousel from "../../pages-sections/suzuki/home/carousel.js";
  13. import DataService from "../../pages-sections/suzuki/home/service.js";
  14. import DataSosmed from "../../pages-sections/suzuki/home/sosmed.js";
  15. import Cookies from "cookies";
  16. const useStyles = makeStyles(styles);
  17. const Home = function ({
  18. backend,
  19. businessPartners,
  20. service,
  21. carousels,
  22. ...props
  23. }) {
  24. const classes = useStyles();
  25. const { ...rest } = props;
  26. <DataService service={props.service} />;
  27. return (
  28. <div>
  29. <Header
  30. rightLinks={<HeaderSuzuki username={props.user} />}
  31. fixed
  32. color="info"
  33. changeColorOnScroll={{
  34. height: 400,
  35. color: "white",
  36. }}
  37. {...rest}
  38. />
  39. <Parallax
  40. image={require("assets/img/dekstop_pandemi.jpg")}
  41. styles={{ marginTop: "50px" }}
  42. />
  43. <div className={classNames(classes.main, classes.mainRaised)}>
  44. <DataSnackbarContent />
  45. <DataCarousel carousels={carousels} backend={backend} />
  46. <DataService service={service} backend={backend} />
  47. {/* <DataFeature /> */}
  48. <DataSosmed service={service} backend={backend} />
  49. </div>
  50. <FooterSuzuki />
  51. </div>
  52. );
  53. };
  54. export async function getServerSideProps(context) {
  55. var businessPartners = [];
  56. var service = [];
  57. var carousels = [];
  58. const backend = process.env.BACKEND_SERVER_URI;
  59. var { req, resp } = context;
  60. const cookies = new Cookies(req, resp);
  61. var user = "";
  62. var userObj = (await cookies.get("user"))
  63. ? JSON.parse(await cookies.get("user"))
  64. : null;
  65. if (userObj) {
  66. let sessionId = userObj["partners_login_states"].filter(function (i) {
  67. return (
  68. i.business_partner && i.business_partner.name.toUpperCase() == "SUZUKI"
  69. );
  70. });
  71. if (sessionId.length != 0) user = userObj["username"];
  72. }
  73. var res = await Getservices.GetservicesSuzuki();
  74. if (res["STATUS"] === 1) {
  75. service = res["DATA"]["services"];
  76. }
  77. var res = await Getcarousels.GetCarouselsSuzuki();
  78. if (res["STATUS"] === 1) {
  79. carousels = res["DATA"]["carousels"];
  80. }
  81. return {
  82. props: { businessPartners, service, carousels, backend, user }, // will be passed to the page component as props
  83. };
  84. }
  85. export default Home;