ホーム フォーラム バグ報告掲示板 ReceptionRestrictionsプラグインの申込制限数が正常に働かない

  • このトピックには4件の返信、1人の参加者があり、最後にtktoolsにより2年、 9ヶ月前に更新されました。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #10004
    tktools
    ゲスト

    木下です。

    現在、EasyMailを導入すべく所内で色々と検証してもらっているのですが

    *********************************************************************************************
    申込制限(ReceptionRestrictions)のプラグインについて気になる点がありました為ご連絡いたします。

    フォームの「申込制限(Reception restrictions)」の欄で「申込制限数」に任意の数を設定してテスト申し込みしてみました。
    確かに申込制限はされるのですが、1つのフォームに申込みをするだけで、申込制限を有効にしている全てのフォームに影響を与えてしまうようです。

    例えば、以下の例の通りentryの件数は各フォームで異っている場合であっても、どのフォームでも「申込制限数」27以下で設定をすると申込不可で、28以上で設定をすると申込可となりました。
    申込み制限数27なのに25件目で申込みが不可になってしまう点も気になります。

    ■例:申込ステータスがentryの件数が合計25件
    「イベント申し込みフォーム」:3件
    「テスト用イベントフォーム」:20件
    「重複チェックテストイベントフォーム」:2件
    *********************************************************************************************
    との報告がありました。

    DBを確認したところ
    過去に作成して削除したフォームでentry_statusがentryとなっていたもの:2件
    存在していました。
    制限数と申込数が違う理由はこれで理由が付きます。

    また、

    /em_laravel/app/Plugin/ReceptionRestrictions/Controllers/ReceptionRestrictionsController.php
    の317行目からが

    $entry = Histories::where( ‘entry_status’, ‘entry’ )
    ->get()
    ->count();

    となっていたのでフォーム毎の制限にならずに、全てのフォームの合計になって制限が掛かってしまっているようです。
    他の場所の絞り込みの条件を参考にすると、ここは

    $entry = Histories::where( ‘form_id’, ‘=’, $arg[‘forms’]->id )
    ->where( ‘entry_status’, ‘entry’ )
    ->get()
    ->count();

    となっているのが正しいかと思われます。

    #10013
    EasyMail管理者
    キーマスター

    ご連絡いただきありがとうございます。
    申込制限(ReceptionRestrictions)のプラグインについてですが投稿に記載していただいた通り、
    /em_laravel/app/Plugin/ReceptionRestrictions/Controllers/ReceptionRestrictionsController.php
    の317行目から記述に誤りがございました。
    申し訳ございません
    取り急ぎ、コードを下記に書き換えていただくと動作するようになるかと思います。

    $entry = Histories::where(‘form_id’, ‘=’, $arg[‘form’]->id)
    ->where(‘entry_status’, ‘entry’)
    ->get()
    ->count();

    お手数をおかけしますがよろしくお願い致します。

    #10018
    tktools
    ゲスト

    木下です。

    あ、
    [code]
    $arg[‘forms’]->id
    [/code]
    になってた。

    正しいコードの指摘ありがとうございます。

    #10019
    tktools
    ゲスト

    木下です。

    あ、

    $arg[‘forms’]->id

    になってた。

    正しいコードの指摘ありがとうございます。

    #10190
    tktools
    ゲスト

    木下です。

    この修正を行ったところ

    ***********************************************************
    先程テスト申し込みをしました所、申込制限が正常に動作していることが確認できました。
    ***********************************************************

    と報告がありました。
    ありがとうございました。

5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • このトピックに返信するにはログインが必要です。
あなたのサイトでEasyMailを
活用してください。

高機能で無料のメールフォーム「EasyMail」を
ぜひお試しください!