1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-16 08:02:40 +01:00
Commit Graph

309 Commits

Author SHA1 Message Date
David Bomba
abd53a8ece Fixes for protected string replacement in PDF 2021-12-15 08:34:25 +11:00
David Bomba
4091538161 Fixes for memory consumption with client statements 2021-12-08 10:16:13 +11:00
David Bomba
0cfe5bc39a Refactor invitations 2021-10-14 16:25:09 +11:00
David Bomba
7eaafe52c7 Minor fixes for terms being displayed on PDF 2021-10-13 12:52:44 +11:00
David Bomba
af8c56a1f1 Fixes for N+1 queries in Client Statements 2021-10-12 19:10:43 +11:00
Joshua Dwire
fcffafea9d Remove deprecated code for repeating header and footer in PDFs 2021-10-05 17:42:14 -04:00
Benjamin Beganović
5065f57c7a Show Invoice Ninja logo only for footer 2021-09-27 18:01:52 +02:00
Benjamin Beganović
50bbd6ddfd Fixes for table header not showing 2021-09-27 17:59:14 +02:00
Benjamin Beganović
b8f670d592 Replace pdf_variables with updated 2021-09-24 11:34:03 +02:00
David Bomba
cdd6bee046 Minor fixes 2021-09-21 22:45:28 +10:00
David Bomba
5837d544ea return early if no payments 2021-09-21 22:40:00 +10:00
David Bomba
7f28f859ee
Merge pull request #6680 from beganovich/v5-691
(v5) Show partial on the quotes
2021-09-21 07:25:46 +10:00
Benjamin Beganović
b62134a5ff Add partial_due to quotes in totals table 2021-09-20 15:00:54 +02:00
Benjamin Beganović
00e37ea681 Sum balance instead of amount 2021-09-20 14:55:16 +02:00
Benjamin Beganović
db81802dab Merge remote-tracking branch 'upstream/v5-develop' into v5-647 2021-09-20 14:41:39 +02:00
Benjamin Beganović
c1efcba422 Showing partial due on the quotes 2021-09-20 08:50:22 +02:00
Benjamin Beganović
a2eec608d9 Support for 1:1 columns 2021-09-20 08:47:54 +02:00
Benjamin Beganović
672c832b9b Hipster: Show statement label 2021-09-17 20:06:41 +02:00
Benjamin Beganović
6a8175b42d Fixes for $balance / $outstanding 2021-09-16 17:26:58 +02:00
Benjamin Beganović
5d5a87bc20 Fixes for invoices total amount 2021-09-16 17:21:25 +02:00
Benjamin Beganović
a87fb36cf1 Fixes for showing non-range invoices 2021-09-16 15:04:24 +02:00
David Bomba
aa0f1b3bdf Client Statements 2021-08-25 12:03:58 +10:00
David Bomba
f29318d665 Client Statements 2021-08-25 11:41:07 +10:00
Benjamin Beganović
6c32d905ae Extract totals table for statements into separate methods 2021-08-24 16:13:52 +02:00
Benjamin Beganović
50a666b1ce Fixes for payment amount 2021-08-24 16:09:15 +02:00
Benjamin Beganović
00dbec0ce1 Functionality to inject the setting if it doesn't exists 2021-08-24 16:06:34 +02:00
Benjamin Beganović
1f341fb29a Option to pass show_payment_table for statementPaymentTable 2021-08-24 15:36:08 +02:00
Benjamin Beganović
a730900a09 Enable passing aging in the context 2021-08-24 15:33:41 +02:00
Benjamin Beganović
cc95f89a9c Design.php:
- Add `aging` property
- Add `statement-invoice-table-totals`, `statement-payment-table-totals`
- Update `entityDetails` for statements
2021-08-24 15:33:23 +02:00
Benjamin Beganović
8a188dd731 Scaffold statement-aging-table 2021-08-23 14:50:39 +02:00
Benjamin Beganović
2709572276 Support for payments on statement 2021-08-23 14:22:07 +02:00
Benjamin Beganović
9dc61da56e Add option to accept payments in the Design 2021-08-23 14:21:28 +02:00
Benjamin Beganović
56b48ee3b7 Skip rendering statements table if invoices is null 2021-08-23 14:05:17 +02:00
Benjamin Beganović
712b8d882a Update constants on DELIVERY_NOTE and STATEMENT and scaffold statementInvoiceTable 2021-08-20 15:39:27 +02:00
Benjamin Beganović
4cbdc8b521 Construct & update entity if invoices is available in context 2021-08-20 15:38:15 +02:00
Benjamin Beganović
790c8690cd Add $dir & $dir_text_align variables 2021-08-16 11:11:34 +02:00
Benjamin Beganović
5a4e009960 nl2br on line items 2021-08-09 16:49:12 +02:00
Benjamin Beganović
fbe0d3e8bd Update references to process_markdown flag 2021-08-09 14:31:31 +02:00
Benjamin Beganović
ce78c1bc94 Process markdown if process_markdown is available 2021-08-09 14:24:50 +02:00
Benjamin Beganović
ed22c62c42 wip 2021-08-04 11:50:20 +02:00
Benjamin Beganović
5123eda1e6 Add delivery note label to pdfs 2021-08-03 13:38:33 +02:00
Benjamin Beganović
539286d85b Enable nl2br 2021-08-03 13:00:32 +02:00
Benjamin Beganović
3a30a527ed Process markdown on global level instead of line items 2021-08-03 11:56:50 +02:00
Benjamin Beganović
d1ad3bcb26
Merge pull request #6360 from beganovich/v5-601-commonmark
(v5) Markdown support on line items
2021-07-29 12:56:25 +02:00
Benjamin Beganović
1073e70f70 Hide $oustanding from Quotes' PDF 2021-07-29 12:55:30 +02:00
Benjamin Beganović
5b8d685a52 Enable markdown processing on line items 2021-07-29 11:35:07 +02:00
Benjamin Beganović
d69f3dd0d0 Show correct variables for credits PDF 2021-06-28 12:11:57 +02:00
Benjamin Beganović
61eea4fde2 Fix issue with duplicated company fields 2021-06-24 17:18:02 +02:00
Benjamin Beganović
71fff59e8e Fixes for signature & surcharge fields 2021-06-23 11:54:59 +02:00
Benjamin Beganović
fc51a89dcb Hide custom surcharges if they're 0 2021-06-16 16:09:30 +02:00
David Bomba
36f6cbbcc9 Update license in codebase 2021-06-16 16:58:16 +10:00
Benjamin Beganović
a52cdca1e3 Parse break lines inputs from user 2021-06-04 13:26:32 +02:00
Benjamin Beganović
bb45b5f55b Disable markdown processing for line items 2021-06-04 13:26:06 +02:00
Benjamin Beganović
d701125bf1 Markdown parsing for line items 2021-05-31 14:08:24 +02:00
Benjamin Beganović
c9334daa3f Note for settings-controlled parsing of markdown 2021-05-31 13:47:22 +02:00
Benjamin Beganović
9d7089b5b5 Change shared elements with delivery_note table 2021-05-20 15:04:24 +02:00
Benjamin Beganović
b15012b984 Drop the logic for the ordering items 2021-05-17 13:28:33 +02:00
Benjamin Beganović
52f75e5fc6 Fix Javascript loading with repeating headers & footers 2021-04-25 15:52:00 +02:00
Benjamin Beganović
f0255d4ed9 Show $entity.public_notes in the totalsTable & remove $entity_footer 2021-04-25 15:20:23 +02:00
Benjamin Beganović
873fe6ce07
Merge branch 'v5-develop' into v5-1304-emails 2021-04-19 16:59:23 +02:00
Benjamin Beganović
88acfbfecb Show public notes outside of totals table 2021-04-19 13:51:00 +02:00
Benjamin Beganović
dba330bcb3 wip 2021-04-13 16:43:35 +02:00
Benjamin Beganović
d44691c613 wip 2021-04-09 13:11:28 +02:00
Benjamin Beganović
7799b34346 wip 2021-04-09 13:06:14 +02:00
David Bomba
048405decc check object prior to testing properties 2021-04-06 22:38:59 +10:00
Benjamin Beganović
2cd3ceed2e Allow expenses to be part of products table 2021-04-05 14:21:49 +02:00
Benjamin Beganović
5ac1ae16ff Fixes #5314 (https://github.com/invoiceninja/invoiceninja/issues/5314) 2021-04-05 13:22:21 +02:00
Benjamin Beganović
c1a92bfb52 Fixes #5312 (https://github.com/invoiceninja/invoiceninja/issues/5312) 2021-04-05 11:04:33 +02:00
Benjamin Beganović
ecbe6494c6 Alias the $task.rate to $task.cost for column support 2021-04-01 15:00:09 +02:00
Benjamin Beganović
296d3046e8 Add margins between items 2021-03-22 12:10:53 +01:00
Benjamin Beganović
500fa38a29 Remove nl2br for public notes 2021-03-22 12:08:59 +01:00
Benjamin Beganović
c75e4e678f Set min-width for designs when using repeating headers/footers 2021-03-18 12:12:44 +01:00
Benjamin Beganović
d706d226e8 Disable automatic custom column processing on the PDF 2021-03-18 09:32:11 +01:00
=
e2bc086f75 Type check on custom fields 2021-03-13 19:36:00 +11:00
Benjamin Beganović
7c01b3bb64 Support for custom fields in company details section 2021-03-10 16:55:49 +01:00
Benjamin Beganović
2ab76adfad Reduce default white label logo size 2021-03-03 08:49:02 +01:00
Benjamin Beganović
da9e2e1759 Prevent word breaking from unit costs & task rates 2021-02-26 07:47:04 +01:00
Benjamin Beganović
b7a9700f90 Fix issue with entity footer items causing 500 error 2021-02-18 10:12:57 +01:00
Benjamin Beganović
001b6902f2 wip 2021-02-16 14:42:35 +01:00
Benjamin Beganović
a593ecc48d wip 2021-02-15 13:16:47 +01:00
Benjamin Beganović
29e4566be8 Inject signature on PDfs 2021-02-12 13:03:46 +01:00
Benjamin Beganović
6607442740 wip 2021-02-10 12:31:14 +01:00
Benjamin Beganović
d8c6d40cab wip 2021-02-09 16:47:41 +01:00
Benjamin Beganović
1727f3948e Fix issue with 2021-01-28 16:57:32 +01:00
Benjamin Beganović
874732f55d fix translation reference 2021-01-28 15:42:11 +01:00
Benjamin Beganović
c5ad3a94eb hide empty columns now pulling from settings 2021-01-26 17:41:36 +01:00
Benjamin Beganović
8df374c9db add data-refs to taxes 2021-01-15 12:56:05 +01:00
Benjamin Beganović
d43daeaddb hide terms label if terms are empty 2021-01-15 12:44:37 +01:00
David Bomba
af1a458b1e
Merge pull request #4691 from beganovich/v5-0114-show-terms
(v5) Support for entity terms
2021-01-15 08:32:54 +11:00
Benjamin Beganović
3bcc9a2d74 show partial due 2021-01-14 16:49:24 +01:00
Benjamin Beganović
c92ae4d86f Support for invoice terms 2021-01-14 16:38:40 +01:00
Benjamin Beganović
50203f56a1 - Fix issue with & not appending correctly
- Bump snappdf
2021-01-11 13:34:54 +01:00
David Bomba
ceb8637310 fix for type 2021-01-07 17:24:02 +11:00
Benjamin Beganović
4ca96b4136 Toggle this hiding behaviour based on settings 2021-01-05 17:55:57 +01:00
Benjamin Beganović
ae534b146b Inject Javascript that'll filter for hidden columns 2021-01-05 17:48:06 +01:00
Benjamin Beganović
329c72128c Set all elements to be hidden by default 2021-01-05 17:47:50 +01:00
Benjamin Beganović
4b6257da3b Remove task hours calculation from the invocie 2021-01-04 14:38:56 +01:00
David Bomba
934610a01c Update copyright + version bump + set canadian dollar symbol to $ 2021-01-04 08:54:54 +11:00
Benjamin Beganović
b43b52519f Show $product.quantity & product.discount based on settings 2020-12-25 13:45:37 +01:00
Benjamin Beganović
972099d89f fix product key 2020-12-23 15:51:29 +01:00
Benjamin Beganović
16edac3738 add support for multiline text 2020-12-23 13:49:25 +01:00
Benjamin Beganović
8fd560dcce process custom columns 2020-12-22 13:56:09 +01:00
Benjamin Beganović
220c7f080a Provide action selectors to match PDF elements:
- Add ext-libxml to composer.json
- Support outputting the PDF in CreateEntityPdf.php & GenerateDeliveryNote.php
- Add reference names to Design.php
2020-12-17 15:44:01 +01:00
Benjamin Beganović
eadcff544f Support for multiline entity public notes. 2020-12-17 14:03:07 +01:00
Benjamin Beganović
0f62c6c2f2 remove info() 2020-12-08 16:15:36 +01:00
Benjamin Beganović
53525dc93f rename task.service to task.product key 2020-12-08 16:10:29 +01:00
Benjamin Beganović
bdedec19db remove balance due & total from delivery note pdf 2020-12-08 13:19:38 +01:00
Benjamin Beganović
9198cf5175 support tasks as of same day 2020-12-01 15:52:12 +01:00
Benjamin Beganović
e5af99d884 fix issue with client date formatc 2020-12-01 15:25:48 +01:00
Benjamin Beganović
1a066f2f9f add alias to task searvice from task product 2020-12-01 15:18:48 +01:00
Benjamin Beganović
ae88d5e08e php-cs-fixer format 2020-11-25 15:19:52 +01:00
Benjamin Beganović
18312b9583 always show invoice.totals 2020-11-20 14:31:47 +01:00
Benjamin Beganović
1b70f24dbc Update logic for rendering task hours 2020-11-17 14:47:32 +01:00
Benjamin Beganović
3112efcded Support for .description 2020-11-17 14:46:22 +01:00
Benjamin Beganović
f9b55dcd72 fix pdfmaker issues with special chars 2020-11-16 00:49:44 +01:00
Benjamin Beganović
f02826deed Don't render delivery-not-table on products/tasks 2020-11-09 16:10:47 +01:00
Benjamin Beganović
8adab67251 - Pass $invoice to the getInvoiceDeliveryNote() in InvoiceService
- GenerateDeliveryNote action for InvoiceService
- New delivery-note-table element in the \Services\PdfMaker\Design.php
- $item & $description variables in the HtmlEngine
2020-11-09 14:30:50 +01:00
Benjamin Beganović
a601702a0e geTaskTimeLogs() helper 2020-11-06 13:13:04 +01:00
Benjamin Beganović
892c440ea4 fix items count() & add support for task times 2020-11-06 13:12:51 +01:00
David Bomba
3d11639cb4 Fixes for tests 2020-11-05 07:50:39 +11:00
Benjamin Beganović
5c2bfaa8ce Alpha testing on tasks:
- Change 'products' to '$product' with design within: CreateEntityPdf, ActivityRepository, HtmlGenerationTest, Phantom
- New 'task-table' element in the Services\PdfMaker\Design.php
- buildTableHeader & buildTableBody are now more generic
- processTaxColumns() now requires $type to be specified
2020-11-04 14:56:08 +01:00
Benjamin Beganović
e222aa8620 Refactor 'product-table-footer' to 'table-totals' 2020-11-04 11:23:06 +01:00
Clément Gayot
92b4df729b
Support PDF design with UTF-8 characters 2020-11-03 16:18:07 +01:00
David Bomba
9aeb2d7a5b Psalm cleanup 2020-10-28 21:10:49 +11:00
Clément Gayot
ed3ba8020a 🐛 Remove blank lines from pdf content when designated pdf variables are empty 2020-10-27 23:51:39 +01:00
David Bomba
c8e2d94b3f Fixes for tests + remove swoole 2020-10-22 21:14:14 +11:00
Benjamin Beganović
1de6f94f10 fix custom1234 2020-10-20 13:01:07 +02:00
Benjamin Beganović
9bcea0cf58 Fix for invoice custom fields 2020-10-20 12:46:08 +02:00
Clément Gayot
675e211e33
Support PDF variables with UTF-8 characters 2020-10-17 02:24:02 +02:00
Benjamin Beganović
b8b2ae527c Support for HTML in line items 2020-10-09 15:05:57 +02:00
David Bomba
4bbdeef539
Merge pull request #4136 from beganovich/v2-products-table-in-invoices
(v5) Support for custom products table columns
2020-10-08 06:59:16 +11:00
Benjamin Beganović
6e66a8d1a7 Update design seeders 2020-10-07 18:42:41 +02:00
Benjamin Beganović
76695b8462 - Add new "product" key to $context of Design
- Add custom products table body handling in Design.php
2020-10-06 12:49:00 +02:00
Benjamin Beganović
32b5ee26ba Update $whitelabel variable 2020-09-17 14:28:55 +02:00
Benjamin Beganović
0f791fdb7f page-break-inside avoid on footer elements 2020-09-16 12:18:34 +02:00
Benjamin Beganović
3ac3f6006c footer logic for custom props 2020-09-11 16:46:49 +02:00
Benjamin Beganović
6673d58b3a Show fees on bottom of PDFs 2020-09-11 10:07:59 +02:00
Benjamin Beganović
3b7bf97dd8 Add $font-size variable & fix insert of designs 2020-09-09 17:14:55 +02:00
Benjamin Beganović
6288529907 - Accept every design as CUSTOM in PreviewController
- Logic for excluding elements in table footer
- PdfMaker will now return plain HTML + str_replace filter
- HTMLEngine updated variables and aliases
- Added 'payment_due' translation
- Hipster: Updated variables
2020-09-09 14:47:26 +02:00
Benjamin Beganović
78503c4608 Fix footer position 2020-09-08 14:37:21 +02:00
Benjamin Beganović
2635b8c090 Fix logic for all_pages_header/footer 2020-09-08 14:26:13 +02:00
Benjamin Beganović
14dc3ea2aa Engine for editing templates 2020-09-08 13:21:07 +02:00
Benjamin Beganović
2e66a4df83 Update designs @page margin 2020-09-08 12:40:04 +02:00
Benjamin Beganović
0902b903a7 Insert elements as span 2020-09-08 14:30:20 +02:00
David Bomba
ba75a44eb8
Laravel 7.x Shift (#40)
* Adopt Laravel coding style

The Laravel framework adopts the PSR-2 coding style with some additions.
Laravel apps *should* adopt this coding style as well.

However, Shift allows you to customize the adopted coding style by
adding your own [PHP CS Fixer][1] `.php_cs` config to your project.

You may use [Shift's .php_cs][2] file as a base.

[1]: https://github.com/FriendsOfPHP/PHP-CS-Fixer
[2]: https://gist.github.com/laravel-shift/cab527923ed2a109dda047b97d53c200

* Shift bindings

PHP 5.5.9+ adds the new static `class` property which provides the fully qualified class name. This is preferred over using class name strings as these references are checked by the parser.

* Shift core files

* Shift to Throwable

* Add laravel/ui dependency

* Unindent vendor mail templates

* Shift config files

* Default config files

In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them so you can review the commit diff for
changes. Moving forward, you should use ENV variables or create a
separate config file to allow the core config files to remain
automatically upgradeable.

* Shift Laravel dependencies

* Shift cleanup

* Upgrade to Laravel 7

Co-authored-by: Laravel Shift <shift@laravelshift.com>
2020-09-06 19:38:10 +10:00
Benjamin Beganović
4cdf9b334f Remove old designs classes 2020-09-04 13:18:50 +02:00
Benjamin Beganović
219666f765 Generating PDFs using new templates 2020-09-04 13:17:30 +02:00
Benjamin Beganović
50c37a8719 Update logic to support only one dynamic design class:
- New Design.php class that will act as master template
- PdfMaker->design() now accepts design object instead of string
- PdfMaker: Skip elements if no id|tag provided
- PdfMaker: 'content' property is now optional
- config/ninja.php now contains base_path for templates
- Refactored tests to be :green: ✔
- Removed PdfMakerDesignsTest since content is same for each template now
2020-09-04 10:18:41 +02:00
Benjamin Beganović
d508d9b8f2
Merge branch 'v2' into v2-pdfmaker-design-improvements 2020-08-28 08:17:46 +02:00
Benjamin Beganović
af7995815c Rename all_page_* to all_pages_* for dynamic header/footer 2020-08-27 08:47:51 +02:00