木下です。
現在、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();
となっているのが正しいかと思われます。