var React = require('react') var ReactRouter = require('react-router') var moment = require('moment') var _ = require('lodash') var ForceUpdate = require('../Mixins/ForceUpdate') var Markdown = require('../Mixins/Markdown') var ProfileImage = require('../Components/ProfileImage') var ModeIcon = require('../Components/ModeIcon') module.exports = React.createClass({ mixins: [ReactRouter.Navigation, ReactRouter.State, ForceUpdate(60000), Markdown], propTypes: { articles: React.PropTypes.array }, handleArticleClick: function (article) { return function () { this.props.selectArticle(article.id) }.bind(this) }, render: function () { var articles = this.props.articles.map(function (article) { if (article == null) return null var tags = _.isArray(article.Tags) && article.Tags.length > 0 ? article.Tags.map(function (tag) { return ( #{tag.name} ) }.bind(this)) : ( Not tagged yet ) var params = this.getParams() var isActive = this.props.currentArticle.id === article.id return (
  • by {article.User.profileName} {article.status != null ? article.status : moment(article.updatedAt).fromNow()}
    {article.status !== 'new' ? article.title : '(New article)'}
    {tags}
  • ) }.bind(this)) return (
      {articles}
    ) } })