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

1204 Commits

Author SHA1 Message Date
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
David Bomba
d35a90cb94 change logo_url to company_logo_url 2019-10-07 22:06:23 +11:00
David Bomba
b8515e26b0 Upload company logo to client settings 2019-10-07 22:05:06 +11:00
David Bomba
2a7f62b579 Fixes for tests 2019-10-07 21:36:30 +11:00
David Bomba
fda6ec33fd Company Settings OpenAPI 2019-10-07 21:21:02 +11:00
David Bomba
c46ebb2778 Fixes for tets 2019-10-07 20:39:22 +11:00
David Bomba
5bbc274a48 Fixes for api-headeR 2019-10-07 17:31:26 +11:00
David Bomba
a54b6c3055 Finalized OpenAPI 2019-10-07 15:57:14 +11:00
David Bomba
0cad2c1c90 Users OpenAPI 2019-10-07 15:34:57 +11:00
David Bomba
ad1f8dc928 Recurring Quote OpenAPI 2019-10-07 15:32:29 +11:00
David Bomba
eacc1fe66a Recurring Invoice OpenAPI 2019-10-07 15:29:16 +11:00
David Bomba
19caaac912 Payments OpenAPI 2019-10-07 15:19:25 +11:00
David Bomba
d999212a34 GroupSettings OpenAPI 2019-10-07 15:13:50 +11:00
David Bomba
2f7c403992 company_gateway OpenAPI 2019-10-07 15:09:04 +11:00
David Bomba
e784705aaf Clients and Companies OpenAPI 2019-10-07 15:03:01 +11:00
David Bomba
24714dc9f4 Clients OpenAPI 2019-10-07 10:32:36 +11:00
David Bomba
6d81f981f8 Invoices OpenAPI 2019-10-07 09:00:02 +11:00
David Bomba
165182266a OpenAPI 2019-10-06 23:24:15 +11:00
David Bomba
febe32b7d8 OpenAPI 2019-10-06 23:18:22 +11:00
David Bomba
65757f4b71 OpenAPI 2019-10-06 23:09:56 +11:00
David Bomba
b7a90a4cae add custom values to settings object 2019-10-06 22:58:11 +11:00
David Bomba
ac96a01c03 OpenAPI 2019-10-06 22:51:33 +11:00
David Bomba
daa402c778 OpenAPI Docs 2019-10-06 22:27:56 +11:00
David Bomba
897e4855c1 OpenAPI 2019-10-06 22:24:54 +11:00
David Bomba
cf67589f23 Open API 2019-10-06 19:44:00 +11:00
David Bomba
59abbd04f9 Integrating OpenAPI documentation 2019-10-06 17:05:46 +11:00
David Bomba
5e553b36e9 logo uploads 2019-10-05 13:18:52 +10:00
David Bomba
d39d837895 Fixes for tests 2019-10-05 11:58:33 +10:00
David Bomba
70fe64ed96 Fixes for tests 2019-10-05 10:11:04 +10:00
David Bomba
2f657aaac8 Stubs for group settings controller 2019-10-05 08:58:51 +10:00
David Bomba
ae02953a8f Client portal client screen 2019-10-04 07:51:54 +10:00
David Bomba
5adc88d01e Docs 2019-10-03 22:17:48 +10:00
David Bomba
3af84f7de7 Company Gateway endpoint and tests 2019-10-03 21:18:12 +10:00
David Bomba
16cd98980b Company Gateway Tests 2019-10-03 20:59:19 +10:00
David Bomba
3e3cde2e1e pdate 2019-10-03 13:23:00 +10:00
David Bomba
4e51256b51 Company Logo upload test 2019-10-03 10:17:29 +10:00
David Bomba
db40a4ab71 handle logo upload for company 2019-10-03 07:59:27 +10:00
David Bomba
b8aaa8c082 Payment hooks 2019-09-30 07:49:43 +10:00
David Bomba
85de581fac Fix for company filtering 2019-09-29 18:46:53 +10:00
David Bomba
441d52523d Add activities to API 2019-09-27 14:31:13 +10:00
David Bomba
487f93933b Laravel V6 2019-09-26 23:00:51 +10:00
David Bomba
2c05f5a47e Refresh route 2019-09-25 21:49:43 +10:00
David Bomba
0687817ae8 Create payment after payment and mark invitations as paid 2019-09-25 16:23:51 +10:00
David Bomba
5090c963d3 Payment responses and saving card details 2019-09-25 14:03:28 +10:00
David Bomba
46602a21c5 Stripe payments 2019-09-25 12:07:33 +10:00
David Bomba
d34b129474 fix error formatting 2019-09-24 08:37:38 +10:00
David Bomba
bbabe4836b Fix DB search 2019-09-23 22:19:37 +10:00
David Bomba
3ad0a3ff9a Sort response in alphabetical order by key 2019-09-23 21:29:30 +10:00
David Bomba
1e1be26980 Invitation routing 2019-09-23 15:59:01 +10:00
David Bomba
3860e770f6 Add reset link to API 2019-09-23 08:24:25 +10:00
David Bomba
4aa781fb03 Working on settings - safe guards to updating the settings object 2019-09-21 14:09:25 +10:00
David Bomba
04b4f224fa Working on terms and signature authorization 2019-09-21 12:17:27 +10:00
David Bomba
4fd41dbe1d Client payment flow 2019-09-20 15:13:58 +10:00
David Bomba
a926c48f21 Payment methods list view 2019-09-19 20:16:41 +10:00
David Bomba
89cc4170d6 Fixes 2019-09-18 22:43:37 +10:00
David Bomba
d5d1d7d9a3 Refactor for API 2019-09-18 16:02:05 +10:00
David Bomba
a331368383 List view for payment methods 2019-09-18 12:39:53 +10:00
David Bomba
c79211c4f4 Mitigate nulls in database 2019-09-17 15:42:10 +10:00
David Bomba
bacf1f74a0 Fixes for signup route 2019-09-17 07:42:08 +10:00
David Bomba
662aa3aed1 Working on credit card auth response 2019-09-16 21:03:25 +10:00
David Bomba
0331575197 Working on card authorisation for Stripe 2019-09-16 14:59:59 +10:00
David Bomba
6b8cbe4e7c Working on preauth credit card stripe 2019-09-16 12:05:30 +10:00
David Bomba
8944727d6b Working on client payment methods 2019-09-15 21:40:46 +10:00
David Bomba
cbb1ca7660 Working on updating credit card 2019-09-14 22:34:05 +10:00
David Bomba
7cfe0c22fb Add Payment Method - client side 2019-09-13 15:52:01 +10:00
David Bomba
b1836224e2 Working on contact payment page 2019-09-13 08:33:48 +10:00
David Bomba
2f164d6a76 Add account to login response 2019-09-12 22:02:25 +10:00
David Bomba
da0c0080a5 Fixes for login api 2019-09-12 21:46:09 +10:00
David Bomba
9431abb300 Working on payment flow - client side 2019-09-12 16:10:21 +10:00
David Bomba
b7920a072a Set all ID's to strings for consistency 2019-09-12 11:28:41 +10:00
David Bomba
4536bc0566 API fixes 2019-09-11 20:15:44 +10:00
David Bomba
de3c724f48 Bug Fixes 2019-09-11 16:35:31 +10:00
David Bomba
ac19a4bb12 Working on cascading settings 2019-09-11 15:32:47 +10:00
David Bomba
af28b02fae Fixes for tests 2019-09-11 13:46:23 +10:00
David Bomba
e329c24879 Fixes for tests 2019-09-11 12:01:49 +10:00
David Bomba
42e54d0bd5 include statics with login response 2019-09-11 10:37:53 +10:00
David Bomba
a840136575 API cleanup 2019-09-11 09:31:55 +10:00
David Bomba
1c2ba3a53e force status codes to be returned 2019-09-10 19:31:51 +10:00
David Bomba
b853dd80ed Working on payment methods 2019-09-09 16:25:33 +10:00
David Bomba
8a90d46287 Working on payment methods 2019-09-09 12:19:19 +10:00
David Bomba
0856fc2dfd Working on gateway payment flow 2019-09-08 22:13:55 +10:00
David Bomba
f5e19ece06 Payment screen 2019-09-05 15:04:52 +10:00
David Bomba
374cc88c06 Display PDF 2019-09-05 09:52:49 +10:00
David Bomba
668e01b814 Stubbing invoice design templates 2019-08-29 14:07:04 +10:00
David Bomba
b7d9ad1808 Create more date helpers 2019-08-29 08:13:26 +10:00
David Bomba
1c31f6de0f Refactors, and create a number helper 2019-08-28 12:36:53 +10:00
David Bomba
e5b60195d8 Working on Formatting data in client timezone 2019-08-28 11:13:10 +10:00
David Bomba
0af0d9786d Fixes for test 2019-08-28 10:58:13 +10:00
David Bomba
33b42db47c Tests 2019-08-28 09:19:54 +10:00
David Bomba
d50cab40c2 Create client logo's 2019-08-26 19:28:21 +10:00
David Bomba
bad61e8984 Payment Gateways - padding 2019-08-22 08:34:20 +10:00
David Bomba
a40fb82971 Working on Payment list for client portal 2019-08-19 16:50:33 +10:00
David Bomba
c2441bdef0 Client Portal Payments List View 2019-08-16 15:20:28 +10:00
David Bomba
0892993afe Recurring Invoice ListView 2019-08-15 21:10:02 +10:00
David Bomba
03d67bbb52 Recurring Invoices - Client Portal 2019-08-15 15:19:00 +10:00
David Bomba
a6b78fd7a6 Working on recurring invoices listview 2019-08-15 14:31:03 +10:00
David Bomba
ec939e2f61 Working on client payment flow 2019-08-14 20:23:44 +10:00
David Bomba
dc65ede956 Remove links to multidatabaseuserprovider 2019-08-14 15:40:22 +10:00
David Bomba
434d4a46d7 Work on paying bulk invoices 2019-08-14 13:22:47 +10:00
David Bomba
c55d4f1b5b Invoice List View - Client Portal 2019-08-14 12:16:09 +10:00
David Bomba
104ff30468 Finished Client Profile CRUD 2019-08-14 10:15:21 +10:00
David Bomba
60853a8510 Edit client information 2019-08-14 07:41:02 +10:00
David Bomba
b2f7740fa1 Unique email validation for contact 2019-08-14 07:16:31 +10:00
David Bomba
7c35859a6e Finished Contact Details Page 2019-08-13 09:56:46 +10:00
David Bomba
4a08414ca5 Working on User profile 2019-08-12 22:45:13 +10:00
David Bomba
433a2a01d7 clean up 2019-08-08 21:18:02 +10:00
David Bomba
9823df51b3 Working on Client Uploads 2019-08-08 21:07:26 +10:00
David Bomba
37e8f41bff Working on Client Uploads 2019-08-08 18:13:32 +10:00
David Bomba
fac762391a Working on dropzone uploads 2019-08-08 10:22:54 +10:00
David Bomba
3e91a4f700 Working on client side uploads 2019-08-07 16:56:19 +10:00
David Bomba
f37f28a846 Working on upload avatar - generic 2019-08-07 10:44:38 +10:00
David Bomba
68f43671a8 Working on profile avatar upload - with dropzone 2019-08-05 15:29:50 +10:00
David Bomba
b96b03440d Implement Select 2 filtering for client portal invoices 2019-08-05 12:58:12 +10:00
David Bomba
9387072711 Datatables 2019-08-05 05:59:28 +10:00
David Bomba
9b1075539c Working on client portal profile 2019-08-02 10:31:48 +10:00
David Bomba
df5778c3c5 Working on Javascript front end 2019-07-30 08:28:38 +10:00
David Bomba
3829a874aa Add Former dependency 2019-07-29 13:59:28 +10:00
David Bomba
888fecf886 Working on client portal - datatables 2019-07-26 08:19:01 +10:00
David Bomba
a215e9b056 Working on client portal - datatables 2019-07-26 08:05:13 +10:00
David Bomba
fd9c746c8d Working on datatables 2019-07-25 14:51:00 +10:00
David Bomba
7a6f9c993b Stubs for datatables 2019-07-23 13:31:53 +10:00
David Bomba
f237bd958d fix spacing between sidebar icons and link text 2019-07-23 09:25:53 +10:00