TODO #13935

ブログのコメントが送信できない

Added by 安部 友啓 over 2 years ago. Updated over 2 years ago.

Status:解決Start date:
Priority:通常Due date:
Assignee:滝下 真玄% Done:

90%

Category:バグ
Target version:正式版リリース準備

Description

ブログのコメント機能で、一度エラーを表示させた(URLにhogehogeと入力してエラーを出力させる)後は
正しい入力を行なってもコメントが送信できずにエラーが表示される。


Associated revisions

Revision ac88eba5
Added by Masaharu Takishita over 2 years ago

fix #13935 ブログのコメントが送信できない (#514)

  • ブログコメントのJS部分のリファクタリング。

何らかの入力エラーがあると、それ以降CSRFエラーで成功しなくなる。このためadminで使われている$.bcTokenを利用。
また、スクリプトがベーステーマ内でインライン展開されているため、各テーマでスクリプトがコピーされている問題がある。
とりあえずスクリプト部分をエレメント化し、さらに純粋なJS部分はJSファイル化。
このコミットでは各テーマの修正は行わない。後のコミットで。

  • ビルトインテーマに新形式のコメント投稿スクリプトを対応
  • fix #13935 ブログコメント投稿で、バリデーション等に失敗した後に投稿できない不具合の修正。管理画面以外でのbcToken対応
  • bcToken.jsのトークン生成時のクエリストリングはURL指定に含めるように仕様変更

History

#1 Updated by 江頭 竜二 over 2 years ago

  • Target version set to 正式版リリース準備

#2 Updated by 江頭 竜二 over 2 years ago

  • Category set to バグ

#3 Updated by 滝下 真玄 over 2 years ago

  • Assignee set to 滝下 真玄

現象を確認。
ページ内にエラーが出るのとダイアログでエラーがでるのと2種類あるけど、2つあるってなんかきもいですね(^^;

#4 Updated by 滝下 真玄 over 2 years ago

JSでcapthaIdを変更しているのにBlogComment.captcha_idのhiddenに保存していないのが第一の原因。
しかしエラー時の内容そのままのcaptchaでもエラーになるので、別の要因もあるかもしれない。
あと、これ各テーマにハードコピーされているからヤバイですね。elementなり素のJSファイルなりにした方が良いと思います。

【追記】
CSRFエラーでした。しかしこのケースの直し方がちょっと分からない。

#5 Updated by 滝下 真玄 over 2 years ago

  • Status changed from 担当 to 解決
  • % Done changed from 0 to 90

修正してPRしました

Also available in: Atom PDF