sou 7 лет назад
Родитель
Сommit
1c9c6fe950
3 измененных файлов с 9 добавлено и 12 удалено
  1. 5 5
      lib/form/comment.js
  2. 1 1
      resource/js/app.js
  3. 3 6
      resource/js/components/PageComment/CommentForm.js

+ 5 - 5
lib/form/comment.js

@@ -4,9 +4,9 @@ var form = require('express-form')
   , field = form.field;
 
 module.exports = form(
-  field('commentForm.page_id').trim().required(),
-  field('commentForm.revision_id').trim().required(),
-  field('commentForm.comment').trim().required(),
-  field('commentForm.comment_position').trim().toInt(),
-  field('commentForm.is_markdown').trim().toBooleanStrict()
+  field('page_id').trim().required(),
+  field('revision_id').trim().required(),
+  field('comment').trim().required(),
+  field('comment_position').trim().toInt(),
+  field('is_markdown').trim().toBooleanStrict()
 );

+ 1 - 1
resource/js/app.js

@@ -131,7 +131,7 @@ Object.keys(componentMappings).forEach((key) => {
 // render comment form
 const writeCommentElem = document.getElementById('page-comment-write');
 if (writeCommentElem) {
-  ReactDOM.render(<CommentForm crowi={crowi} pageId={pageId}/>, writeCommentElem);
+  ReactDOM.render(<CommentForm crowi={crowi} pageId={pageId} revisionId={pageRevisionId} />, writeCommentElem);
 }
 
 // render components with refs to another component

+ 3 - 6
resource/js/components/PageComment/CommentForm.js

@@ -35,10 +35,9 @@ export default class CommentForm extends React.Component {
   }
 
   postComment(event) {
-    let mk = this.state.isMarkdown ? 'Markdown' : 'Plain';
-    alert(mk + ' Comment: ' + this.state.comment);
-    // this.props.crowi.apiPost('/comments.add', {page_id: this.props.pageId});
     event.preventDefault();
+    console.log(this.props.crowi.csrfToken);
+    this.props.crowi.apiPost('/comments.add', JSON.stringify({comment: this.state.comment, page_id: this.props.pageId, revision_id: this.props.revisionId}));
   }
 
   render() {
@@ -57,9 +56,6 @@ export default class CommentForm extends React.Component {
                 <input type="checkbox" id="comment-form-is-markdown" name="isMarkdown" value="1" onChange={this.handleChange} /> Markdown<br />
               </div>
               <div className="comment-submit">
-                <input type="hidden" name="_csrf" value="{{ csrf() }}" />
-                <input type="hidden" name="commentForm[page_id]" value="{{ page._id.toString() }}" />
-                <input type="hidden" name="commentForm[revision_id]" value="{{ revision._id.toString() }}" />
                 <div className="pull-right">
                   <span className="text-danger" id="comment-form-message"></span>
                   <button type="submit" value="Submit" id="comment-form-button" className="fcbtn btn btn-sm btn-outline btn-rounded btn-primary btn-1b">
@@ -79,4 +75,5 @@ export default class CommentForm extends React.Component {
 CommentForm.propTypes = {
   crowi: PropTypes.object.isRequired,
   pageId: PropTypes.string,
+  revisionId: PropTypes.string,
 };