1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-20 16:31:33 +02:00

Fixes for processInternallyFailedPayment

This commit is contained in:
Benjamin Beganović 2021-08-27 16:19:10 +02:00
parent 760de008f8
commit 38ceefc536

View File

@ -360,16 +360,15 @@ class BaseDriver extends AbstractPaymentDriver
public function processInternallyFailedPayment($gateway, $e)
{
$this->unWindGatewayFees($this->payment_hash);
if (!is_null($this->payment_hash)) {
$this->unWindGatewayFees($this->payment_hash);
}
if ($e instanceof CheckoutHttpException) {
$error = $e->getBody();
}
else if ($e instanceof Exception) {
} else if ($e instanceof Exception) {
$error = $e->getMessage();
}
else
} else
$error = $e->getMessage();
PaymentFailureMailer::dispatch(
@ -379,29 +378,29 @@ class BaseDriver extends AbstractPaymentDriver
$this->payment_hash
);
$nmo = new NinjaMailerObject;
$nmo->mailable = new NinjaMailer( (new ClientPaymentFailureObject($gateway->client, $error, $gateway->client->company, $this->payment_hash))->build() );
$nmo->company = $gateway->client->company;
$nmo->settings = $gateway->client->company->settings;
if (!is_null($this->payment_hash)) {
$invoices = Invoice::whereIn('id', $this->transformKeys(array_column($this->payment_hash->invoices(), 'invoice_id')))->withTrashed()->get();
$nmo = new NinjaMailerObject;
$nmo->mailable = new NinjaMailer((new ClientPaymentFailureObject($gateway->client, $error, $gateway->client->company, $this->payment_hash))->build());
$nmo->company = $gateway->client->company;
$nmo->settings = $gateway->client->company->settings;
$invoices->each(function ($invoice){
$invoices = Invoice::whereIn('id', $this->transformKeys(array_column($this->payment_hash->invoices(), 'invoice_id')))->withTrashed()->get();
$invoice->service()->deletePdf();
$invoices->each(function ($invoice) {
});
$invoice->service()->deletePdf();
});
$invoices->first()->invitations->each(function ($invitation) use ($nmo){
$invoices->first()->invitations->each(function ($invitation) use ($nmo) {
if ($invitation->contact->send_email && $invitation->contact->email) {
if ($invitation->contact->send_email && $invitation->contact->email) {
$nmo->to_user = $invitation->contact;
NinjaMailerJob::dispatch($nmo);
}
});
$nmo->to_user = $invitation->contact;
NinjaMailerJob::dispatch($nmo);
}
});
}
SystemLogger::dispatch(