Open seto1 opened 1 week ago
このコミットで追加されたこの判定を外すと送信できるようになる
if(!$this->useApprover) continue;
この対応だけだとアップロードしたファイルのリネーム前のファイルが削除されずに残ってしまう
https://github.com/baserproject/basercms/issues/4036#issuecomment-2490106093
例えばブログ記事のアイキャッチの場合、 00000006_eye_catch.jpg
のようなファイル名になるのが正しいが、元のファイル名のファイルも重複して存在する状態になる
応急処置感がすごいけど一時的な対応案
public function mailMailMessagebeforeValidate($event) {
$Model = $event->subject();
if (empty($Model->mailContent['MailContent']['save_info'])) {
$Model->Behaviors->BcUpload->useApprover = true;
}
}
これだとファイルが残るので、「送信情報をデータベースに保存する」に設定した上で送信後に削除する案
public function mailMailAfterSendEmail($event) {
$Controller = $event->subject();
// 必要に応じて条件追加
$Controller->MailMessage->delete($event->data['data']['MailMessage']['id']);
}
@seto1 こちらも応急処置感すごいけど、そして、元のファイルも存在しちゃうけど、候補という事で、、、
$this->useApprover = (CakePlugin::loaded('CuApprover') && in_array($Model->alias, ['Content', 'BlogPost', 'MailMessage']));
baserCMS version : 4.8.2