Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

【メール】送信情報をデータベースに保存しない場合にファイルを添付すると送信に失敗する #4036

Open
seto1 opened this issue Nov 21, 2024 · 5 comments
Labels
Bug バグ Ver4 バージョン4

Comments

@seto1
Copy link
Collaborator

seto1 commented Nov 21, 2024

baserCMS version : 4.8.2

[SocketException] ファイルが見つかりません。: "/var/www/html/_baser/seto1/app/webroot/files/mail/limited/1/messages/Array"
@seto1
Copy link
Collaborator Author

seto1 commented Nov 21, 2024

関連: #1839

@seto1
Copy link
Collaborator Author

seto1 commented Nov 21, 2024

このコミットで追加されたこの判定を外すと送信できるようになる

851d75b#diff-98e69007c6e93decfe08678a50483282edb69da15fa79303e030bd74765f260eR136

if(!$this->useApprover) continue;

@ryuring ryuring added Bug バグ Ver4 バージョン4 labels Nov 21, 2024
@seto1
Copy link
Collaborator Author

seto1 commented Nov 26, 2024

この対応だけだとアップロードしたファイルのリネーム前のファイルが削除されずに残ってしまう
#4036 (comment)
例えばブログ記事のアイキャッチの場合、 00000006_eye_catch.jpg のようなファイル名になるのが正しいが、元のファイル名のファイルも重複して存在する状態になる

@seto1
Copy link
Collaborator Author

seto1 commented Nov 26, 2024

応急処置感がすごいけど一時的な対応案

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']);
}

@ryuring
Copy link
Collaborator

ryuring commented Nov 26, 2024

@seto1 こちらも応急処置感すごいけど、そして、元のファイルも存在しちゃうけど、候補という事で、、、

$this->useApprover = (CakePlugin::loaded('CuApprover') && in_array($Model->alias, ['Content', 'BlogPost', 'MailMessage']));

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug バグ Ver4 バージョン4
Projects
None yet
Development

No branches or pull requests

2 participants