// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved. // See License.txt for license information. var UserStore = require('../stores/user_store.jsx'); var utils = require('../utils/utils.jsx'); var Constants = require('../utils/constants.jsx'); export default class PostInfo extends React.Component { constructor(props) { super(props); this.state = {}; } shouldShowComment(state, type, isOwner) { if (state === Constants.POST_FAILED || state === Constants.POST_LOADING) { return false; } return isOwner || (this.props.allowReply === 'true' && type !== 'Comment'); } createDropdown() { var post = this.props.post; var isOwner = UserStore.getCurrentId() === post.user_id; var isAdmin = utils.isAdmin(UserStore.getCurrentUser().roles); if (post.state === Constants.POST_FAILED || post.state === Constants.POST_LOADING || post.state === Constants.POST_DELETED) { return ''; } var type = 'Post'; if (post.root_id && post.root_id.length > 0) { type = 'Comment'; } if (!this.shouldShowComment(post.state, type, isOwner)) { return ''; } var dropdownContents = []; var dataComments = 0; if (type === 'Post') { dataComments = this.props.commentCount; } if (isOwner) { dropdownContents.push(