Extract totals table for statements into separate methods

This commit is contained in:
Benjamin Beganović 2021-08-24 16:13:52 +02:00
parent 50a666b1ce
commit 6c32d905ae
2 changed files with 30 additions and 7 deletions

View File

@ -135,9 +135,7 @@ class Design extends BaseDesign
], ],
'statement-invoice-table-totals' => [ 'statement-invoice-table-totals' => [
'id' => 'statement-invoice-table-totals', 'id' => 'statement-invoice-table-totals',
'elements' => [ 'elements' => $this->statementInvoiceTableTotals(),
['element' => 'p', 'content' => '$outstanding_label: $outstanding'],
],
], ],
'statement-payment-table' => [ 'statement-payment-table' => [
'id' => 'statement-payment-table', 'id' => 'statement-payment-table',
@ -145,9 +143,7 @@ class Design extends BaseDesign
], ],
'statement-payment-table-totals' => [ 'statement-payment-table-totals' => [
'id' => 'statement-payment-table-totals', 'id' => 'statement-payment-table-totals',
'elements' => [ 'elements' => $this->statementPaymentTableTotals(),
['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.amount_paid'), 1000)],
],
], ],
'statement-aging-table' => [ 'statement-aging-table' => [
'id' => 'statement-aging-table', 'id' => 'statement-aging-table',
@ -377,6 +373,17 @@ class Design extends BaseDesign
]; ];
} }
public function statementInvoiceTableTotals(): array
{
if ($this->type !== self::STATEMENT) {
return [];
}
return [
['element' => 'p', 'content' => '$outstanding_label: $outstanding'],
];
}
/** /**
* Parent method for building payments table within statement. * Parent method for building payments table within statement.
* *
@ -413,6 +420,17 @@ class Design extends BaseDesign
]; ];
} }
public function statementPaymentTableTotals(): array
{
if ($this->type !== self::STATEMENT) {
return [];
}
return [
['element' => 'p', 'content' => \sprintf('%s: %s', ctrans('texts.amount_paid'), 1000)],
];
}
public function statementAgingTable(): array public function statementAgingTable(): array
{ {
if ($this->type !== self::STATEMENT) { if ($this->type !== self::STATEMENT) {

View File

@ -297,7 +297,12 @@
<script> <script>
// Clear up space a bit, if [product-table, tasks-table, delivery-note-table] isn't present. // Clear up space a bit, if [product-table, tasks-table, delivery-note-table] isn't present.
document.addEventListener('DOMContentLoaded', () => { document.addEventListener('DOMContentLoaded', () => {
['product-table', 'task-table', 'delivery-note-table'].forEach((tableIdentifier) => { let tables = [
'product-table', 'task-table', 'delivery-note-table',
'statement-invoice-table', 'statement-payment-table', 'statement-aging-table-totals',
];
tables.forEach((tableIdentifier) => {
document.getElementById(tableIdentifier).childElementCount === 0 document.getElementById(tableIdentifier).childElementCount === 0
? document.getElementById(tableIdentifier).style.display = 'none' ? document.getElementById(tableIdentifier).style.display = 'none'
: ''; : '';