diff --git a/app/Models/Payment.php b/app/Models/Payment.php index 1a6e79830707..b6f8296a4c3d 100644 --- a/app/Models/Payment.php +++ b/app/Models/Payment.php @@ -299,11 +299,14 @@ class Payment extends BaseModel public function translatedType() { - if (! $this->type) { + if (! $this->type_id) { return ''; } - return ctrans('texts.payment_type_'.$this->type->name); + $pt = new PaymentType(); + + return $pt->name($this->type_id); + } public function gateway_type() diff --git a/app/Models/PaymentType.php b/app/Models/PaymentType.php index e6222ba941c4..9170b3d53d21 100644 --- a/app/Models/PaymentType.php +++ b/app/Models/PaymentType.php @@ -148,4 +148,12 @@ class PaymentType extends StaticModel return self::CREDIT_CARD_OTHER; } } + + public function name($id) + { + if(isset($this->type_names[$id])) + return ctrans("texts.".$this->type_names[$id]); + + return ctrans('texts.manual_entry'); + } } diff --git a/app/Services/Pdf/PdfBuilder.php b/app/Services/Pdf/PdfBuilder.php index c57fef889f33..eb2feebc3bf7 100644 --- a/app/Services/Pdf/PdfBuilder.php +++ b/app/Services/Pdf/PdfBuilder.php @@ -244,7 +244,7 @@ class PdfBuilder $element['elements'][] = ['element' => 'td', 'content' => $invoice->number]; $element['elements'][] = ['element' => 'td', 'content' => $this->translateDate($payment->date, $this->service->config->date_format, $this->service->config->locale) ?: ' ']; - $element['elements'][] = ['element' => 'td', 'content' => $payment->type ? $payment->type->name : ctrans('texts.manual_entry')]; + $element['elements'][] = ['element' => 'td', 'content' => $payment->translatedType()]; $element['elements'][] = ['element' => 'td', 'content' => $this->service->config->formatMoney($payment->pivot->amount) ?: ' ']; $tbody[] = $element; @@ -279,7 +279,7 @@ class PdfBuilder return [ ['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.amount_paid'), $this->service->config->formatMoney($this->payment_amount_total))], - ['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.payment_method'), $payment->type ? $payment->type->name : ctrans('texts.manual_entry'))], + ['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.payment_method'), $payment->translatedType())], ['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.payment_date'), $this->translateDate($payment->date, $this->service->config->date_format, $this->service->config->locale) ?: ' ')], ]; } diff --git a/app/Services/PdfMaker/Design.php b/app/Services/PdfMaker/Design.php index a2d4927a6ebd..7bc942eb51b5 100644 --- a/app/Services/PdfMaker/Design.php +++ b/app/Services/PdfMaker/Design.php @@ -601,7 +601,7 @@ class Design extends BaseDesign $element['elements'][] = ['element' => 'td', 'content' => $invoice->number]; $element['elements'][] = ['element' => 'td', 'content' => $this->translateDate($payment->date, $this->client->date_format(), $this->client->locale()) ?: ' ']; - $element['elements'][] = ['element' => 'td', 'content' => $payment->type ? $payment->type->name : ctrans('texts.manual_entry')]; + $element['elements'][] = ['element' => 'td', 'content' => $payment->translatedType()]; $element['elements'][] = ['element' => 'td', 'content' => Number::formatMoney($payment->pivot->amount, $this->client) ?: ' ']; $tbody[] = $element; diff --git a/resources/views/portal/ninja2020/payments/show.blade.php b/resources/views/portal/ninja2020/payments/show.blade.php index 546f55a89dee..80c443d700ad 100644 --- a/resources/views/portal/ninja2020/payments/show.blade.php +++ b/resources/views/portal/ninja2020/payments/show.blade.php @@ -49,16 +49,16 @@ @endif - @if(!empty($payment->type?->name) && !is_null($payment->type?->name)) +
{{ ctrans('texts.method') }}
- {{ $payment->type?->name }} + {{ $payment->translatedType() }}
- @endif + @if(!empty($payment->formattedAmount()) && !is_null($payment->formattedAmount()))