Project

General

Profile

Bug(バグ) #1959

pc_backend のフォームからデータ作成したときに500エラーとなる

Added by Shinichi Urabe over 9 years ago. Updated over 9 years ago.

Status:
Pending Review(レビュー待ち)
Priority:
Normal(通常)
Start date:
2011-03-19
Due date:
% Done:

50%

3.6 で発生するか:
3.8 で発生するか:
Unknown (未調査)

Description

内容

管理画面のフォームならなんでもいいので、データの投稿をする
すると、sfUser::getMemberId() が呼べないとエラーになる

原因

添付の画像を参照

スクリーンショット(2011-03-19_17.03.16).png View (116 KB) Shinichi Urabe, 2011-03-19 17:04

History

#1 Updated by Naoya Tozuka over 9 years ago

原因

  • opIdCallPlugin を入れたことにより、pc_backend を含む全てのフォームで form.save イベント発生時に IdCallUtil::processFormPostSave() が呼ばれる
  • しかし、processFormPostSave() では pc_backend での動作を考慮せずにメンバーIDを取得しようとしてエラーが発生

パッチリリースまでの応急処置


diff --git a/lib/util/IdCallUtil.class.php b/lib/util/IdCallUtil.class.php
index 3321184..e6308bd 100644
--- a/lib/util/IdCallUtil.class.php
+++ b/lib/util/IdCallUtil.class.php
@@ -257,6 +257,11 @@ class IdCallUtil

   public function processFormPostSave($event)
   {
+    if ('pc_backend' == sfConfig::get('sf_app'))
+    {
+      return true;
+    }
+
     $form = $event->getSubject();
     $author = sfContext::getInstance()->getUser()->getMember()->getName();
     $i18n = sfContext::getInstance()->getI18N();

#2 Updated by Shinichi Urabe over 9 years ago

  • Status changed from New(新規) to Pending Review(レビュー待ち)
  • Assignee set to Shinichi Urabe
  • % Done changed from 0 to 50

Also available in: Atom PDF