add pagination to footer

This commit is contained in:
Jonas Heinrich 2025-03-08 17:09:38 +01:00
parent 232c81e4b1
commit 4e210c1698
4 changed files with 70 additions and 29 deletions

View file

@ -17,7 +17,36 @@ General default settings which should be set
- User profile (company contact information), such as mail, address, phone and mail - User profile (company contact information), such as mail, address, phone and mail
- System settings in general and invoice: Upload company logo for login and invoice logo - System settings in general and invoice: Upload company logo for login and invoice logo
(WebP image format currently not supported https://github.com/InvoicePlane/InvoicePlane/issues/1189 ). (WebP image format currently not supported https://github.com/InvoicePlane/InvoicePlane/issues/1189 ).
- System settings - invoice: Enable embed ZUGFeRD XML into PDF (e-invoice) - System settings - invoice
- Enable embed ZUGFeRD XML into PDF (e-invoice)
- PDF footer
```
<hr class="footer">
<table class="footer" border=0 width=100%>
<tr>
<td class="first-child">
Geschäftsführer:<br>
Engelbert Heinrich<br>
Jürgen Heinrich
</td>
<td>
Sparkasse Pforzheim-Calw<br>
BLZ 666 500 85 Konto-Nr. 89 187 67<br>
IBAN: DE70 6665 0085 0008 9187 67<br>
SWIFT-BIC: PZHSDE66XXX
</td>
<td>
Amtsgericht Mannheim HRB 719187<br>
Steuer-Nummer: 48 051 23774<br>
Sitz der Gesellschaft in Tiefenbronn<br>
USt-IdNr. DE293948256
</td>
</table>
<div class="page-number">Seite: {PAGENO}/{nb}</div>
```
- System settings - general, currency settings - System settings - general, currency settings
- Change symbol to: € - Change symbol to: €
- Symbol after sum with space - Symbol after sum with space

6
flake.lock generated
View file

@ -2,10 +2,10 @@
"nodes": { "nodes": {
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1739834344, "lastModified": 1741310760,
"narHash": "sha256-PUAcU3YlKNFYrBBHkqshO4wRfMunzhMTEIH1dyhjTtk=", "narHash": "sha256-aizILFrPgq/W53Jw8i0a1h1GZAAKtlYOrG/A5r46gVM=",
"ref": "nixpkgs-unstable", "ref": "nixpkgs-unstable",
"rev": "f0295845e58ada369322524631821b01c0db13a7", "rev": "de0fe301211c267807afd11b12613f5511ff7433",
"shallow": true, "shallow": true,
"type": "git", "type": "git",
"url": "https://github.com/NixOS/nixpkgs" "url": "https://github.com/NixOS/nixpkgs"

View file

@ -35,18 +35,8 @@
services.invoiceplane.sites."localhost" = { services.invoiceplane.sites."localhost" = {
enable = true; enable = true;
settings = { settings.IP_URL = "http://localhost:8080";
IP_URL = "http://localhost:8080";
#DISABLE_SETUP = true;
#SETUP_COMPLETED = true;
}; };
};
# FIXME
# https://github.com/NixOS/nixpkgs/pull/309908
services.caddy.virtualHosts."http://localhost".logFormat = lib.mkForce ''
output discard
'';
nixos-shell.mounts.extraMounts = { nixos-shell.mounts.extraMounts = {
"/var/lib/invoiceplane/localhost/pdf" = { "/var/lib/invoiceplane/localhost/pdf" = {

View file

@ -15,7 +15,7 @@
float: right; float: right;
} }
.company { .company {
font-size: 0.8rem; font-size: 0.9rem;
} }
.invoice-details table { .invoice-details table {
width: 200px; width: 200px;
@ -35,6 +35,11 @@
color: #408236; color: #408236;
font-size: 0.8rem; font-size: 0.8rem;
} }
.page-number {
font-size: 0.8rem;
margin-top: 1.5rem;
text-align: center;
}
table.footer td.first-child { table.footer td.first-child {
width: 180px; width: 180px;
} }
@ -43,6 +48,14 @@
} }
h1.invoice-title { h1.invoice-title {
color: #3a3a3a; color: #3a3a3a;
margin-bottom: 0rem;
font-weight: 800;
}
p.invoice-subtitle {
color: #3a3a3a;
font-weight: bold;
margin-top: 0.5rem;
margin-bottom: 2rem;
} }
</style> </style>
</head> </head>
@ -56,7 +69,9 @@
<div id="client" class="client"> <div id="client" class="client">
<small class="sender">Heinrich GmbH Blumenstraße 16-18 75233 Tiefenbronn</small> <small class="sender">Heinrich GmbH Blumenstraße 16-18 75233 Tiefenbronn</small>
<div class="client_address"> <div class="client_address">
<b>per Email: info@test.de</b><br> <?php if ($invoice->client_email && $custom_fields['invoice']['Via Email']) {
echo '<b>per Email: ' . $invoice->client_email . '</b><br>';
} ?>
<?php if ($invoice->client_title) { <?php if ($invoice->client_title) {
echo $invoice->client_title . '<br>'; echo $invoice->client_title . '<br>';
} ?> } ?>
@ -164,6 +179,16 @@
</div> </div>
<h1 class="invoice-title"><?php echo trans('invoice') ?></h1> <h1 class="invoice-title"><?php echo trans('invoice') ?></h1>
<?php
$rechnungs_betreff = $custom_fields['invoice']['Betreff'];
$rechnungs_text = $custom_fields['invoice']['Text'];
if ($rechnungs_betreff) {
echo '<p class="invoice-subtitle">' . $rechnungs_betreff . '</p>';
}
if ($rechnungs_text) {
echo '<p>' . $rechnungs_text . '</p>';
}
?>
<table class="item-table"> <table class="item-table">
<thead> <thead>
@ -211,7 +236,7 @@
<tr> <tr>
<td <?php echo($show_item_discounts ? 'colspan="5"' : 'colspan="4"'); ?> class="text-right"> <td <?php echo($show_item_discounts ? 'colspan="5"' : 'colspan="4"'); ?> class="text-right">
Nettosumme Summe
</td> </td>
<td class="text-right"><?php echo format_currency($invoice->invoice_item_subtotal); ?></td> <td class="text-right"><?php echo format_currency($invoice->invoice_item_subtotal); ?></td>
</tr> </tr>
@ -219,7 +244,7 @@
<?php if ($invoice->invoice_item_tax_total > 0) { ?> <?php if ($invoice->invoice_item_tax_total > 0) { ?>
<tr> <tr>
<td <?php echo($show_item_discounts ? 'colspan="5"' : 'colspan="4"'); ?> class="text-right"> <td <?php echo($show_item_discounts ? 'colspan="5"' : 'colspan="4"'); ?> class="text-right">
<?php _trans('item_tax'); ?> 19% MwSt.
</td> </td>
<td class="text-right"> <td class="text-right">
<?php echo format_currency($invoice->invoice_item_tax_total); ?> <?php echo format_currency($invoice->invoice_item_tax_total); ?>
@ -258,18 +283,9 @@
</td> </td>
</tr> </tr>
<?php endif; ?> <?php endif; ?>
<tr> <tr>
<td <?php echo($show_item_discounts ? 'colspan="5"' : 'colspan="4"'); ?> class="text-right"> <td <?php echo($show_item_discounts ? 'colspan="5"' : 'colspan="4"'); ?> class="text-right">
0% MwSt <b>Endsumme</b>
</td>
<td class="text-right">
0,00
</td>
</tr>
<tr>
<td <?php echo($show_item_discounts ? 'colspan="5"' : 'colspan="4"'); ?> class="text-right">
<b>Gesamtbetrag</b>
</td> </td>
<td class="text-right"> <td class="text-right">
<b><?php echo format_currency($invoice->invoice_balance); ?></b> <b><?php echo format_currency($invoice->invoice_balance); ?></b>
@ -289,5 +305,11 @@
<?php endif; ?> <?php endif; ?>
</footer> </footer>
<div>
Zahlungsbedingungen: zahlbar ab Rechnungsdatum innerhalb 8 Tagen rein netto.
<br><br>
Bitte überweisen Sie den Rechnungsbetrag unter Angabe der Rechnungsnummer auf unser Geschäftskonto. Vielen Dank.<br><br>
Wir weisen Sie darauf hin, dass Sie nach § 14b Abs. 1 S. 5 UStG verpflichtet sind, diese Rechnung zwei Jahre lang aufzubewahren.<br><br>
</div>
</body> </body>
</html> </html>