1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-11 21:52:35 +01:00
Commit Graph

309 Commits

Author SHA1 Message Date
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
Benjamin Beganović
edbadabab4 Support for separate variable: all_page_header && all_page_footer 2020-08-27 08:39:14 +02:00
Benjamin Beganović
971a723607 Create support for recursive copying of DOM 2020-08-26 12:52:20 +02:00
Benjamin Beganović
e965aded06 engine for repeating headers 2020-08-26 09:02:38 +02:00
Benjamin Beganović
234beee61b Enable injecting print CSS into document 2020-08-25 10:51:49 +02:00
Benjamin Beganović
e2963b48ff Update elements to use new $total_columns 2020-08-21 17:47:04 +02:00
Benjamin Beganović
169eb4a766 Update rest of the designs with new $pdf_variables key 2020-08-21 12:07:33 +02:00
Benjamin Beganović
23577a5f0f Refactor context['product-table-columns'] to generic pdf_variables:
- Pass 'pdf_variables' to CreateQuotePdf & CreateInvoicPdf
- Update Playful & Plain to support new variable engine
- Update DesignHelpers trait to support new variable engine
- Make tests pass for ExampleIntegrationTest
2020-08-21 11:59:39 +02:00
Benjamin Beganović
0a38a52617 Fix serialization issue 2020-08-20 17:48:10 +02:00
David Bomba
713d967e8e fixes for payment drivers 2020-08-17 08:58:52 +10:00
Benjamin Beganović
f42c76d8a8 Update templates with new check for entity variables 2020-08-14 14:54:06 +02:00
Benjamin Beganović
da3a86381e Add logic for checking empty entity variables 2020-08-14 14:53:55 +02:00
Benjamin Beganović
4769aeac67 Reduce logo size & update balance due string for invoices 2020-08-13 13:46:53 +02:00
Benjamin Beganović
a29e3b83ae Variables improvements:
- Update $balance_due
- Update $total
2020-08-13 13:10:59 +02:00
Benjamin Beganović
2de19a4bb1 Fix design 'hidden' properties 2020-08-11 18:50:00 +02:00
Benjamin Beganović
5ebe60c78e Update DesignUpdate with new namespace 2020-08-11 18:36:56 +02:00
Benjamin Beganović
1d7e4fd6c9 Implement footer signature & white-label logo 2020-08-11 17:57:35 +02:00
Benjamin Beganović
9c1cfd2e86 Shared footer elements 2020-08-11 17:53:11 +02:00
Benjamin Beganović
e99bd59aa0 Implement getting raw HTML out of sections 2020-08-11 17:19:52 +02:00
Benjamin Beganović
347ec1d441 Check if $entity is App\Models\Quote to make sure right variables are passed 2020-08-10 17:31:23 +02:00
Benjamin Beganović
950d6d3693 Rename TableHelpers to DesignHelpers 2020-08-10 17:07:30 +02:00
Benjamin Beganović
3d477b2ed1 Conditionally show footer items 2020-08-10 17:04:51 +02:00
Benjamin Beganović
20591bc251 Added rule for "hidden" field 2020-08-10 16:43:25 +02:00
Benjamin Beganović
84e618d1b6 Remove string requirement from toggleHiddenProperty 2020-08-10 12:57:53 +02:00
Benjamin Beganović
085d08bbcb (wip) Conditionally display tfoot items 2020-08-07 18:30:04 +02:00
Benjamin Beganović
f7408e1fb3 Added new labels & update designs 2020-08-07 17:47:17 +02:00
Benjamin Beganović
8381d37431 Update entity type:
- Default entity type is 'product'
- Added type check
- Fixed double slash in design path
2020-08-07 16:11:10 +02:00
Benjamin Beganović
a531019e3e Update remaining colspans on design files 2020-08-07 16:02:37 +02:00
Benjamin Beganović
7870985aa8 Logic for calculating remaning spaces for colspans 2020-08-07 15:58:05 +02:00
Benjamin Beganović
007ec3a85a Plain:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 14:30:56 +02:00
Benjamin Beganović
00fcb1dd32 Modern:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 14:28:36 +02:00
Benjamin Beganović
80b6512df4 Hipster:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 14:25:43 +02:00
Benjamin Beganović
fe1cef3d62 Elegant:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 14:22:18 +02:00
Benjamin Beganović
6cdcf0d914 Creative:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 14:17:55 +02:00
Benjamin Beganović
9ee8a1658e Clean:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 14:05:40 +02:00
Benjamin Beganović
0597b01847 Business:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 14:03:25 +02:00
Benjamin Beganović
da74ecba6e Bold:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 14:00:23 +02:00
Benjamin Beganović
b438309736 Playful:
- Extract table footer into tableFooter()
- Add all footer elements
2020-08-07 13:55:02 +02:00
Benjamin Beganović
6676cab698 Playful 2020-08-05 15:40:57 +02:00
Benjamin Beganović
4f69a874cf Modern design 2020-08-05 15:17:45 +02:00
Benjamin Beganović
7a9c8ca9a0 Hipster design 2020-08-05 15:02:32 +02:00
Benjamin Beganović
66ff55cddf Elegant 2020-08-05 14:43:51 +02:00
Benjamin Beganović
b1b42f5919 Creative 2020-08-05 14:34:22 +02:00
Benjamin Beganović
1876b228ed Clean 2020-08-05 14:24:10 +02:00
Benjamin Beganović
2333a78775 Business design 2020-08-05 12:35:38 +02:00
Benjamin Beganović
d63678435f Bold design 2020-08-05 12:13:48 +02:00
Benjamin Beganović
438054744e refactor invoice to entity 2020-08-05 11:52:01 +02:00
Benjamin Beganović
17858dae45 Implement base design class & remove design interface 2020-08-05 11:47:32 +02:00
Benjamin Beganović
ad2ff79336 Complete Plain.php 2020-08-04 17:32:28 +02:00
Benjamin Beganović
e5defd870b implement design interface 2020-08-04 16:56:17 +02:00
Benjamin Beganović
7c4d2cf96f change from isset to in_array 2020-08-04 16:41:18 +02:00
Benjamin Beganović
96fdf787de add comments 2020-08-04 13:37:51 +02:00
Benjamin Beganović
ee6da44a94 Extract helpers for tax calculations into another file 2020-08-04 13:33:38 +02:00
Benjamin Beganović
efd698c9c5 wip with table body 2020-08-03 13:29:57 +02:00
Benjamin Beganović
184f60785f wip with table bodies & footer 2020-07-30 17:47:40 +02:00
Benjamin Beganović
70ee476193 wip 2020-07-30 16:43:57 +02:00
Benjamin Beganović
cb4efc8c61 wip 2020-07-29 14:53:58 +02:00
Benjamin Beganović
2e3179d83e Extract variables from the HtmlEngine 2020-07-29 13:37:05 +02:00
Benjamin Beganović
3b2e4c68e9 Update static html design paths 2020-07-22 14:43:07 +02:00
Benjamin Beganović
60a73fada3 Move PdfMaker to Services/ folder & update namespaces 2020-07-22 14:30:55 +02:00