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.
 
 

56 rivejä
1.6 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 GetLatestNews from "../api/latest_news/news.js"
  10. import DataSnackbarContent from "../pages-sections/snackbar.js";
  11. import DataLatestNews from "../pages-sections/latest_news/news.js";
  12. const useStyles = makeStyles(styles);
  13. const LatestNews = function ({ backend, news, ...props }) {
  14. const classes = useStyles();
  15. const { ...rest } = props;
  16. <DataLatestNews news={props.news}/>
  17. return (
  18. <div>
  19. <Header
  20. rightLinks={<HeaderLinks />}
  21. fixed
  22. color="info"
  23. changeColorOnScroll={{
  24. height: 400,
  25. color: "white"
  26. }}
  27. {...rest}
  28. />
  29. <Parallax image={require("assets/img/simulasicicilan.jpg")} width="200px"/>
  30. <div className={classNames(classes.main, classes.mainRaised)}>
  31. <DataSnackbarContent/>
  32. <DataLatestNews news={news} backend={backend}/>
  33. </div>
  34. <Footer />
  35. </div>
  36. );
  37. }
  38. export default LatestNews;
  39. export async function getServerSideProps(context) {
  40. var news = [];
  41. const backend = process.env.BACKEND_SERVER_URI;
  42. var res = await GetLatestNews.GetNews();
  43. if (res["STATUS"] === 1) {
  44. news = res["DATA"]["latestNews"];
  45. }
  46. return {
  47. props: { news, backend }, // will be passed to the page component as props
  48. };
  49. }