Vulcan/packages/example-permissions/lib/components/comments/CommentsItem.jsx

35 lines
1 KiB
React
Raw Normal View History

/*
An item in the comments list.
Note: Comments.options.mutations.edit.check is defined in
modules/comments/mutations.js and is used both on the server when
performing the mutation, and here to check if the form link
should be displayed.
*/
import React from 'react';
import { Components, registerComponent } from 'meteor/vulcan:core';
import Comments from '../../modules/comments/collection.js';
import CommentsEditForm from './CommentsEditForm.jsx';
const CommentsItem = ({comment, currentUser}) =>
<div className={`comments-item ${comment.isDeleted ? 'comments-item-deleted' : ''}`}>
<h4 className="comments-item-author">{comment.user && comment.user.displayName}</h4>
<p className="comments-item-body">{comment.body}</p>
{Comments.options.mutations.edit.check(currentUser, comment) ?
<Components.ModalTrigger component={<Components.Icon name="edit" />}>
<CommentsEditForm currentUser={currentUser} documentId={comment._id} />
</Components.ModalTrigger>
: null
}
</div>
export default CommentsItem;