Vulcan/packages/nova-base-components/lib/posts/PostsDay.jsx
Comus Leong 464e20a96c eslint & clean up code, also fixed some bugs (#1515)
* [eslint] update eslint rules & add .eslintignore to ignore non-ready nova packages

* [clean-up] nova-voting

* [clean-up] [bug] nova-users: missing user parameter

* [clean-up] nova-users

* [clean-up] nova-subscribe

* [clean-up] nova-settings

* [clean-up] nova-rss

* [clean-up] [bug] nova-posts: correct UsersRemoveDeletePosts

* [clean-up] nova-posts

* [clean-up] nova-notifications

* [clean-up] [bug] nova-newsletter: no error.message on throw error

* [clean-up] nova-newsletter

* [clean-up] nova-lib

* [clean-up] nova-kadira

* [clean-up] nova-inject-data

* [clean-up] nova-getting-started

* [clean-up] nova-forms

* [clean-up] nova-events

* [clean-up] [bug] nova-embedly: no FlowRouter

* [clean-up] nova-embedly

* [clean-up] nova-email-templates

* [clean-up] nova-email

* [clean-up] nova-debug

* [clean-up] nova-core

* [clean-up] [bug] nova-comments: correct UsersRemoveDeleteComments

* [clean-up] nova-comments

* [clean-up] [bug] nova-cloudinary: use Telescope.settings.collection instand

* [clean-up] nova-cloudinary

* [clean-up] nova-categories

* [clean-up] nova-base-components

* [clean-up] nova-api

* [eslint] extends react recommended

* [clean-up] for jsx files

* [eslint] extends meteor recommended

* i forgot this one little change
2016-11-25 13:46:55 -05:00

54 lines
1.4 KiB
JavaScript

import Telescope from 'meteor/nova:lib';
import Posts from "meteor/nova:posts";
import { ListContainer } from "meteor/utilities:react-list-container";
import React, { PropTypes, Component } from 'react';
import moment from 'moment';
class PostsDay extends Component {
render() {
const {date, number} = this.props;
const terms = {
view: "top",
date: date,
after: moment(date).format("YYYY-MM-DD"),
before: moment(date).format("YYYY-MM-DD"),
enableCache: number <= 15 ? true : false, // only cache first 15 days
listId: `posts.list.${moment(date).format("YYYY-MM-DD")}`
};
const {selector, options} = Posts.parameters.get(terms);
const postsPerPage = Telescope.settings.get("postsPerPage", 10);
return (
<div className="posts-day">
<h4 className="posts-day-heading">{moment(date).format("dddd, MMMM Do YYYY")}</h4>
<ListContainer
collection={Posts}
publication="posts.list"
selector={selector}
options={options}
terms={terms}
joins={Posts.getJoins()}
component={Telescope.components.PostsList}
componentProps={{showHeader: false}}
listId={terms.listId}
limit={postsPerPage}
/>
</div>
)
}
}
PostsDay.propTypes = {
date: React.PropTypes.object,
number: React.PropTypes.number
}
module.exports = PostsDay;
export default PostsDay;