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

1225 Commits

Author SHA1 Message Date
Benjamin Beganović
0216286efc Support for over & under payments 2020-09-24 11:29:47 +02:00
David Bomba
4db72d11e1 Actions for recurring invoices 2020-09-24 10:57:44 +10:00
David Bomba
0e5199e052 Working on contact auth using contact key 2020-09-23 11:45:07 +10:00
David Bomba
81ef541d2e Expense API Endpoints 2020-09-23 10:46:35 +10:00
David Bomba
ab0ec5e2cb Vendor API endpoints 2020-09-23 10:16:19 +10:00
David Bomba
78848fff4f fixes 2020-09-21 16:27:02 +10:00
David Bomba
4b00d3a82a Improve eager loading 2020-09-19 20:05:29 +10:00
=
20e4c4b1ad Improve eager loading 2020-09-19 12:05:54 +10:00
=
88eb05786e Fixes for updateinvoicepayment 2020-09-19 11:20:14 +10:00
Benjamin Beganović
a1e11cf161 invoices-table fix for balance due 2020-09-18 14:47:36 +02:00
Benjamin Beganović
020005d20d Update PaymentMethodController:destroy() with generic gateway detach 2020-09-18 09:48:39 +02:00
David Bomba
8471c2689f Fix for user_confirmation code 2020-09-16 09:56:10 +10:00
David Bomba
aeeb099d40 Fixes for mailers 2020-09-14 15:14:37 +10:00
David Bomba
9beafcd73b
Merge pull request #4052 from turbo124/v2
Fixes for Checkout.com
2020-09-10 14:42:26 +10:00
David Bomba
0c015cb4bc Fixes for recurring invoices 2020-09-10 11:05:42 +10: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ć
3104f4ed06 Merge remote-tracking branch 'upstream/v2' into v2-design-tfoot 2020-09-08 14:37:37 +02:00
Benjamin Beganović
14dc3ea2aa Engine for editing templates 2020-09-08 13:21:07 +02:00
David Bomba
857fa8a57f Force admin only permissions on system logs 2020-09-08 20:49:17 +10:00
David Bomba
3083ab6237 Set unique on Group Settings Name 2020-09-08 20:44:32 +10:00
David Bomba
ca34e77530
Merge pull request #4041 from turbo124/v2
Improve update process
2020-09-07 20:05:39 +10:00
David Bomba
18282acbd7 Allow circumvention of client portal passwords using designated hash 2020-09-07 14:49:57 +10:00
Benjamin Beganović
0bf39c739d
Merge branch 'v2' into v2-fix-setup-issues 2020-09-07 00:15:45 +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ć
7a5027f1b4 Enable sandboxing with PDFs & fix setup page issues 2020-09-06 04:23:04 +02:00
Benjamin Beganović
1a66f1835f Merge remote-tracking branch 'upstream/v2' into v2-pdfmaker-design-improvements 2020-09-04 13:20:39 +02:00
Benjamin Beganović
219666f765 Generating PDFs using new templates 2020-09-04 13:17:30 +02:00
David Bomba
2f478158e9 Fixes for company gateways 2020-09-02 11:11:01 +10:00
David Bomba
bb4aac1aeb
Merge pull request #4025 from turbo124/v2
Gateway fees implementation
2020-08-31 17:58:43 +10:00
David Bomba
1bd3deca4f Invoice payments with gateway fees 2020-08-31 14:27:47 +10:00
David Bomba
eb867522df Working on invoice payments with gateway fees 2020-08-31 12:00:43 +10:00
David Bomba
ac08a146a1 Working on gateway fees 2020-08-30 22:00:19 +10:00
David Bomba
1bc71fb5d8 Working on gateway fees 2020-08-30 08:00:57 +10:00
Benjamin Beganović
f5cc1f0d22 Preview logic for editing designs 2020-08-28 09:51:02 +02:00
Benjamin Beganović
d508d9b8f2
Merge branch 'v2' into v2-pdfmaker-design-improvements 2020-08-28 08:17:46 +02:00
David Bomba
36c54d8cc3 Working on fees 2020-08-28 11:06:46 +10:00
David Bomba
1a7d0d3cbd Working on gateway fees across multiple invoices 2020-08-27 22:12:39 +10:00
David Bomba
ff5d8ad871 Fixes for gateway fees 2020-08-26 11:14:15 +10:00
David Bomba
d57f0f9236 Refactoring client payments 2020-08-26 10:53:11 +10:00
David Bomba
79e0fa56e2 Convert currency string to float 2020-08-26 10:47:50 +10:00
David Bomba
37c5a7adb5 Test for gateway fees appending to invoice 2020-08-26 08:10:49 +10:00
David Bomba
1c55b529a0 Refactor payments 2020-08-25 23:18:17 +10:00
David Bomba
979916adb5 Refactor payments 2020-08-25 23:06:38 +10:00
Benjamin Beganović
5a03d81112 Fix blank page when downloading invoices 2020-08-25 08:55:55 +02:00
David Bomba
4c3f466d58 Tests for system log routes 2020-08-24 20:28:47 +10:00
David Bomba
d7dd544271 System logs 2020-08-24 19:51:19 +10:00
David Bomba
66499a9a31 System Logs 2020-08-24 15:08:49 +10:00
David Bomba
ffdfaefd80 Working on system logs 2020-08-24 12:45:53 +10:00
David Bomba
0d9df1f290 Fixes for incorrect name spacing of validation rules 2020-08-24 08:20:57 +10:00
David Bomba
0f501bc936 fixes for quote controller 2020-08-23 11:08:18 +10:00
David Bomba
dbe22cf5fa First or fail for company record in short 2020-08-23 07:46:43 +10:00
Benjamin Beganović
13e70e24d5 wip 2020-08-21 16:47:17 +02:00
Benjamin Beganović
0530204b08 Update copyright 2020-08-20 03:17:29 +02:00
Benjamin Beganović
f4698c0108 Support multiple downloads 2020-08-20 03:10:04 +02:00
David Bomba
c9d94804de
Merge pull request #4002 from turbo124/v2
Tests for gateway fees
2020-08-20 07:40:33 +10:00
Benjamin Beganović
9b524f22e6 Download files with original name 2020-08-19 18:06:26 +02:00
David Bomba
7b2e60a0d5 Add amount column to history table 2020-08-19 12:44:25 +10:00
David Bomba
ba3f3e6989
Merge branch 'v2' into v2 2020-08-19 07:59:19 +10:00
Benjamin Beganović
0a493c275e Enable is_public for document uploads 2020-08-18 16:12:46 +02:00
Benjamin Beganović
4eb376e830 Enabe client uploads 2020-08-18 16:01:25 +02:00
Benjamin Beganović
acdd9c936c Fix route model binding 2020-08-18 14:38:46 +02:00
Benjamin Beganović
d55cfc42cf Separate page for download 2020-08-17 16:18:49 +02:00
Benjamin Beganović
814dfb0346 Merge remote-tracking branch 'upstream/v2' into v2-1408-cp-downloads 2020-08-17 14:01:56 +02:00
David Bomba
d6e169a891 Working on tests for fees and limits 2020-08-17 13:03:21 +10:00
David Bomba
713d967e8e fixes for payment drivers 2020-08-17 08:58:52 +10:00
Benjamin Beganović
4eb5490984 Enable downloads for the client 2020-08-14 17:29:26 +02:00
David Bomba
dffb9be189 Fixes for purge company and preserve settings 2020-08-14 10:40:59 +10:00
David Bomba
3ac9cc5158 Add reminder fields to entities 2020-08-14 08:08:10 +10:00
David Bomba
fd38a964e7 Fixes for company purging 2020-08-14 07:15:15 +10:00
David Bomba
181c343594 Minor fixes for authorize.net 2020-08-13 12:30:45 +10:00
David Bomba
d11cc1784d Fixes for tests 2020-08-13 11:55:58 +10:00
David Bomba
e347c5ad51 Document permissions 2020-08-12 13:13:39 +10:00
David Bomba
de24d00315 Error handling for emails 2020-08-12 12:16:44 +10:00
David Bomba
941e790a95 More activities 2020-08-12 12:02:21 +10:00
David Bomba
bcd69dadc8 Change invoice -> entity 2020-08-12 10:41:26 +10:00
David Bomba
ee0aa891bb Fixes for activity backups"
git push
2020-08-12 10:13:34 +10:00
David Bomba
928a9d46af Download historical invoice 2020-08-12 10:01:27 +10:00
David Bomba
cb508e1daa Add client gateways to first-load array 2020-08-12 09:04:39 +10:00
David Bomba
3514491300 Changing error structure, regression fixes for shop/client route 2020-08-12 08:59:28 +10:00
David Bomba
7feae1fd45 Add is_deleted to client_gateway_tokens table 2020-08-12 08:17:32 +10:00
David Bomba
71449392de Fix for regression 2020-08-11 20:57:45 +10:00
David Bomba
c195f5b8a5 Add middleware to destroy document 2020-08-11 13:21:43 +10:00
=
731001baf5 Refactor refresh route resolution of company_user 2020-08-08 10:32:47 +10:00
=
1be45a4e38 Wind back changes to login route 2020-08-08 09:58:10 +10:00
=
6751654216 Refactor login route 2020-08-08 09:50:32 +10:00
David Bomba
2fdf351be3 Customize bulk templates 2020-08-05 22:18:29 +10:00
David Bomba
13cf06b0cd Test for new shop routes" 2020-08-05 12:21:26 +10:00
David Bomba
e183238b8e Add Shop Profile Route 2020-08-05 12:12:38 +10:00
David Bomba
b89ee61bba return appropriate response from within catch 2020-08-04 23:53:33 +10:00
David Bomba
a094c23937 Add PhantomJS tests on setup screen 2020-08-04 23:30:27 +10:00
David Bomba
d7dbde3789 Implement PhantomJS 2020-08-04 21:00:19 +10:00
David Bomba
374fd90df1 Fixes for Invoice Preview route 2020-08-04 18:37:28 +10:00
David Bomba
f544f7ac23 fix for archiving tax rates 2020-08-04 18:17:12 +10:00
David Bomba
81a34f3446 Fixes for email templates not displaying css correctly 2020-08-02 19:59:32 +10:00
David Bomba
b780be3995 Ensure group settings can be archived + tests! 2020-08-02 16:31:55 +10:00
David Bomba
7318eb19d8 OPENAPI docs 2020-07-30 13:27:00 +10:00
David Bomba
1db8b53128 OPENApi documentation 2020-07-30 12:50:45 +10:00
David Bomba
a6967892ea system health route 2020-07-30 10:30:49 +10:00
David Bomba
68e2e2c8f4 Merge branch 'v2' of https://github.com/turbo124/invoiceninja into v2 2020-07-30 07:48:33 +10:00
David Bomba
2739e643fe Fixes for invoicewasvieweD 2020-07-28 23:47:41 +10:00
David Bomba
8f59515950 Fixes for shop post routes 2020-07-28 23:41:56 +10:00
David Bomba
fd97aff3f1 Fixes for routes"
git push
2020-07-28 23:24:01 +10:00
David Bomba
52065fb963 check shop is enabled 2020-07-28 22:12:33 +10:00
David Bomba
2b9610ea02 clean up for basecontroller 2020-07-28 22:06:47 +10:00
David Bomba
de78ea1506 Shop 2020-07-28 22:05:17 +10:00
David Bomba
caad3661d5 Refactor to user company_key instead of company_token 2020-07-28 21:58:15 +10:00
David Bomba
a8a0c7695c Shop routes 2020-07-28 21:30:11 +10:00
David Bomba
d5b777206e Shop routes 2020-07-28 21:19:51 +10:00
David Bomba
f28a604d84 Fixes for invoicewasviewed 2020-07-28 19:49:09 +10:00
David Bomba
9ed31be17e remove legacy setting option 2020-07-28 14:29:56 +10:00
David Bomba
04ed1d4fe3 formatting 2020-07-26 20:21:55 +10:00
David Bomba
0a93e6ea5c Fixes for refresh route 2020-07-26 18:30:55 +10:00
David Bomba
3c38fd2cf6 Fixes for refresh route 2020-07-26 15:12:40 +10:00
David Bomba
34575554af Working on handling refresh route 2020-07-26 08:27:49 +10:00
David Bomba
d36fdb4025 Fixes for refresh query 2020-07-25 09:02:32 +10:00
David Bomba
643f709248 Fixes for refresh route 2020-07-24 19:39:43 +10:00
David Bomba
40b8ecf7c5 Fixes for refresh route 2020-07-24 19:05:52 +10:00
David Bomba
c6e4889d6d fix for gateway refresh route 2020-07-23 21:39:03 +10:00
David Bomba
8e02662fd0 Fix for refresh route 2020-07-23 21:36:50 +10:00
David Bomba
2f07a36d76 Fixes for unique invoice number rule 2020-07-23 21:30:51 +10:00
David Bomba
41fdbd7978 Add client ids to activities 2020-07-23 21:20:05 +10:00
David Bomba
ce3696257f Fixes for base repo invitations 2020-07-23 13:55:11 +10:00
David Bomba
62f084b2aa Events 2020-07-22 17:53:14 +10:00
David Bomba
e620438186 Fixes for user email change job 2020-07-22 17:26:54 +10:00
=
a367c64278 Send change of email to both old and new email address 2020-07-22 13:03:33 +10:00
David Bomba
9d276ffa70 Working on user notifications when an email changes 2020-07-22 12:25:58 +10:00
David Bomba
02646640aa update self updater 2020-07-21 21:51:47 +10:00
David Bomba
91c40b0517 Update enabled_modules value 2020-07-21 21:26:58 +10:00
David Bomba
0d8d793a4c Fix for including ALL relations on the refresh route if updated_at is provided 2020-07-21 21:19:21 +10:00
David Bomba
9075cf989a Flip what is_system means for company tokens 2020-07-21 15:03:04 +10:00
David Bomba
24e64fa911 Check for node and npm in setup 2020-07-21 11:11:35 +10:00
David Bomba
fec8e8b520 Fix bug where restoring a credit wouldn't work 2020-07-20 07:54:10 +10:00
David Bomba
da88319418 Event listener for invoice viewed 2020-07-17 11:18:40 +10:00
David Bomba
d2cc1e4d65 Fix for company not returning on refresh route 2020-07-17 07:13:32 +10:00
David Bomba
41b85b3fb3 Ensure models are touched appropriately" 2020-07-16 21:01:39 +10:00
David Bomba
0ff8b68fbe
Merge pull request #3906 from turbo124/v2
Stripe - Autobilling
2020-07-15 15:05:42 +10:00
Benjamin Beganović
556e1280d0 Fixes for quote page 2020-07-14 13:00:28 +02:00
David Bomba
fe4885f5a6 only send one notification per invoice 2020-07-14 19:55:28 +10:00
David Bomba
00a3d36fcd Bug with viewed_date populating erroneously 2020-07-14 15:37:49 +10:00
David Bomba
1d7ba6d1e6 Fixes for event parameters 2020-07-14 08:06:28 +10:00
David Bomba
708422dd9b Add hashed transformer for company tokens 2020-07-13 12:54:56 +10:00
David Bomba
b96e2aa78b Bulk actions for tax rates 2020-07-13 09:29:44 +10:00
David Bomba
b4f669ad59 Update refresh route to filter all subqueries by updated_at 2020-07-10 09:28:09 +10:00
David Bomba
f3572a5d11 Refactor for events 2020-07-08 22:02:16 +10:00
David Bomba
89d15f1e2a Fixes for API Documentation 2020-07-07 20:56:28 +10:00
David Bomba
16f488be5a
Merge pull request #3887 from beganovich/v2-0607-setup-page-fixes
Fix form not showing when DB fails on setup
2020-07-07 08:07:27 +10:00
Benjamin Beganović
9cdecfbfc4 Setup page fix form not showing 2020-07-06 14:27:27 +02:00
David Bomba
4c321d41c3 Change subscriptions to webhooks 2020-07-06 21:22:36 +10:00
David Bomba
94a98f744e Triggered actions on invoice 2020-07-06 09:34:25 +10:00
David Bomba
8ec47921aa Fixes for Invoice PDF Preview 2020-07-05 21:39:59 +10:00
David Bomba
bbdfb86b99
Merge pull request #3884 from turbo124/v2
Fixes for Checkdata script and PDF Previews
2020-07-05 20:59:18 +10:00
David Bomba
8856e3fada Fixes for pdf preview 2020-07-05 20:58:30 +10:00
David Bomba
b9c860bfc3 Add task to check company size 2020-07-05 18:59:28 +10:00
Benjamin Beganović
eb655762d4 Adding payment methods from menu 2020-07-03 14:39:29 +02:00
David Bomba
b3c2953e19
Merge pull request #3880 from turbo124/v2
V2
2020-07-03 18:27:06 +10:00
David Bomba
50f65c998f Add user name to the ping route 2020-07-03 07:52:40 +10:00
Benjamin Beganovic
605069f05b Test PDF abilites in setup 2020-07-02 13:58:39 +02:00
David Bomba
7f90d8d45b
Merge pull request #3876 from turbo124/v2
Allow searching on entity routes
2020-07-02 21:03:12 +10:00
David Bomba
d3775fd059 Change PING route response 2020-07-02 20:14:19 +10:00
David Bomba
7a02938bd9 Route to check status of scheduler 2020-07-02 10:26:43 +10:00
Benjamin Beganović
4918269bf2 Testing adding Stripe credit card
- Added: iframeLoaded method for Cypress
- Fixed: saving payment method id for CreditCard.php
- Added: chromeWebSecurity: false flag for insecure iframe connections
- Formatted: payment_methods/index
- Formatted: payment-methods-table.blade.php
- Added: Test for adding credit card to Stripe
- Fixed: Removing client gateway tokens
2020-07-01 18:28:57 +02:00
David Bomba
302c98e08b Fixes for demo data 2020-07-01 21:33:42 +10:00
Benjamin Beganović
53552e9717 Log checks 2020-06-30 14:41:46 +02:00
Benjamin Beganović
8de7b6b92b Remove double check in index() 2020-06-30 14:38:24 +02:00
Benjamin Beganović
3df91f15e2 Fixes for setup page check 2020-06-30 14:28:14 +02:00
David Bomba
245980ce4b Send company with all events 2020-06-30 09:35:17 +10:00
David Bomba
1ee17c3576 Minor fixes for setup process 2020-06-28 21:52:45 +10:00
David Bomba
29fcca26f8 Nest HTTP requirements inside a working installation - allows non secure routes to be used to setup the application 2020-06-28 13:47:13 +10:00
Benjamin Beganović
f68465d602 Support Stripe webhook 2020-06-27 17:39:28 +02:00
Benjamin Beganović
1e4e482801 Merge remote-tracking branch 'upstream/v2' into v2-2606-payment-webhook 2020-06-27 15:53:18 +02:00
Benjamin Beganović
1b06fb99b1 payment webhooks wip 2020-06-27 15:53:12 +02:00
David Bomba
3e3dd95262
Merge branch 'v2' into v2-2606-client-portal-improvements 2020-06-27 07:49:33 +10:00
David Bomba
65b524bc13
Merge branch 'v2' into v2-2606-user-confirmation-page 2020-06-27 07:48:43 +10:00
Benjamin Beganović
2c1627c105 Hide dashboard page (for now) 2020-06-26 16:05:48 +02:00
Benjamin Beganović
c2904d0c92 Require password update if not set when confirming email 2020-06-26 14:20:45 +02:00
Benjamin Beganović
525a1d065c Fix ACH payments with tokens 2020-06-26 13:25:58 +02:00
David Bomba
43618e40a0 Fixes for delete company 2020-06-25 07:44:25 +10:00
David Bomba
83a3a4a2c7 Fix for weird output array after deleting company 2020-06-25 07:36:39 +10:00
David Bomba
3b461861b5 Fix for missing include 2020-06-24 22:22:44 +10:00
David Bomba
06413da090 Document behind route 2020-06-24 22:12:43 +10:00
David Bomba
049e9032cb Documents 2020-06-24 20:17:42 +10:00
David Bomba
8ed382a0b7 Change to streaming downloads 2020-06-24 18:59:56 +10:00
David Bomba
889ac65f26 Bulk actions on groups 2020-06-24 09:39:49 +10:00
David Bomba
afc8537a2f Add document routes 2020-06-23 21:05:41 +10:00
David Bomba
53501da86b Clean up logging 2020-06-23 08:12:06 +10:00
David Bomba
666a2395d1 Implement Bulk actions for designs 2020-06-23 08:11:39 +10:00
Benjamin Beganović
be1600245f Merge remote-tracking branch 'upstream/v2' into v2-2805-client-signup 2020-06-22 14:58:21 +02:00
Benjamin Beganović
fae29a8dfe Logo, show more fields 2020-06-22 10:47:55 +02:00
Benjamin Beganović
01094a2b5e Merge remote-tracking branch 'upstream/v2' into v2-2805-client-signup 2020-06-22 10:27:35 +02:00
Benjamin Beganović
871d1057c7 Client registration logic 2020-06-22 10:26:48 +02:00
David Bomba
2fadadf5d4 Change document->path to ->url 2020-06-22 15:52:20 +10:00
David Bomba
8ddbfa662a Design controller bulk actions 2020-06-22 14:38:24 +10:00
David Bomba
c2211bf2f0 FIxes for tests 2020-06-22 13:07:58 +10:00
David Bomba
6b7db63e66 Design repository 2020-06-22 08:34:02 +10:00
David Bomba
dbff1ab6ab remove x-api-version and replace with x-minimum-client-version 2020-06-22 07:30:25 +10:00
David Bomba
9e2087b73c Add sample .htaccess 2020-06-21 20:07:23 +10:00
David Bomba
eec55a38dd Debugging company deletion 2020-06-20 09:46:49 +10:00
David Bomba
45d21eabb4 Update last logged in for client contact 2020-06-19 07:07:54 +10:00
Benjamin Beganović
6f34e083ae wip - registration client 2020-06-18 17:09:28 +02:00
Benjamin Beganović
22aa182250 Merge remote-tracking branch 'upstream/v2' into v2-2805-client-signup 2020-06-18 15:57:05 +02:00
Benjamin Beganović
8efc453c45 Support for "Approve" button with fullscreen quotes 2020-06-18 12:51:47 +02:00
Benjamin Beganović
e727d45029 Support for "Pay now" button with invoices 2020-06-18 12:48:31 +02:00
David Bomba
a669e9342f Require HTTPS configurable 2020-06-18 09:49:05 +10:00
David Bomba
2d2a5c0812 working on authorize.net token payments 2020-06-16 22:41:56 +10:00
David Bomba
7468813cd8 Working on Authorize payment flow 2020-06-16 10:21:40 +10:00
David Bomba
fc40159d36 Fixes for currency precision 2020-06-15 21:42:46 +10:00
David Bomba
1dd73e3a06 Add expose headers 2020-06-13 07:37:36 +10:00
David Bomba
d3e008bf92 Fixes for settings 2020-06-11 21:43:01 +10:00
David Bomba
7e26a81fb9 Move enabled_tax_rates onto company model 2020-06-11 07:56:08 +10:00
David Bomba
def550ec90
Merge branch 'v2' into v2 2020-06-10 22:51:25 +10:00
David Bomba
76d320e079 Refactor for payment methods 2020-06-10 22:43:18 +10:00
David Bomba
15081c2875 Working on Authorize.net 2020-06-10 18:05:30 +10:00
David Bomba
17d10f5f66 Working on Authorize.net 2020-06-10 11:06:37 +10:00
Benjamin Beganović
b6ad39b8e2 Stripe: Alipay implementation 2020-06-09 16:56:08 +02:00
David Bomba
c558e0df45 authorize.net 2020-06-09 22:54:22 +10:00
Benjamin Beganović
e78ae5d9c4 Stripe: ACH implementation 2020-06-09 14:40:55 +02:00
Benjamin Beganović
1965dbf041 Stripe: SOFORT implementation 2020-06-09 13:17:05 +02:00
David Bomba
e35b1b6871 Debugging company delete issues 2020-06-09 19:29:41 +10:00
David Bomba
bf6044006d Fix for restoring invoices 2020-06-09 07:43:46 +10:00
David Bomba
4dca7da070 Fixes for payment side of ledger 2020-06-06 11:07:31 +10:00
David Bomba
b6c0300775 Improve notification filters 2020-06-05 10:24:02 +10:00
David Bomba
276f2c2c23 Fix for wrong variable 2020-06-05 07:23:42 +10:00
David Bomba
d26fe16443 Fixes for STDIN 2020-06-04 21:42:45 +10:00
David Bomba
a0c5ded5e1 Remove unused dependency 2020-06-04 21:41:03 +10:00
David Bomba
f6eda5c0f4 Fixes for unused dependencies 2020-06-04 21:35:25 +10:00
David Bomba
cd6ea87232 Add bulk actions to company gateway 2020-06-04 08:18:27 +10:00
Benjamin Beganović
06190362ee extract purchase response 2020-06-01 16:19:03 +02:00
Benjamin Beganović
b589814d7b Extract paymentView 2020-06-01 14:29:41 +02:00
Benjamin Beganović
b94ce97bac Extract response from authorization 2020-06-01 14:14:41 +02:00
Benjamin Beganović
0f4d7f6aed Refactor view for authorization 2020-06-01 14:03:18 +02:00
Benjamin Beganović
b5a36bad14 support domain registration 2020-05-28 17:48:03 +02:00
Benjamin Beganović
41c76e55bc client register wip 2020-05-28 17:39:38 +02:00
Benjamin Beganović
6319c208df injecting signature and sending it to backend 2020-05-28 15:59:45 +02:00
Benjamin Beganović
7d1eeafebe Merge branch 'v2' 2020-05-28 14:41:18 +02:00
David Bomba
30c07b2cac Fixes for converting quotes 2020-05-28 21:22:25 +10:00
David Bomba
dea5543c06 Fixes for setup page flow 2020-05-28 19:40:35 +10:00
David Bomba
fe3242a095 Adjustments for setup page 2020-05-28 18:54:13 +10:00
David Bomba
2d2be07944 Improvements to quality of test data 2020-05-28 10:04:26 +10:00
David Bomba
41b19c20c1 Place checks on quote 'isConvertable()' 2020-05-27 14:54:47 +10:00
David Bomba
c72d38ca4f
Allow conversion of quotes to invoices (#3760) 2020-05-27 14:46:19 +10:00
David Bomba
8512db6b1e
Add payment terms per company (#3759)
* remove first name last name required

* Working on check update script

* Add payment terms per company

* set enabled modules on company creation

* Add payment terms to migration
2020-05-27 09:49:06 +10:00
David Bomba
c339c25d9c
Bulk actions for Payment Terms (#3752)
* Fixes for tests

* payment terms policies and repo

* Bulk actions for payment terms

* Fixes for documentation

* working on payment failure mailer
2020-05-26 18:20:50 +10:00
David Bomba
7b9d487cd3
Changes to self updater (#3746)
* Documentation for self updater

* Add logging to self updater

* Minor changes to self updateR
2020-05-25 15:21:26 +10:00
David Bomba
c1348904f1
Add logging to self updater (#3745)
* Documentation for self updater

* Add logging to self updater
2020-05-25 15:14:31 +10:00
David Bomba
c49264df1f
Documentation for self updater (#3744) 2020-05-25 12:17:24 +10:00
David Bomba
3e77612210
Fixes for conflicts (#3743)
* Add checks for duplicate contacts in invitations

* Fixes for self updater

* homebrew self updater

* remove self-updater
2020-05-25 11:57:08 +10:00
David Bomba
6cc47fbcad
Test local git update (#3741)
* Add checks for duplicate contacts in invitations

* Fixes for self updater

* homebrew self updater
2020-05-25 10:50:16 +10:00
David Bomba
ed5ce8634e
Fixes for self updater (#3740)
* Add checks for duplicate contacts in invitations

* Fixes for self updater
2020-05-25 09:45:12 +10:00
David Bomba
8129a5b49d
Add payment terms to transformers (#3738) 2020-05-23 13:33:44 +10:00
David Bomba
970c9bb87d
Payment Terms (#3737)
* Fixes for converting a quote to invoice

* Fixes for deleting an invoice

* Payment Terms CRUD

* Payment Terms

* Push PaymentTerms back into the DB

* Payment Terms

* Payment Terms

* Create api docs for payment terms
2020-05-23 13:28:24 +10:00
David Bomba
afbb605af5
Fixes for converting a quote to invoice (#3727) 2020-05-20 17:45:03 +10:00
David Bomba
8ab0238f3f
Attachments with GMail transport (#3726)
* Refactor mailers

* Fixes for mailer

* Fixes for approving a quote

* Refactor emailer

* Refactor emailer

* Attach files with GMail transport

* Attach files to GMail transport
2020-05-20 16:59:29 +10:00
David Bomba
d5ae025df0
Logging for self updater (#3725)
* fixes for tests

* Fixes for tests:

* Fixes for tests

* Add logging to self updater
2020-05-20 08:49:58 +10:00
Benjamin Beganović
aedb5b6cd9
Show page on account confirmation (#3720) 2020-05-19 22:59:44 +10:00
David Bomba
ac0d63b0b2
Fixes for Readme (#3721)
* Skip preview tests

* Fixes for product test

* Fixes for tests

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Fixes for incorrect payment types

* Refactor class nameS

* Entity Notification refactor

* Entity Notifications

* Add oauth_provider to User transformer

* Invoices can only be deleted in the balance in zero
2020-05-19 22:54:22 +10:00
David Bomba
659af63b5c
Add Quotes to RandomDataSeeder (#3714)
* Skip preview tests

* Fixes for product test

* Fixes for tests

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Fixes for incorrect payment types

* Refactor class nameS

* Entity Notification refactor

* Entity Notifications

* Add Quotes to randomdataseederr
2020-05-19 08:22:18 +10:00
Benjamin Beganović
ea8a585771 wip 2020-05-18 14:06:13 +02:00
David Bomba
2000795fdc
Fixes for correct way to change an auth'd contact (#3708) 2020-05-16 21:13:32 +10:00
David Bomba
84a64773a6
Adjustments for OAuth (#3707)
* Fixes for null values in custom values

* Refactor mailing

* Working on send emails from GMail API

* Fixes for tests

* Test for GMail

* Adjustments for storing oauth token
2020-05-16 20:26:16 +10:00
David Bomba
d05bd7d2c1
Test for Gmail (#3706)
* Fixes for null values in custom values

* Refactor mailing

* Working on send emails from GMail API

* Fixes for tests

* Test for GMail
2020-05-16 12:04:24 +10:00
David Bomba
a0eecdd755
Fixes for tests (#3701)
* Update Exchange rate Data once a day

* Tests for currency conversions

* Fixes for tests

* Fix for adding blank product keys

* Class for logging emails sent

* Fixes for tests

* Fixes for testS

* Include credits in first_load=true

* Fixes for tests

* fixes for tests

* Fixes for tests:

* Fixes for tests

* Fixes for tests
2020-05-14 19:08:49 +10:00
Benjamin Beganović
a613cfed7c
Payment refunds (#3687)
* Fix whereClientId when starting payment

* Refunding using Paypal

* Refunding engine

* Cleanup and making refund method work

* Remove "refund" method from BasePaymentController

* Add "refund" to PaypalExpressPaymentDriver

* Extract refunding into own classes

* Apply php-cs-fixer to PaypalExpress

* Refunding with stripe
2020-05-14 11:04:23 +10:00
David Bomba
956c06c430
Fixes for OAuth (#3695) 2020-05-13 19:02:38 +10:00
David Bomba
fb5a923639
Working on OAuth (#3693) 2020-05-13 16:33:50 +10:00
David Bomba
350b61dc3f
Working on OAuth (#3692) 2020-05-13 16:20:05 +10:00
David Bomba
c3c39ffae2
Working on OAuth (#3691) 2020-05-13 15:40:55 +10:00
David Bomba
47f7cce6ff
Working on OAuth (#3690)
* Working on OAuth

* Working on OAuth
2020-05-13 15:38:42 +10:00
David Bomba
e4c2455267
Working on OAuth (#3689) 2020-05-13 15:30:17 +10:00
David Bomba
1e323a5770
Working on OAuth. (#3688)
* Working on OAuth

* Fixes for gmail transport

* Working on oauth
2020-05-13 14:51:16 +10:00
David Bomba
d9d2e21f93
Subscriptions (#3682)
* Working on subscriptions

* Implement return type in models

* Subscription implementation

* Improvements to handling importation of large accountS

* Loggin imports

* Activate collector

* Improve memory usage of import script

* Quote actions

* Send Quotes

* Fixes for seg faults!

* Minor fixes

* Fixes for client contact scopes
2020-05-09 08:35:49 +10:00
Benjamin Beganović
2704bf2f82
Client portal improvements & bug fixes (#3678)
* fix turbolink 404

* fix checkbox when adding card using stripe

* Fix hashed_ids problem when using PayPal

* php-cs-fixer

* Bump tailwind & purgecss

* fix auth scope

* scope to auth contact company
2020-05-09 08:20:37 +10:00
Benjamin Beganović
7f9abbf96b
Quick login with client contacts (#3680)
- New dropdown in navigation bar
- New switch_company route
- New $multiple_contacts variable in PortalComposer
2020-05-09 08:19:39 +10:00
David Bomba
b3eb2ae3b4
Fix companygatewaytransformer (#3677)
* Working on subscriptions

* Implement return type in models

* Subscription implementation

* Improvements to handling importation of large accountS

* Loggin imports

* Activate collector

* Improve memory usage of import script

* Appen Tags into emails - fix companygatewaytransformer
2020-05-06 21:49:42 +10:00
David Bomba
42ccfe0700
Checkout stubs (#3672)
* minor fixes for name spaces, collector facade and composer version bump

* Fixes for invoiceworkflowsettings

* Add more context to support emails

* Working on Firing Subscriptions

* Minor fixes

* Fixes for gateway filtering

* Checkout Driver
2020-05-04 21:13:46 +10:00
David Bomba
d7b22ba1db
Add analytics engine (#3664) 2020-04-30 22:33:57 +10:00
David Bomba
c503d58505
Adjust email quotas - Hosted plan. (#3663)
* Fixes for invitations not being created in RandomDataSeeder

* Resend failed/quota exceeded emails

* Queue email tests

* Refund a client for a ninja account

* Adjust email quotas - hosted plan
2020-04-30 21:45:47 +10:00
Benjamin Beganović
a70f42b31e
Migration improvements (#3662)
* scaffold the cases for migration

* Improve migration errors
2020-04-30 08:01:44 +10:00
Benjamin Beganović
9c5e087b87
Migration improvements (#3661)
* Fix migration & add new case

* Update logging statement
2020-04-29 23:24:52 +10:00
Benjamin Beganović
d516b1b097
Workflow settings for quotes & invoices (#3655)
* Fix inputs

* Workflow settings: Auto archive

- New InvoiceWorkflowSettings job
- Updated PaymentCreatedActivity to dispatch the job
- New 'Archivable' trait
- New 'archived_at' field

* Workflow settings: Sending e-mail to client with auto_send

* Workflow settings: Quotes

* Fix HTML markup

* Fix archive & sending

* Remove Archivable trait & migration file

* Change order of sending the events
2020-04-28 09:50:54 +10:00
Benjamin Beganović
ab8b05dd56
Client portal improvements (#3652)
* Install livewire/livewire

* Table improvements

- Cleanup of InvoiceController
- Added Livewire package
- New Livewire component (InvoicesTable)
- New WithSorting trait
- Removed rendering invoices from index.blade.php
- Removed Yaryabox/Datatables references in InvoiceController

* Refactor: Recurring invoices

* payments table & sorting improvements

* payment methods table

* quotes table

* credits table

* Add turbolinks
2020-04-23 08:49:23 +10:00
David Bomba
280e42d366
Hosted platform rules (#3650)
* Filter properties which can be saved on free accounts

* Self Updater

* Fixes for tests

* Refactor for settings

* Working on feature permissions - Settings Saver

* Fixes for events on self-updater

* Working on Self Updater

* Working on free /pro settings saver

* Implement free/pro/enterprise saving for settings

* Update company request

* Implement settings saver for hosted platform for clients and group level settings

* Implement quotas for hosted version

* Validation rules for hosted platform"
2020-04-21 15:16:45 +10:00
Benjamin Beganović
b285067adb
Client portal improvements (1/2) (#3649)
- Fix for building dependencies
- Fixes for data table sorting
- Improved styling of tables
- Improved buttons padding, position
2020-04-21 08:26:25 +10:00
David Bomba
820f770ef8
Upgrade Self Updater (#3646)
* Fixes for createinvoicepdf

* Filter properties which can be saved on free accounts

* Update laravel self updater version

* Upgrade self updater version

* Rework Composer upate

* Self Update
2020-04-20 08:35:48 +10:00
David Bomba
aa690578e3
Implement Currency Conversion library. (#3643)
* Fixes for testS

* Fixes for migration

* Fixes for migratin

* Query performance improvements

* Check Data Script

* Currency Conversion API

* Implement currency conversion

* Currency Conversions
2020-04-19 20:29:58 +10:00
Benjamin Beganović
2215f40ec3
Password protected invoices (#3635)
* Password protected invoices (wip)

* Add support for invitations

* Update comments & php-cs-fixer

* Add Forgot your password
2020-04-17 07:19:21 +10:00
David Bomba
e5a230e0c7
Performance improvements (#3634)
* Adjustments for tests

* Implement handling of temp downloading resources

* Refactor paths

* Refactors for file paths

* Refactor paths

* Add in S3 adapter

* Refactor company Documment URL

* Refactor for entity pdf performance

* Refactors for invoice generation

* Enhancements for emails invoices

* Emails

* Fixes for client portal queries
2020-04-16 18:41:25 +10:00
David Bomba
74a6c4f2ee
Reminders (#3630)
* Performance improvements moving from str_replace to strtr

* Remove legacy docs

* Clean up credit transformer

* Working on invoice emails

* Clean up for invoice designs

* Tests for light and dark theme emails

* Working on reminder scheduling

* Reminder Job Class

* Fixes for github actions

* PHP CS

* Test for reminders

* Test for reminders
2020-04-15 10:30:52 +10:00
Benjamin Beganović
a785329965
Fix company_token issue & pass unset_user to repository (#3629) 2020-04-15 08:37:27 +10:00
Benjamin Beganović
4af53922ed
Added new options for migrations (#3628)
- New 'existing.blade' e-mail
- Added .php_cs cache in .gitignore
- Updated MigrationController with new options
2020-04-14 08:20:54 +10:00
David Bomba
2ad84d4b76
Refactor invoice emails (#3625) 2020-04-13 11:49:58 +10:00
David Bomba
9349eb0414
Repeating headers and footers for PDF (#3622)
* Subclass Notification class

* Subclass Notification class

* Working on invoice design

* Working on page headers and footers

* Fixes for headers and footers

* Fixes for invoices
2020-04-12 21:51:27 +10:00
David Bomba
9138980cbd
Fixes for self updater (#3621) 2020-04-11 21:48:38 +10:00
David Bomba
ba55cc32e1
v5.0.4 (#3620)
* Version bump

* Refactors for refunds / credits

* Working on Company Ledger

* Company Ledger OpenAPI Documentation

* Version Bump

* Fixes for internal composer update
2020-04-11 21:19:05 +10:00
David Bomba
563d41c83a
Email Settings (#3615)
* Working on advanced email settings

* working on document storage

* Email Documents if they exist

* UBL invoices

* UBL Invoices

* Fixes for tests
2020-04-10 15:07:36 +10:00
David Bomba
afee58f746
Google Analytics (#3610)
* Working on google analytics

* google analytics implementation
2020-04-09 22:04:26 +10:00
David Bomba
05443d69ec
Implement CompanyToken and Subscriptions CRUD (#3609)
* Working on Tokens CRUD

* Fixes for company filters

* Working on Token CRUD

* Tests for tokens

* Fixes for OPENApi

* Subscriptions

* Subscriptions
2020-04-09 20:48:04 +10:00
Benjamin Beganović
8f4fa5e80d
Client portal improvements (#3607)
* Remove Html\Builder dependency from controllers

* Remove: yajra/laravel-datatables-html

- yajra/laravel-datatables-oracle as main non-dev dependency

* Added sorting to tables
2020-04-09 12:18:07 +10:00
David Bomba
213df6451f
Invoice Cancellation (#3605)
* Ensure release build sets correct file and directory permissions

* Invoice Cancellation

* Invoice Cancellations
2020-04-08 23:31:22 +10:00
David Bomba
bfc434071f
Fixes for self-installer (#3604)
* Fixes for self updater

* Fixes for self updater

* Fixes for self updater

* Fixes for self-updater
2020-04-08 22:19:07 +10:00
David Bomba
2fd3229efd
Implementation of Invoice Reversal (#3602)
* Version bump 0.0.2

* code cleanup

* Working on reversing an invoice

* Working on reversing an invoice

* Working on refunding invoice

* Reversing invoices

* Test for invoice reversals

* Invoice Reversal
2020-04-08 20:48:31 +10:00
Benjamin Beganović
28cc7d5e52
Client portal improvements: (#3595)
-  Hide Create Payment Method if no gateways exist
- Payment Screen, add $amount
- Fix breadcrumbs
2020-04-07 07:23:05 +10:00
David Bomba
8cffccb3bc
Fixes for composer 2 (#3593)
* Add privacy link to setup page

* Italics

* Tests for invoice actions

* Fixes for autoloading
2020-04-06 22:32:27 +10:00
David Bomba
6d7b7ca9a3
Invoice Deletion - Ledger (#3590)
* Fixes when implementing

* php_cs

* Clean up

* Clean up

* Working on adjusting ledger when an invoice is deleted
2020-04-04 21:32:42 +11:00
David Bomba
b162fde79e
Minor fixes for setup. (#3586)
* Reduce release filesize

* tweaks for github actions

* Release asset

* Tweaks for alpha release

* Fixes for release

* Fixes for alpha release

* Fixes for setup

* Minor fixes
2020-04-02 22:53:47 +11:00
David Bomba
cfafd65be0
Performance improvements for eager loading (#3584)
* Fixes for Sentry

* performance improvements for eager loading
2020-04-02 20:02:39 +11:00
David Bomba
ceb82ad275
Fixes for permissions (#3575) 2020-04-01 23:34:50 +11:00
David Bomba
eba0c19824
Fixes for Migration (#3572)
* Remove \Log::, fixes for tests, and fixes for migration

* Debugging migration

* Fixes for Migration
2020-04-01 19:54:22 +11:00
David Bomba
91cf1cc1f2
Debugging migrations (#3570)
* Remove \Log::, fixes for tests, and fixes for migration

* Debugging migration
2020-03-31 22:52:21 +11:00
Benjamin Beganović
9f563d2fbf
Handling setup errors (#3567)
- Removed count() for Mail::failures()
- Added new error alert if occurs
- Fix syntax error
- Apply php-cs-fix
2020-03-31 18:00:24 +11:00
Benjamin Beganović
3bc84f86d0
Display prerequisites for the setup (#3566)
* Display prerequisites for the setup
    - Block the doSetup() if SystemHealth is not true
    - Convert extensions when checking into array notation
    - Added new translations for the screen
    - New 'issues' page
    - Hide submit button when health is not good

* Fix more translations
2020-03-30 23:30:32 +11:00
David Bomba
7a13f688e7
Setup Workflow (#3565)
* Fixes for setup
2020-03-30 17:40:21 +11:00
David Bomba
54500cd558
Fixes for Email Controller (#3562)
* Fixes for notifications

* Fixes for email controller
2020-03-29 23:53:00 +11:00
David Bomba
9d6da3e37b
Fixes for notifications (#3561) 2020-03-29 23:47:41 +11:00
David Bomba
8b0fe63eb5
Send Generic entity email. (#3560)
* Enable identifying a user who submits a report to sentry for tracking purposes

* Minor fix for setup page

* Fixes for Tests

* Fixes for tests

* Generic Entity Emailer

* Fixes for emailing a generic entity
2020-03-29 23:22:14 +11:00
David Bomba
6df62faa82
Fixes for Invoice Designs (#3559)
* fixes for tests

* Working on Invoice Designs

* Update phpunit.yml

* Update phpunit.yml

* Working on sending an individual email

* Update phpunit.yml

* Fixes for designs

* Update phpunit.yml

* Working on sending entity email - individual

* Fixes for account creation

* Remove Laravel Horizon

* remove logging
2020-03-28 22:34:04 +11:00
Benjamin Beganović
de9faa9bc2
Work with setup (#3555)
* Remove StartupCheck from Kernel.php

* Real-time database check

* Catch the Exception with DB::getPDO

* Send test email - feature

* Forms

Co-authored-by: David Bomba <turbo124@gmail.com>
2020-03-28 14:46:50 +11:00
David Bomba
9cb7996a2e
Performance improvements for PDF rendering (#3556)
* Performance improvements for PDF generation

* CS Fixer

* Performance improvements for PDF generate

* Fixes for tests
2020-03-28 14:45:11 +11:00
Benjamin Beganović
b8b5245253
Setup page real-time checks (#3551)
* Setup page real-time checks:
- New setup.js inside of webpack.mix.js
- SetupController methods rename from snake case to camel case
- Added Axios module inside of app.js

* Disable Laravel Mix notifications

* Fix naming for request
2020-03-27 08:43:44 +11:00
David Bomba
2ed7c557b0
Fixes (#3549)
* Fixes for designs

* minor fixes
2020-03-26 19:25:44 +11:00
David Bomba
9fb609faca
fixes for preview (#3548) 2020-03-26 14:46:56 +11:00
David Bomba
6a7079b0be
Implement Github actions (#3547)
* Update phpunit.yml

* Update phpunit.yml

* Update .env.ci

* Update phpunit.yml

* Update .env.ci

* Update phpunit.yml

* Update phpunit.yml

* Update phpunit.yml

* Update phpunit.yml

* Update .env.ci

* Update phpunit.yml

* Update phpunit.yml

* Update phpunit.yml

* Update phpunit.yml

* Force /setup if system requirements are not met

* Update .env.ci

* Update phpunit.yml

* Minor changes for github actions"

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* cs-fixer

* cs-fixer

* Fixes for github actions

* db ports github actions

* Refactor the template engine
2020-03-26 14:23:57 +11:00
Benjamin Beganović
1256d44660
Setup page design: (#3544)
- Removed 'folders' from webpack.mix.js
- Design for setup page
2020-03-26 08:34:35 +11:00
David Bomba
1a0c20aa9d
Working on Github Actions (#3543)
* minor fixes

* minor fixes

* Fixes for self update

* fixes for template previews

* Add report_errors variable

* Ping route

* Create .env.vi

* Update and rename .env.vi to .env.ci

* Update .env.ci

* Update .env.ci

* Fixes for .env

* Code cleanup

* Create release.yml

* Update release.yml

* Update release.yml

* Create phpunit.yml

* Update phpunit.yml

* Update release.yml

* Update .env.ci

* Update phpunit.yml

* Update release.yml

* Update release.yml

* Update phpunit.yml

* Update .env.ci

* Update release.yml

* Update .env.ci

* Update .env.ci

* Update phpunit.yml

* Update release.yml

* Update release.yml
2020-03-26 00:03:23 +11:00
David Bomba
1d11358215
Ping route (#3541)
* minor fixes

* minor fixes

* Fixes for self update

* fixes for template previews

* Add report_errors variable

* Ping route
2020-03-25 19:36:47 +11:00
David Bomba
24c9121b1b
Template Previews (#3527)
* Fixes for add / archiving / deleting users

* Working on templates

* Fixes for templating

* Fixes for templating

* Add referral code to account creation

* Fixes for development environment
2020-03-25 13:50:08 +11:00
David Bomba
cd36f64423
Fixes for Users (#3526) 2020-03-25 10:20:42 +11:00
Benjamin Beganović
2b85feedc0
Fixes for "Pay now" with invoices (#3523)
* Fixes for invoice payments
- Changed the input from $hashed_ids to invoices[] as an array
- Fixes for payment.js

* Fix redirect back
2020-03-25 09:13:47 +11:00
David Bomba
90cb69f8a5
Performance improvements - PDF generation (#3521)
* Improve performance of PDF building

* Clean up

* Fixes for tests

* Minor fixes
2020-03-25 00:25:20 +11:00
David Bomba
cdc3ef12c2
Include Horizon (#3519)
* Fixes for white label

* Include Laravel Horizon

* Add Account ID to user table AND ensure a user cannot create an invoice across companies

* restart horison after an update

* Fixes for app setup

* Minor fixes

* Fixes for client routes

* Fixes for tests

* minor fixes
2020-03-24 20:15:30 +11:00
David Bomba
374a44aa55
Laravel Horizon. (#3517)
* Fixes for white label

* Include Laravel Horizon
2020-03-24 04:15:56 +11:00
Benjamin Beganović
ac5525c9ac
[V2] Client portal rework (#3516)
* Client login, reset and update password page

* Client dashboard, sidebar, PortalComposer.php

* wip

* Personal page & update for details

* Invoices, paying & pagination.blade.php

* Invoices, recurring invoice & buttons

* Payments, link component

* Payment methods

* Breadcrums, clean up & wrap up

* Remove format_date() method to formatDate on object

* Payments
- $this->render is now proxy for render()
- Removed logic from Controller.php to ClientPortal.php
- Added MakesDates to ClientGatewayToken.php
- StripePaymentDriver.php now returns correct views
- Refactor of adding new payment method
- Ignoring all local builds for public/js/clients/*

* Signature, wip

* Fix "Pay now" on single invoice

* Payments:
- Added ProcessInvoicesInBulk request class
- Refactor InvoiceController::bulk()
- Displaying terms & payments
- New signature.blade.php
- Removed comment from webpack.mix.js

* Quotes:
- Refactor ProcessInvoicesInBulk.php to ProcessInvoicesInBulkRequest.php
- Add new 'Quotes' field inside of PortalComposer.php
- Added MakesDates to Quote.php
- Added Quote::badgeForStatus()
- Cleanup payment.blade.php
- Quote showing and approving
- New resource 'quotes' in client.php
- New image for quotes, align-left.svg

* Credits:
- New 'credits' resource in client.php
- Fixes for client.php typo

* Breadcrumbs:
- Quotes
- Credits

* Placeholder for translations.

* Restore whereIn & client scope

Co-authored-by: David Bomba <turbo124@gmail.com>
2020-03-24 04:10:42 +11:00
David Bomba
43e57d0117
Fixes for self-update (#3514)
* minor fix for payment notifications

* styleci

* Limit Self updating to self hosters only
:

* Fixes for designs

* Minor fixes for self-update
2020-03-21 16:37:30 +11:00
David Bomba
4c23d43138
Working on Setup workflow (#3509)
* Refactor designs to remove whitespace

* enable dummy data for templating

* Insert faker data into templates

* Fixes for user deletion

* Documentation on User controller:

* Working on app setup

* Files for app setup

* Working on Setup

* Final fixes for setup controller

* Fixes for setup

* Fixes for first install

* Minor fixes
2020-03-18 20:40:15 +11:00
David Bomba
58803d37f4
Serve tailwind locally (#3505)
* Fixes for tests

* Working on PDF tables

* Fixes for null values in designs

* Refactoring entity variables for PDF

* Fixes for pdf variables

* Minor fixes for designs

* Working on variable replacement for tables

* Refactoring designs

* Refactoring designs

* Refactoring design implementation

* Working on refactoring designs

* Serve tailwind locally

* Design changes

* refactor white labelling

* refactors for white label

* Fixes for payment type id nulls
2020-03-17 19:40:10 +11:00
Benjamin Beganović
aad9f81e93
(Daily sync) Password reset pages & client portal rework (#3492)
* Dependency clearing

* Tailwind & templates cleanup

* Password reset pages & more features:
- New $this->render() method
- Password reset pages
- Tailwind CSS scaffold
- New styles for buttons, inputs, alerts
- Changed to shorthand syntax for language file (en)
- Added app.css and app.js which will be main endpoint
- Added new 'theme' field inside of ninja.php
- Scaffold for 'ninja2020' theme: both client and global theme
- Ignoring local builds of assets, until purgeCSS is there
- Overall cleanup

* Switch back default template to 'default'

* Remove app.css build

* Fix Codacy

* Fix Codacy 'doublequote' issues
2020-03-14 08:17:08 +11:00
Benjamin Beganović
64eed274e1
Fix broken 'force' migration: (#3489)
* Fix breaking 'force' migration:
- Uploaded migration file now has to be passed with abs path

* Cleanup
2020-03-13 07:38:22 +11:00
David Bomba
93056ea815
Fixes for preview controller (#3486)
* fixes for user model

* Remove stale css

* Working on previewing designs

* Fixes for design previews

* fixes for preview controller

* Fixes for setting company on login

* fixes for preview
2020-03-12 22:04:53 +11:00
David Bomba
a151789d9c
Fixes for invoice previews (#3485)
* Remove stale css

* Working on previewing designs

* Fixes for design previews

* fixes for preview controller
2020-03-12 21:50:40 +11:00
David Bomba
dc8ecbeeed
Fixes for company_user (#3477)
* Minor fixes for user delete

* Working on notifications

* Refactor for notifications

* Fix for checking settings withe negative integers

* Set payment id to 0

* Move pdf download to client side routes

* fixes for company_user

* Fixes for company_user
2020-03-11 22:05:05 +11:00
David Bomba
b2033a54f4
Verify user notification (#3474) 2020-03-11 10:40:10 +11:00
David Bomba
70a560c474
Fixes for invoice status with partial payment (#3472)
* Fixes for UserPolicy

* Improve notifications

* Company quantities

* Fixes for invoice status with partial payments
2020-03-11 09:20:09 +11:00
David Bomba
6ffea888b0
Fixes for designs (#3463)
* Fixes for designs

* remove logs
2020-03-10 07:07:46 +11:00
David Bomba
0366d470e9
Fixes for design preview (#3461) 2020-03-09 22:12:45 +11:00
David Bomba
9d3c6cb0ef
Fixes for PreviewController (#3460)
* Fixes for previewcontroller

* Fixes for previewcontroller

* Logging for invoices
2020-03-09 21:47:17 +11:00
David Bomba
7d39969a3b
Preview Route (#3456)
* Remove backup column from schema

* Add slack webhooks to company user table

* Preview route

* remove json column from company gateway

* fixes for testS

* Fixes for typos
2020-03-09 20:38:15 +11:00
David Bomba
d60c179da7
Fixes for deleting a company. (#3454)
* Fix for typo

* wind back self updater repo

* fixes for client settings

* Add current version to the account transformer

* fixes for deleting a company
2020-03-08 20:06:21 +11:00
David Bomba
37f295d49e
Improve notification performance (#3452)
* Improve notification performance

* Cascade deletes

* Fixes for company deletes

* Fixes for formatting

* todos for company

* Set currency id on payment

* Minor fixes for payment controller
2020-03-08 16:59:06 +11:00
David Bomba
a8c15ef1c9
Version checking (#3451)
* Ensure NINJA_ENVIRONMENT variable is present  in .env file

* Implement version checking in app

* Remove password protection from check version route
2020-03-08 09:15:11 +11:00
David Bomba
5a7986c23b
Bug Fixes (#3450)
* Convert quote to invoice workflow

* minor fixes

* checks for createaccount

* Bug Fixes

* Bug fixes
2020-03-07 23:46:45 +11:00
David Bomba
d13ab48d86
Refactor Designs (#3449)
* Refactor custom invoice HTML generation

* remove table_styles() method from designs

* Refactor designs

* Clean up designs
2020-03-07 17:31:26 +11:00
David Bomba
7c00c68bf3
Create route for invoice/credit/quote PDF download (#3441) 2020-03-07 00:41:15 +11:00
David Bomba
c57e6b0c6a
Fixes for setting default invoice terms/footers (#3439) 2020-03-06 23:01:07 +11:00
David Bomba
5bca8f8ad8
Fixes for default values for entities (#3438) 2020-03-06 22:57:11 +11:00
David Bomba
f0176b6e37
Fixes for quote transformer (#3434)
* remove jobs table

* Working on notifications

* Working on notifications

* Fix for pdf_variables

* Fixes for notification

* Fixes for viewing invoice with NO company custom_fields

* Fixes for company settings object creation

* Working on group settings

* Fixes for storing the correct currency_id on client creation

* Fix for invoicetransformer

* fix for store client

* Update PaymentAppliedValidAmount.php (#38)

* update company schema descriptions

* Update PaymentAppliedValidAmount.php

Co-authored-by: David Bomba <turbo124@gmail.com>

* Cast invoice designs to the Hashes

* Fixes for setting invoice/credit/design_ids to hashed

* Fixes for quote transformer

Co-authored-by: michael-hampton <michaelhamptondesign@yahoo.com>
2020-03-06 22:10:59 +11:00
David Bomba
280271718b
Migration improvements: (#3428)
- Refactored exceptions
- Changed failed.blade.php
- Removed report() method from exceptions
- Added new force flag for MigrationController.php
2020-03-06 07:30:32 +11:00
David Bomba
ff5a850e8d
Fixes for notifications (#3427)
* Fix for pdf_variables

* Fixes for notification
2020-03-05 19:36:52 +11:00
David Bomba
ab4ec76830
Fixes for designs and pdf_variables (#3425) 2020-03-05 18:50:50 +11:00
David Bomba
7acc6ee300
Repeating header and footers on Invoice PDFs (#3424)
* remove jobs table

* Working on notifications

* Working on notifications

* Fixes for setting group level currency id on new client

* Working on repeating headers

* Use CSS to force headers and footers

* recurring headers and footers

* Preview PDF

* Working on PDF Preview
2020-03-05 18:14:57 +11:00
David Bomba
6d5d1da472
Fixes for pdf_variables validation (#3419)
* Client and System Notifications

* Fix for group settings currency not applying correctly.

* Split head out of design in order to reuse headers and footers

* export the designs

* Fixes for pdf_variables
2020-03-04 22:09:43 +11:00
David Bomba
b157ee3917
Fixes for Credit PDF generation (#3417)
* Fix for design GET route

* Fixes for Credit PDF creation
2020-03-04 10:51:50 +11:00
David Bomba
b8c26bb534
company_user.settings default to null (#3416) 2020-03-04 09:46:19 +11:00
Benjamin Beganović
40af77d324
(V2) Improve validation & error handling (#3414)
* wip - migration transfer

* (WIP) Response refactor:
- Catching exceptions at top level
- Tests refactor

* wip

* Wrappign migration validator:
- Migration dropped to queue
- New validator messages
- New exception messages

* Fixes for tests
2020-03-04 09:44:42 +11:00
David Bomba
1393179160
Multiple fixes and features (#3411)
* Performance improvements for seeding

* Differentiating between system notification and user notifications

* Remove hard coded webhook url

* Working on system and user notifications

* notifications

* Set the currency on client if blank

* Refactor for inserting invoice defaults

* Refactor Default Invoice/Quote/Credit objects

* working on credits

* Implement mark_sent for quotes and credits
2020-03-03 20:44:26 +11:00
David Bomba
db88d6a50d
Fixes for V2 (#3408)
* Refactor for user

* payment notifications

* Fixes for contact request

* Fix validation for contacts

* Fixes for base repo

* Fixes for Invoice Repo

* hide password field on clientcontact
2020-03-02 21:22:37 +11:00
David Bomba
6e51b225b0
Fixes for missing fields for company transformer (#3406) 2020-03-01 21:45:23 +11:00
David Bomba
0ff14c97fd
Minors Fixes (#3405)
* Tests for client contact passwords

* test for client API

* Client Tests for password quality

* Final tests for client contact password

* Implement feature permissions

* Minor fixes
2020-03-01 21:18:13 +11:00
David Bomba
0f1c685bfa
Fixes for updating company user (#3401)
* update company schema descriptions

* Fixes for company user controlleR
2020-03-01 08:03:43 +11:00
David Bomba
f8ea4c0d0f
Implement Design API (#3400)
* Working on CompanyUser route

* CompanyUser update route

* tests for updating a company user

* Fixes for exchange currency rate

* Move slack and google analytics fields into company table

* implement Design API
2020-02-29 08:57:47 +11:00
David Bomba
0061da2600
Update Company User Route (#3398)
* Working on CompanyUser route

* CompanyUser update route

* tests for updating a company user
2020-02-28 23:11:56 +11:00
David Bomba
464dd3f9eb
Fixes for base repo ->save() method (#3392)
* Fixes for tests

* payment

* remove field from company table

* Fixes for repo save()
2020-02-28 07:23:25 +11:00
David Bomba
b2f4e51b55
V2 (#3385)
* Fixes for payment number

* Fixes for tests
2020-02-26 21:46:35 +11:00
David Bomba
0b2435af2a
Fixes for payment numbers (#3384) 2020-02-26 21:06:08 +11:00
David Bomba
acb0c0f7c1
Fixes for designs (#3376)
* Fixes for detaching a useR

* Fixes for designs
2020-02-26 15:11:17 +11:00
David Bomba
f20b0f7720
Fixes for company tokens. (#3375)
* Testing Company Ledger

* Fixes for company ledger

* Fixes for company ledger

* Company ledger testS

* Fixes for user / client / contacts transformers

* Fixes for tests

* Fixes for tokens
2020-02-26 14:26:07 +11:00
Benjamin Beganović
8121a0166d
Importing migration data via HTTP (#3365)
* Accept migration over HTTP

* Comment wip tests
2020-02-25 08:15:07 +11:00
David Bomba
3d31f810c0
Set Invitations as a default include for invoices (#3362)
* Working on importing company gateways

* Fix for companyuser settings object

* Migrate client_gateway_tokens

* Working on Notificaitons

* Working on notifications

* Failsafe for user-company

* unlink files

* Set DB for jobs

* Always have a fallback for company_id

* Fixes for user model

* Formatting for MultiDB

* Working on Company Ledger Tests

* Fixes for contact request

* Set Invitations as a default include for invoices
2020-02-24 21:15:30 +11:00
David Bomba
c1d3fd12a8
Import (#3360)
* Fixes for test data

* Fixes for tests

* Remove legacy vue components

* Add routing number to client gateway tokens

* working on important documents and company gateways

* Import fixes
2020-02-22 13:25:49 +11:00
David Bomba
4eebaf7eb4
Migrate to services (#3358)
* Working on ledger

* Migrate to services

* Refactor to services

* Migrate to services

* Jobs cleanup
2020-02-21 08:05:01 +11:00
Benjamin Beganović
cf3bcb90be
Accept migration over the API (#3356) 2020-02-21 07:58:38 +11:00
David Bomba
9e9cd37b87
Modifications to Designs (#3353)
* Working on Quotes

* Naming refactor for Quotes

* Quote Actions

* Quote Pdfs

* Quote PDFs

* Refunds in Stripe

* Fixes tests

* Company Ledger work
2020-02-20 07:44:12 +11:00
David Bomba
0690d615dd
Fixes for Send Email (#3347)
* fixes for travis

* Fixes for OpenAPI docs

* Fixes for send -> send_email
2020-02-18 08:08:27 +11:00
David Bomba
f57339f185
Fixes and Refactors for Invoice Emails. (#3339)
* Working on emailing invoices

* Working on emailing and displaying email

* Working on emailing and displaying email

* Email invoices

* Fixes for html emails

* Ensure valid client prior to store

* Ensure client exists when storing an entity

* Update variable name send -> send_email for client_contacts

* Mailable download files

* Extend timeouts of password protected routes when a protected route is hit

* Add default portal design to company settings

* Minor fixes

* Fixes for Tests

* Fixes for invoicing emails

* Refactors for InvoiceEmail

* Implement abstractservice

* Refactors for services

* Refactors for emails

* Fixes for Invoice Emails
2020-02-17 20:37:44 +11:00
David Bomba
1e35c90ee6
Fixes for Tests, MultiDB (#3334)
* refactor send_invoice to generic -> send

* Code cleanup

* Fixes for tests and multidb
2020-02-15 23:27:24 +11:00
David Bomba
a79c7bf60d
Code Cleanup
* Working on emailing invoices

* Working on emailing and displaying email

* Working on emailing and displaying email

* Email invoices

* Fixes for html emails

* Ensure valid client prior to store

* Ensure client exists when storing an entity

* refactor for emails

* Design Transformer

* Include designs in first_load response

* Code cleanup
2020-02-15 20:06:30 +11:00
David Bomba
4a3d37a42b
Flutter Client ! (#3325)
* Working on emailing invoices

* Working on emailing and displaying email

* Working on emailing and displaying email

* Email invoices

* Fixes for html emails

* Restart queue after self-update

* Email Invoices

* Push Flutter Web Clientgit statusgit status!
2020-02-13 22:27:42 +11:00
David Bomba
f04f2b15fd
OpenAPI Docs and additional password protection on self update route: (#3320) 2020-02-12 21:06:59 +11:00
David Bomba
3a76d8bc34
Force at least 1 blank contact per client (#3319) 2020-02-12 21:03:17 +11:00
David Bomba
5649c039c1
Minor fixes (#3318) 2020-02-12 20:27:35 +11:00
David Bomba
162580bcd3
Fixes for ClientContact CRUD (#3317)
* Fixes for downloading invoice PDF

* Fixes for client contact CRUD
2020-02-12 20:18:56 +11:00
David Bomba
be3ade65f1
Download Invoice by Invitation (#3312)
* style cs

* Style CS

* Throw Record not found exception if invalid primary key hash is provided

* Improve error handling

* Create abstract implementation for designs

* working on custom designs

* Add Design Model

* invoice services

* Download Invoice by Invitation
2020-02-12 11:41:17 +11:00
David Bomba
af72d27a49 fixes for update invoice (#3303) 2020-02-10 21:13:46 +11:00
David Bomba
9a19f7fd4c Fixes for invoice update and invoice designs (#3302)
* BaseController cleanup

* Working on invoice designs

* Working on invoice designs

* working on invoice designs

* working on invoice designs

* invoice designs

* Working on Invoice Designs

* Fixes for user settings object

* Working on invoice designs

* Fixes for encoded user settings

* Working on contact localized invoice pdfs

* working on invoice designs

* Fix for invoice update 500 error
2020-02-10 20:53:02 +11:00
David Bomba
e8f19f9b63
Fixes for invoice save (#3295)
* Working on Invoice Designs

* Fixes for invoice save

* Threshold changes for sending large accounts on ?first_load=true
2020-02-07 08:09:15 +11:00
David Bomba
f519fc765b
Improvements for eager loading (#3290)
* Working on invoice designs

* Working on Invoice Designs

* Improve eager loads

* Improvements for eager loading
2020-02-06 23:00:22 +11:00
David Bomba
4f82f1b903
Improve eager loads (#3289)
* Working on invoice designs

* Working on Invoice Designs

* Improve eager loads
2020-02-06 20:35:51 +11:00
David Bomba
797c3fb3f6
Fixes for refunds (#3288)
* Working on invoice designs

* Fix unusual form request issue in tests vs production

* Fixes for form requests

* Fixes for refunds
2020-02-06 08:54:20 +11:00
David Bomba
11960e25e7
Fixes for refunds (#3285)
* Working self-updater package

* Fixes for travis

* Working on invoice designs

* Working on invoice builder

* Tests for invoice design

* Working on invoice designs

* Minor fixes

* Working on Invoice Design Engine

* Working on invoice designs

* Fixes for refunds
2020-02-05 21:28:56 +11:00
David Bomba
3ec996ee5d
Invoice Designer (#3283)
* Working self-updater package

* Fixes for travis

* Working on invoice designs

* Working on invoice builder

* Tests for invoice design

* Working on invoice designs

* Minor fixes

* Minor fixes for randomdataseeder
2020-02-05 15:06:03 +11:00
David Bomba
cda534e996
Explicitly call the service() method, rather than obfuscate. (#3281)
* Include fix as describe by @michael-hampton here #3280

* Refactor createinvitations away from jobs

* Clean up

* Fixes for service() refactoring

* Fixes for services refactor
2020-02-04 18:51:44 +11:00
David Bomba
c25de936ed
Refactor - moving away from jobs. (#3279)
* Implement Services

* implement service pattern

* Service patterns

* Refactoring invoice paid

* refactoring invoice

* Refactor jobs

* Refactor - remove jobs

* Refactor jobs

* Refactoring jobs

* Refactoring away from jobs

* Refactoring jobs

* Add Credits to test data
2020-02-03 21:33:07 +11:00
Benjamin Beganović
67c6ac1bc2
Test fixes & code improvements (#3267)
- Updated rules for storing credits
- Fixed route controller
- Added test for crud operations
- Added new $invoice object in MockAccountData
- Added & registered CreditPolicy
2020-01-30 14:02:25 +11:00
Benjamin Beganović
0f661495db
Create 'Credits' module (#3263)
* Create 'Credits' module

* Various fixes on Credit module

* Fix MarkCreditPaid factory
2020-01-30 12:27:22 +11:00
David Bomba
45cc67075d
Include contacts in sample migration files. (#3260)
* add types to transformers

* minor fixes for test data creator

* Working on refunds

* Update migration files to include client contacts

* Working on refunds

* Working on refunds

* Working on refunds

* Refund Tests

* Working on refund tests
2020-01-29 13:03:47 +11:00
Benjamin Beganović
01c47d7c5d (Sync) beganovich:v2 to invoiceninja:v2 (#3254)
* Add more checks to invoice test

* Uploading migration file & test

* Comment redundant tests

* Improve tests with smaller sample files. (#3250)

* Reduce migration file size to improve test velocity

* minor fixes

* remove xhprof ext

* Tests for templates

* Remove commented tests

* Fix invoices testing & importing

* Sending e-mail when migration fails

* Uploading & storing the migration file
- Added Swagger notation
- Added MigrationTest.php method

Co-authored-by: David Bomba <turbo124@gmail.com>
2020-01-28 07:56:48 +11:00
David Bomba
a72e1faa84
Improve tests with smaller sample files. (#3250)
* Reduce migration file size to improve test velocity

* minor fixes

* remove xhprof ext

* Tests for templates
2020-01-27 18:49:04 +11:00
Benjamin Beganović
11cc40d23a Migrate commits from 2-migration-with-json into v2 (#3241)
* Scaffold test case

* Import.php tests:
- Basic test scaffold
- Test if exception is thrown when unknown resource
- Company update test

* Migration importer & exception classes

* Company migration test
- Added 3rd parameter for accepting custom resources
- Wip tax_rates migration

* Tax rate migration

* Tax rate update
- Added company_id & user_id property modifiers

* Users migration

* Save IDs for users importing

* Add 'transformIds' method

* Importing clients
- An exception for resource not migration
- Dependency logic
- Removing id on insert

* Exception for unresolved dependency

* Import clients

* Method for inspecting user_id

* Importing invoices

* Importing quotes

* Fix tests & wrap with try-catch

* Fix tax_rates user_id transform

* Working on migration

* Tests for migration

* fixes for test

* Tests for Import.php
- Added ext-json to composer.json

* Tests for Import.php
- Added ext-json to composer.json

* Change migration exceptions to MigrationValidatorFailed

* Fixes for tests and counters

* Unzipping the migration archive
- Changed .gitignore to ignore all local migrations

* Comparing local data with inserted

* Ignore verification - wip

* Fix formatting for api.php

* Uploading file test (wip)

* Fix typo

Co-authored-by: David Bomba <turbo124@gmail.com>
2020-01-24 07:35:00 +11:00
David Bomba
a1ae991684
Working on projects and tasks (#3232) 2020-01-21 11:32:34 +11:00
David Bomba
a70b024d94
Payment refunds, Projects, Expenses and Vendors. (#3228)
* OpenAPI Documentation for Vendors and Expenses

* Rules for refunds

* Rules for Payment Refunds

* Fixes for quote invitation link

* Project
2020-01-20 21:10:33 +11:00
David Bomba
0e9d098049
Fixes for Vendor Contacts (#3227)
* bug Fixes

* Working on Vendor GET route

* Fixes for vendor contacts
2020-01-20 15:53:40 +11:00
David Bomba
84642bf035
Expense and Vendors (#3226)
* add expenses, vendors and vendor_contacts along with factories and test data

* padding out vendors, expenses

* Minor fixes

* Add Expense and Company TransformerS
2020-01-20 12:31:58 +11:00
David Bomba
27d06a2ae1
Payment tests (#3224)
* Auto Calculate Payment amount if parameter is not supplied

* Tests for payments

* Flag logs to be sent with support messages
2020-01-19 13:02:02 +10:00
David Bomba
770f0763f4
OpenAPI documentation for Payments. (#3223)
* Working on API docs for payments

* Fixes for OpenAPI documentation

* Fix for conditionals in invoice calculator
2020-01-19 11:19:10 +10:00
Benjamin Beganović
67c485c1b8 Fix PaymentRepository data parameter (#3217)
* Fix PaymentRepository.php parameters

* Apply formatting

* Fix return when $data['invoice'] !== $invoice_total_adjustment

* Pass $request->all() instead of whole request

* Pass $request->all() on update method
2020-01-18 07:10:38 +10:00
David Bomba
6167907a8e
Fix invoice payable rules (#3212) 2020-01-15 19:43:40 +10:00
Benjamin Beganović
633a75318e Fix inconsistency at ProductRepository (#3209)
- Remove required Request object to be passed
- Use array of data instead
2020-01-14 08:26:36 +10:00
David Bomba
0878decf18
Implement payment rules at application edge (FormRequest) (#3202)
* Ensure payments, invoice and credit amount balance in the validator prior to saving

* additional payment validation rules and tests for processing payments

* Factories for credits

* Tests for payments

* Working on updating a payment

* Working on updating a payment

* fixes for updating a payment

* Working on Payment Tests

* More tests for payments, formrequests

* remove product_key as required from products
2020-01-10 07:15:10 +11:00
David Bomba
957ac9f5d8
Fix for password protected authorization (#3198)
* Remove unnecessary save() on invoice

* Update copyright

* Working on Credit Repository

* Implement credits as a paymentable entity

* Add credit_id to transformer

* fix rules for update payment

* Fix random deleted_at keys in transformers

* Fix for password_protect check
2020-01-07 11:13:47 +11:00
David Bomba
f712b789ca
Fixes for tests (#3184)
* fix typo

* php-cs traits

* CS fixer pass

* Password protect User routes

* Implement checks to prevent editing a deleted record

* Clean up payment flows

* Fixes for tests
2019-12-31 08:59:12 +11:00
David Bomba
9790a841c4
Performance improvements. (#3180)
* Fixes for missing company object in events

* Cleanup client balancing code

* Fixes for client balance

* Fixes for missing company variable

* Fix activity transformer to prevent multiple DB calls
2019-12-30 09:06:42 +11:00
David Bomba
ff7b62de51
Fixes for missing company object in job classes. (#3179)
* Fixes for missing company object in events

* Cleanup client balancing code

* Fixes for client balance

* Fixes for missing company variable
2019-12-29 17:28:57 +11:00
David Bomba
e406020ee5
Bug Fixes (#3177)
* Implement first_load query parameter which checks client size and returns an truncated response if client count is greater than 1000

* Fixes for listeners
2019-12-28 06:30:22 +11:00
David Bomba
54fc78a88b
Refactor jobs to be MultiDB aware (#3174) 2019-12-27 11:28:36 +11:00
David Bomba
6bf4cfe395
Add Credits to Schema (#3169)
* Fix formatting and variable insertion for email templates

* Refactoring for invoice emails

* Fixes for midddleware

* Improve refresh includes

* change setting name
2019-12-25 23:22:10 +11:00
David Bomba
5e7512071f
Implement EmailInvoice Job (#3166)
* Working on quote counter

* Add tests for quote number + shared counter tests

* Create invoice job

* Add last_sent_date to invoice/quote table, remove type_id

* Implement EmailInvoice Job
2019-12-22 21:28:41 +11:00
David Bomba
519c1114c1
Add additional date formats / performance improvements. (#3161)
* Improve eager loading

* Fixes for performance on client portal datatable with large datasets

* Add missing date format
2019-12-18 21:49:28 +11:00
David Bomba
556b2ab1c9
Fixes for Storing Quotes (#3159)
* Return blank object for group settings

* Implement Quote Store

* Clean up Logging
2019-12-18 09:40:15 +11:00
Benjamin Beganović
da49880733 Massively creating resources (#3152)
* Bulk storing request & accesing policy service

* Transform hardcoded action to self-property

* Testing, support for multiple resources

* Uncomment, response(200)

* Change authorize to isAdmin() property
2019-12-17 21:58:23 +11:00
Benjamin Beganović
104e8728c2 Fix artisan:route issue (#3149) 2019-12-16 22:52:00 +11:00
David Bomba
c6e1658ffe
Refactors (#3148)
* Refactor company properties to be presented from settings object instead of company properties

* Working on Email Tests

* Working on emails

* Working on email templats

* Include text version of email

* Refactor Email template builder into trait'

* Fix for custom_value4

* Refactor payment_date -> date && payment_type_id -> type_id

* expose paymentables to API

* expose paymentables to API

* Implement a next_send_date field in invoice/quote tables to allow control over reminder scheduling

* Add custom_values to users,documents and company_gateways tables
2019-12-16 22:34:38 +11:00
David Bomba
f8551d6119
Multi-Master Support for MySQL (#3146)
* Minor fixes for OpenAPI docs for clients

* Add fields to company transformer

* Padding email templates, system level and custom

* Minor fixes for email template subject

* Working on Email Templates

* Clean up User model, remove redundant permissions methods

* Implement Locale for API

* Implement Locale middleware for client routes

* Remove global constants

* Fixes for removing the global constants file

* Working on TDD for emails

* TDD for emails

* implement additional template variables

* Add support for Multi-Master replication with MySQL
2019-12-14 16:49:48 +11:00
David Bomba
9d8e4fdb06
Change companies table property domain to subdomain (#3141) 2019-12-11 07:53:41 +11:00
David Bomba
ec5cbe66a0
New Validation rule for USER POST route (#3138) 2019-12-08 21:28:52 +11:00
David Bomba
90eeb59754
Fixes for client display_name (#3137)
* Minor fixes for OpenAPI docs for clients

* Add fields to company transformer

* Padding email templates, system level and custom

* Set Unique value on client_contact_id & invoice_id on invitations table

* Fix for client display_name
2019-12-08 18:33:44 +11:00
David Bomba
d07c11ef62
Add fields to company transformer (#3132)
* Minor fixes for OpenAPI docs for clients

* Add fields to company transformer
2019-12-06 07:41:13 +11:00
David Bomba
01173c66d8
Fixes for validation. (#3130)
* Fixes for OpenAPI Documentation + fix support for docs for PHP 7.4

* Minor fixes for GMail API

* Add fix for 2 contacts with no email addresses failing validation, emails are optional! but cannot be duplicated if a value is set

* Return template as a object with subject and body components

* Fixes for OpenAPI Schema

* Stubs for payment edge cases

* payment tests
2019-12-05 17:22:20 +11:00
David Bomba
a2cf42766d
Minor fixes for Gmail API (#3125) 2019-12-04 16:26:07 +11:00
David Bomba
bc85bcd747
Test Gmail Sending using oauth (#3121)
* Reset DB connection after a DB scan in the same request

* Testing Gmail Oauth Email
2019-12-04 13:27:28 +11:00
David Bomba
c71f49a6db
Fix property name on user model (#3120) 2019-12-04 13:03:51 +11:00
David Bomba
329a9ffb73
Update OAuth token on Auth. (#3119)
* Fixes for OAuth

* Update token on OAuth login
2019-12-04 13:00:59 +11:00
David Bomba
fb2ca5dbe9
Fixes for OAuth (#3118) 2019-12-04 12:26:57 +11:00
David Bomba
0d15926e02
OAuth Token support (#3117)
* Add oauth->token to users table

* Add oauth->token to fillableon model
2019-12-04 12:14:55 +11:00
David Bomba
75df82a71c
Fixes (#3116)
* Fixes for OpenAPI Documentation + fix support for docs for PHP 7.4

* User update tests

* Add total_taxes to invoice table, implement addition create-test-data fields for item and invoice level taxes
2019-12-04 12:06:14 +11:00
David Bomba
abcd2fd1bb
Fixes for templates and bulk actions (#3112)
* change route names from camelcase to snake case

* Fixes for bulk actions

* fixes for bulk actions

* fixes for templates

* fixes for templates
2019-12-02 15:18:36 +11:00
David Bomba
25514b43cf
Allow fine grained payments (#3110)
* Allow payment amounts to be partial per invoice paid

* edge case tests for payments

* Allow per invoice payment amounts and allow direct payments which simply credit a clients credit_balance

* Fixes
2019-12-01 22:23:24 +11:00
David Bomba
cbe4dc072b
Adjustments for template controller to make entity and entity_id optional (#3108) 2019-11-30 14:11:49 +11:00
David Bomba
32aedf26dd
Attach and Detach a user to a company (#3107)
* fixes for template controller

* Default gateway as string

* Bulk actions

* Move currency_id back to settings

* Allow store and update currency ID

* Attach user to company_user

* Add / Detach company users
2019-11-30 13:42:44 +11:00
David Bomba
bf41c634c0
Cast to string - default_gateway_type_id (#3105)
* fixes for template controller

* Default gateway as string
2019-11-29 22:15:50 +11:00
David Bomba
4391ad087c
Fixes for client contacts updating (#3104) 2019-11-29 21:41:07 +11:00
David Bomba
a7048ee61d
Implement Support for PHP 7.4 (#3102)
* Fixes for company factor

* Add dates to create test data

* Fixes for transformers, use faker to generate random dates

* Bump to PHP 7.4git add app/Http/Requests/User/DetachCompanyUserRequest.php

* Fixes for route model binding
2019-11-28 21:35:13 +11:00
David Bomba
9702dc741c
Refactor for invoices/quotes/credit transformers (#3100)
* Refactor Invoices / Quotes / Credits to use the same transformer

* Add contact_key to factories
2019-11-27 21:27:24 +11:00
David Bomba
4bc92a7aa1
Stub GMail Driver (#3099)
* fix for blank client settings

* Force all custom fields to strings

* Fixes for bulk actions

* Fixes for company POST route..

* Change text from Bitcoin to CRYPTO

* Implement default_gateway_type_id in transformer

* use scopes for company filtering

* Implement validation for portal_domain

* Add Google API client

* Add activities to company transformer
2019-11-27 20:47:59 +11:00
David Bomba
cec7b756e8
Fix for client transformer (#3097)
* fix for blank client settings

* Force all custom fields to strings

* Fixes for bulk actions

* Fix for client transformer
2019-11-26 21:27:44 +11:00
David Bomba
0606973035
Fixes for Token Name (#3095)
* Fix for CORs error where file download were being prevented by headers

* Fixes for CORs and File downloads

* give contextual error messages for invalid route actions

* Clean up LoginController for OAuth Testing

* Quote Actions

* Invoice and Quote Actions

* Fixes for Token Name

* Change test data seeder to create separate small,medium,large companies
2019-11-26 19:14:01 +11:00
David Bomba
0908893180
Fixes for client currency id (#3092)
* Fix for CORs error where file download were being prevented by headers

* Fixes for CORs and File downloads

* give contextual error messages for invalid route actions

* Clean up LoginController for OAuth Testing

* Quote Actions

* Invoice and Quote Actions

* Fix for client currency
2019-11-25 20:38:55 +11:00
David Bomba
808c6deb88
Workaround for recursion issue on login company_user -> user -> company_user (#3091) 2019-11-24 19:19:53 +11:00
David Bomba
52c031e290
Email template defaults (#3090)
* Update User and Company User

* Email Template Defaults for Settings

* Separate methods for saving client and group settings
2019-11-24 17:37:53 +11:00
David Bomba
5c9ada0f77
V2 (#3089)
* Set default templates in Company Settings

* Working on Company User creation

* Working on company_user relationship

* Fixes for company_user relation

* Clean up
2019-11-23 08:10:53 +11:00
David Bomba
69efd4d574
Enhancements to API (#3088)
* working on email throttling

* Fixes for invitaiton links

* pass custom fields as object

* Add user agent to company token

* Update company token transformer

* Remove prefix setting from CompanySettings

* Implement user agent on company token & provide better error handling for undefined relationships includes

* Fix bulk actions

* Working on updating/creating a company user

* Fixes for tests
2019-11-21 19:38:57 +11:00
David Bomba
170340cdfa
Migrations fixes (#3086)
* working on email throttling

* Fixes for migrations
2019-11-21 07:55:16 +11:00
David Bomba
f59585dd62
Fixes for tests (#3082)
* Update client paid to date job:

* Backup Invoice HTML when invoice is marked as sent and paid

* Store HTML of invoice when invoice was paid

* Fix foreign keys in db schema

* V2 Endpoints for Company Migrations

* Fixes for tests
2019-11-20 16:41:49 +11:00
David Bomba
6d225b7fe7
Fixes for payments (#3081)
* Bump client contacts in test data

* Only allow a payment to be deleted once

* Update client balance and paid to date on payment

* Clean up
2019-11-20 08:06:48 +11:00
David Bomba
ff17e3eb67
Payment deletes (#3079)
* Add amount to paymentable tables to enable reversing payments gracefully

* Create Test Data artisan comannd

* Delete Payments + Fixes for company settings persistence
2019-11-19 21:23:56 +11:00
David Bomba
fe5a97e174
Activity API fixes + Payments API (#3076)
* Fixes for Store Payment Validation

* Tests for Payments

* Use custom validator to ensure payments are made ONLY to payable invoices

* Working on custom payment validators

* Update Client balance

* fixes for client balance

* Fixes for activity API
2019-11-18 21:46:01 +11:00
David Bomba
81c481c071
Fixes for RandomDataSeeder (#3073)
* Provide failsafe creation of invoice invitations

* URL Links for invitations

* open up route for invitations

* Set DB by Invite

* Set DB By invitation Key

* Tests for setting DB based on user email address

* Middleware for setting db by email address

* fixes for tets

* fixes for tests

* Tests for bulk actions

* Payments API

* Fixes for tests
2019-11-16 14:12:29 +11:00
David Bomba
e1fa1186d1
CORS implementation (#3065)
* fix regression in company name

* HasOneThrough for company user

* Validation rules for contact email addresses

* Force a blank contact if no contacts passed in client
2019-11-13 22:32:53 +11:00
David Bomba
2ce89e5f48
Fixes for actions (#3056)
* Update API docs

* cleaning up migrations

* Fixes for tests

* fixes for tests

* Delete client contacts when soft deleting a client

* Fixes for actions
2019-11-12 15:41:02 +11:00
David Bomba
e4c18e734a
Implement fees and limits map for company gateways (#3053)
* Add ability to remove group settings level company logo

* Company Gateway Fees and Limits

* Validation tests for FeesAndLimits

* Working on company gateways

* Working on transforming fees_and_limits in transformer

* Implement fees and limits map for company gateways
2019-11-11 23:21:19 +11:00
David Bomba
37a826374b
Remove settings from invoice table (#3051)
* Implement client/group/company level counters clientCounter, groupCounter and counter

* Implement functionalityfor customising the timing of invoice_number creation

* Add Jobs

* adjustments

* clean line items at the request layer

* Clean line items at the request layer

* minor formatting for notification

* Schema Fixes

* schema changes, cast country_id to stirng

* Fixes for tests

* force line item ids to string

* Map company gateway fees and limits

* Schema changes

* Remove id from invoice item stdClass

* Remove settings object from invoice table
2019-11-10 23:06:30 +11:00
David Bomba
a6f928b181
Fixes for settings, implement invitations from invoice request (#3047)
* Fixes for client portal localization

* Replace Invoice Ninja Logo with user defined logo and website URL in client portal

* Minor Fixes

* Refactor for invitations on invoices

* Fixes for settings
2019-11-07 09:57:09 +11:00
David Bomba
3405b91c64
Bulk download PDF, Client Portal formatting (#3046)
* Update OpenAPI for TemplateController

* Add bulk invoice download functionality

* Working on Client portal

* Move selective queries to cache instead of DB

* Fix formatting in Payments table, implement cache for languages, resolve route model for clientcontacts and users
2019-11-06 09:52:57 +11:00
Benjamin Beganović
4694675b91 Payment methods (#3045)
- Deleting payment methods
2019-11-06 09:51:39 +11:00
David Bomba
06a120e128
Resolve conflicts (#3043)
* Request Cancellation

* Add fields to settings

* Recurring invoice cancellation request

* Stub Template controller

* Template Controller

* Fixes for git commit
2019-11-05 10:26:15 +11:00
David Bomba
9050d4e564
Template Controller (#3042)
* Request Cancellation

* Add fields to settings

* Recurring invoice cancellation request

* Stub Template controller
2019-11-05 07:50:10 +11:00
David Bomba
b7d3f4e7aa
Client Portal conditionals (#3039)
* Fixes for tests

* add additional fields for company settings

* fixes for travis

* update company settings schema

* Disable client portal

* Client Portal middleware

* Working on client portal

* hide portal

* Implement notification channgels for User and ClientContact models

* Push notifications onto queue

* Force authentication if client portal is password protected
2019-11-04 11:22:59 +11:00
David Bomba
14ea3fe256
Tax Rate fixes (#3031)
* Ensure tax rate queries are scoped appropriately

* Add Tax Rate Policy

* Fixes for settings

* doc blocks

* Add failed jobs tables to migrations

* Only 1 migration file for failed table
2019-10-30 13:41:18 +11:00
David Bomba
13e104c1d9
Fixes for line items (#3028) 2019-10-29 22:12:59 +11:00
David Bomba
5fafbac36f
Tax Rates (#3026)
* Insert generic for client country if not set

* Invoice fixes

* fixes

* Schema changes

* Refactor Schema and implement fixes for testS

* Use Dispatcher for system logs

* Add TaxRateController

* Update OpenAPI definitions for Tax Rates
2019-10-29 13:55:26 +11:00
David Bomba
0f9aae454b
Update Company settings, OpenAPI documentation and Company Migration (#3025)
* Insert generic for client country if not set

* Invoice fixes
2019-10-28 08:36:09 +11:00
David Bomba
a60613aa26
Track signup platform (#3014)
* update company settings and OpenAPI definitions

* Fixes for tests

* Add extra variables to company settings

* Track signup platform when new account signup processed
2019-10-24 15:46:24 +11:00
David Bomba
e4f0b08d3e
Fixes for settings (#3009)
* Add Includes

* Clean up company settings + tests

* Update Company Settings Schema

* Fixes for tests

* fixes for tests

* fixes for settings
2019-10-23 12:01:25 +11:00
David Bomba
ed449ea1ab
Default gateway type ID (#3008)
* Show Recurring Invoice - Client Portal

* Password protect some routes

* Password Protection Routes

* Add default_gateway_type_id to gateway table
2019-10-22 22:27:03 +11:00
David Bomba
ad75344503 OpenAPI docs for support message API 2019-10-17 20:31:47 +11:00
David Bomba
fbc03aa9f7 Update setting fields 2019-10-17 19:26:46 +11:00
Benjamin Beganović
b35bff3cde Forward support messages to contact@invoiceninja.com with system-level info (#2993)
* Sending support messages via API

* Sending log files only if self-hosted

* Remove legacy code
2019-10-17 07:12:38 +11:00
David Bomba
b6d6d3928b
Eager loading (#2995)
* Fixes for tests

* Eager load payment types
2019-10-16 21:24:33 +11:00
David Bomba
1c21b6dc7c
Invoice Calculations (#2985)
* Fixes for invoice item line totals

* Refactoring invoice calculations

* Update api-docs

* Fixes for invoice calculations

* remove tests

* fixes for config files
2019-10-13 21:59:55 +11:00
David Bomba
dde3f1192a
Change company_logo_url to company_logo (#2980) 2019-10-11 15:30:26 +11:00
David Bomba
778b655aa3
Clean up todos (#2979) 2019-10-11 13:20:04 +11:00
David Bomba
8d14c6b2bd Switch currency_id back to settings object 2019-10-10 21:43:50 +11:00
David Bomba
fb150cc1b0 Documentation for SettingsSaver trait 2019-10-10 13:24:19 +11:00
David Bomba
7a4decdd3d working on type casting 2019-10-10 10:15:35 +11:00
David Bomba
056b2cbdb7 Tests for company settings 2019-10-09 23:21:21 +11:00
David Bomba
0e9ca5c1ce Company Settings 2019-10-09 16:57:32 +11:00
David Bomba
0469de7466 fix for returning token on company creation 2019-10-09 16:47:12 +11:00
David Bomba
534b515849 Abstract settings save to separate trait 2019-10-09 10:53:33 +11:00
David Bomba
2e4cd7459a Add pay now button to each row in table 2019-10-08 16:09:59 +11:00
David Bomba
fb513ebe69 Customise column width for datatable 2019-10-08 14:04:35 +10:00
David Bomba
75b089fa19 Multi payment invoices with filtering of already paid invoices 2019-10-08 13:06:27 +10:00
David Bomba
accbbcf67b Flash message 2019-10-08 12:03:40 +10:00
David Bomba
cc85746af0 Upload company logo to group settings 2019-10-08 07:17:55 +10:00