配置済みExpressフォームブロック編集後保存時の不具合

内容

設置したExpressフォームブロックで送信後の遷移先ページを設定していた場合、該当項目を編集し保存すると型エラーが発生し保存出来ない。
観測した際は設定を解除した際に発生しました。

環境

  • ConcreteCMS Version 9.3.5
  • PHP Version 8.3
  • MySQL Version 8.1

最新版では解消されている可能性がありますが、該当箇所のコードに変更はないようです。

エラー箇所

ソースファイル concrete/blocks/express_form/controller.phpsave() 関数477行目。

$data['redirectCID'] = ($data['redirectCID'] === '') ? 0 : $data['redirectCID'];

で型変換のエラーが発生します。
save() を下記の状態で Override することで回避出来ました。

application/blocks/express_form/controller.php

    public function save($data)
    {
        $data['redirectCID'] = (integer) $data['redirectCID']; //型変換
        parent::save($data);
    }