PageListMeta.js 983 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import React from 'react';
  2. export default class PageListMeta extends React.Component {
  3. isPortalPath(path) {
  4. if (path.match(/.*\/$/)) {
  5. return true;
  6. }
  7. return false;
  8. }
  9. render() {
  10. // TODO isPortal()
  11. const page = this.props.page;
  12. // portal check
  13. let PortalLabel;
  14. if (this.isPortalPath(page.path)) {
  15. PortalLabel = <span className="label label-info">PORTAL</span>;
  16. }
  17. let CommentCount;
  18. if (page.commentCount > 0) {
  19. CommentCount = <span><i className="fa fa-comment" />{page.commentCount}</span>;
  20. }
  21. let LikerCount;
  22. if (page.liker.length > 0) {
  23. LikerCount = <span><i className="fa fa-thumbs-up" />{page.liker.length}</span>;
  24. }
  25. return (
  26. <span className="page-list-meta">
  27. {PortalLabel}
  28. {CommentCount}
  29. {LikerCount}
  30. </span>
  31. );
  32. }
  33. }
  34. PageListMeta.propTypes = {
  35. page: React.PropTypes.object.isRequired,
  36. };
  37. PageListMeta.defaultProps = {
  38. page: {},
  39. };