Reviews.js 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. import React from 'react';
  2. import { connect } from "react-redux";
  3. import { getAllReviews, postReviewSubmit } from "../../actions/reviews";
  4. import './reviews.scss';
  5. import Sidebar from '../../components/sidebar/Sidebar';
  6. import Footer from '../../components/footer/Footer';
  7. import ReviewForm from '../../components/review-form/ReviewForm';
  8. const reviewsInitial = [
  9. {
  10. name: "Unknown Raccoon",
  11. date: new Date("07-10-2019").toDateString().slice(4),
  12. text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
  13. },
  14. {
  15. name: "Htoto Echo",
  16. date: new Date("07-29-2019").toDateString().slice(4),
  17. text: "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
  18. },
  19. {
  20. name: "Vasya Petrovich",
  21. date: new Date("08-06-2019").toDateString().slice(4),
  22. text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
  23. },
  24. {
  25. name: "Petya Petrov",
  26. date: new Date("08-07-2019").toDateString().slice(4),
  27. text: "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
  28. },
  29. {
  30. name: "Tanya Sash",
  31. date: new Date("08-08-2019").toDateString().slice(4),
  32. text: "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
  33. }
  34. ]
  35. export class Reviews extends React.Component {
  36. componentDidMount() {
  37. this.props.getAllReviews()
  38. }
  39. render() {
  40. const { postReviewSubmit } = this.props;
  41. //const { reviews, postReviewSubmit } = this.props;
  42. //console.log(reviews);
  43. return (
  44. <>
  45. <Sidebar/>
  46. <div className="container-wrap events">
  47. <div className="caption-page">
  48. <h2>Reviews page</h2>
  49. </div>
  50. </div>
  51. <div className="container-wrap">
  52. <div className="reviews-wrap">
  53. {
  54. reviewsInitial.reverse().map((reviewer, ind) => ind < 10 &&
  55. <div className="reviews-item" key={ind}>
  56. <div className="review-content">
  57. <div className="reviews-name">{reviewer.name}</div>
  58. <div className="reviews-date">
  59. <i className="fa fa-calendar-o" aria-hidden="true"></i>
  60. {reviewer.date}
  61. </div>
  62. <div className="reviews-text">{reviewer.text}</div>
  63. </div>
  64. </div>
  65. )
  66. }
  67. </div>
  68. <div className="reviews-wrap-add">
  69. <h3>Send your reviews</h3>
  70. <ReviewForm postReviewSubmit={postReviewSubmit}/>
  71. </div>
  72. </div>
  73. <Footer/>
  74. </>
  75. )
  76. }
  77. }
  78. const mapStateToProps = state => {
  79. return {
  80. reviews: state.allReviews.reviews
  81. };
  82. };
  83. export default connect(
  84. mapStateToProps,
  85. { getAllReviews, postReviewSubmit }
  86. )(Reviews);