var React = require('react/addons') var moment = require('moment') var CodeViewer = require('./CodeViewer') var CodeEditModal = require('./CodeEditModal') var CodeDeleteModal = require('./CodeDeleteModal') var NoteEditModal = require('./NoteEditModal') var NoteDeleteModal = require('./NoteDeleteModal') var MarkdownPreview = require('./MarkdownPreview') var ProfileImage = require('./ProfileImage') var Modal = require('../Mixins/Modal') var ForceUpdate = require('../Mixins/ForceUpdate') module.exports = React.createClass({ mixins: [ForceUpdate(60000), Modal], propTypes: { article: React.PropTypes.object, showOnlyWithTag: React.PropTypes.func, planet: React.PropTypes.object }, getInitialState: function () { return { isEditModalOpen: false } }, openEditModal: function () { if (this.props.article == null) return switch (this.props.article.type) { case 'code' : this.openModal(CodeEditModal, {code: this.props.article, planet: this.props.planet}) break case 'note' : this.openModal(NoteEditModal, {note: this.props.article, planet: this.props.planet}) } }, openDeleteModal: function () { if (this.props.article == null) return switch (this.props.article.type) { case 'code' : this.openModal(CodeDeleteModal, {code: this.props.article, planet: this.props.planet}) break case 'note' : this.openModal(NoteDeleteModal, {note: this.props.article, planet: this.props.planet}) } }, render: function () { var article = this.props.article if (article == null) { return (