1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-20 16:31:33 +02:00
Commit Graph

257 Commits

Author SHA1 Message Date
David Bomba
ad0b2b8ec3 Prevent ninja company from being deleted 2021-07-11 10:16:27 +10:00
David Bomba
36f6cbbcc9 Update license in codebase 2021-06-16 16:58:16 +10:00
David Bomba
3c99c65033 FIxes for multidb 2021-05-24 14:24:16 +10:00
David Bomba
3f373d873f Fixes for Stripe Connect 2021-05-18 15:53:00 +10:00
David Bomba
87c000a3e1 Stripe import customer 2021-05-17 22:24:00 +10:00
David Bomba
f9347fc652 fixes for factories 2021-05-16 19:44:44 +10:00
David Bomba
ac046688c3 Fix for recurring design id, not translating to invoice 2021-05-02 13:14:28 +10:00
David Bomba
68ddc6e7b1 Tests for ClientGatewayToken routes 2021-04-20 16:03:14 +10:00
David Bomba
03b19e27f7 Add client gateway tokens 2021-04-20 14:26:16 +10:00
=
6eaff79544 Remove taxes from demo data set 2021-04-18 09:04:40 +10:00
David Bomba
ccaa5c1d31 Improve mock data quality: 2021-04-10 12:47:47 +10:00
David Bomba
40335c0d92 Add rest method and headers to webhooks 2021-04-06 07:41:51 +10:00
David Bomba
abd3a89bc9
Subscriptions (#5248)
* Fixes for converting quote to invoice

* Fixes for naming PDFs

* Refresh entity prior to sending

* Fixes for subscriptions

* Add in required use

* Fixes for notifications

* Fixes for notifications

* Add with trasheD

* Rename BillingSubscriptions to Subscriptions

* Refactoring subscriptions
2021-03-25 21:55:59 +11:00
David Bomba
f80179814d fix conflicts 2021-03-22 07:22:20 +11:00
David Bomba
1b5d6d44f2 Set default time out 2021-03-22 07:21:51 +11:00
David Bomba
34b9877868 Minor fixes 2021-03-19 23:37:57 +11:00
David Bomba
b91fcf1b34
Merge branch 'v5-develop' into billing_subscriptions 2021-03-10 09:27:28 +11:00
David Bomba
d7d0768eae Minor fixes 2021-03-09 21:34:39 +11:00
David Bomba
0a3b5e0665 minor fixes 2021-03-09 17:06:03 +11:00
David Bomba
31d92a3dc0 add russian language 2021-03-09 08:05:20 +11:00
Benjamin Beganović
ea5117ecbe Billing subscriptions: Factory, repository & transformer 2021-03-08 15:18:14 +01:00
David Bomba
24dfbe48dc working on paid_to_date fields and calculations 2021-01-24 17:44:14 +11:00
David Bomba
4b87df07b7 Check that a company gateway always has at least one fee and limits object 2021-01-22 08:36:25 +11:00
David Bomba
5ce2a035da Fixes for approve / convert quotes 2021-01-20 08:30:04 +11:00
David Bomba
3b02dd56e0 Save documents to Company Entity 2021-01-13 21:12:14 +11:00
David Bomba
1432605211 Remove custom values from product table 2021-01-12 18:45:51 +11:00
David Bomba
da7eb3b4c2 Fixes for invoice creation from recurring where balance doubles 2021-01-08 12:44:31 +11:00
David Bomba
b5606c1524 Fixes for task statuses and tests 2021-01-08 09:25:00 +11:00
David Bomba
2e499adea6 Fix for task status null color value 2021-01-08 09:03:29 +11:00
David Bomba
934610a01c Update copyright + version bump + set canadian dollar symbol to $ 2021-01-04 08:54:54 +11:00
Benjamin Beganović
ae88d5e08e php-cs-fixer format 2020-11-25 15:19:52 +01:00
David Bomba
14fd4a5af4 Event Tests 2020-11-03 23:35:05 +11:00
David Bomba
9aeb2d7a5b Psalm cleanup 2020-10-28 21:10:49 +11:00
David Bomba
f0e4a94bee Task Statuses 2020-10-20 10:01:59 +11:00
David Bomba
a3afa8ede9 Remove project name unique constraint 2020-10-19 21:59:58 +11:00
David Bomba
2f948b603b Using Credits for payment 2020-10-15 20:41:59 +11:00
David Bomba
a5555cc434 Working on credit payments" 2020-10-14 10:53:20 +11:00
David Bomba
5b2a43bd9a Fixes for expense categories 2020-10-13 16:02:12 +11:00
David Bomba
28f140ee37 Expense categories 2020-10-13 15:14:13 +11:00
David Bomba
71535c0e41 Add tasks to API 2020-10-13 07:42:02 +11:00
David Bomba
dd4d14d128 Implement Projects API 2020-10-08 09:25:39 +11:00
David Bomba
b8b3149582 Working on recurring & analytics 2020-10-07 14:00:32 +11:00
David Bomba
3aa5e2e4eb Minor release 2020-10-06 21:06:14 +11:00
David Bomba
1264486bb9 Working on recurring migration 2020-10-06 08:46:47 +11:00
David Bomba
ab0ec5e2cb Vendor API endpoints 2020-09-23 10:16:19 +10:00
David Bomba
24104509b3 Fixes for recurring invoice schema - auto_bill_enabled 2020-09-17 09:26:23 +10:00
David Bomba
71c3865bb5 Fix bug with recurring invoice factory not setting a client 2020-09-16 09:29:23 +10:00
David Bomba
9c7dc24bd2 Recurring Dates 2020-09-13 20:20:11 +10: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
David Bomba
d53418f041 Fixes for tests 2020-08-15 20:44:05 +10:00
David Bomba
46bb38a20c Adjust client factories to allow contacts to be created by default 2020-07-28 18:28:29 +10:00
David Bomba
d5a666f496 Enabled modules values 2020-07-24 08:00:28 +10:00
David Bomba
3aca9e701b Adjustments for account transformer 2020-07-21 07:51:09 +10:00
David Bomba
439424b933 Fix for activity repo 2020-07-17 19:47:17 +10:00
David Bomba
c0237474ef Fixes for demo data 2020-07-17 07:50:02 +10:00
David Bomba
41b85b3fb3 Ensure models are touched appropriately" 2020-07-16 21:01:39 +10:00
David Bomba
4c321d41c3 Change subscriptions to webhooks 2020-07-06 21:22:36 +10:00
David Bomba
c72d38ca4f
Allow conversion of quotes to invoices (#3760) 2020-05-27 14:46:19 +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
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
281f1f7596
Fixes for null values in custom values (#3703) 2020-05-14 21:53:09 +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
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
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
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
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
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
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
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
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
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
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
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
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
michael-hampton
dee99b1a62
Ft quote services (#3310)
* Quote service

* convert quote

* Update Quote.php

* Update Quote.php

* Update MarkApproved.php
2020-02-12 07:57:25 +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
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
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
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
b92a6a78c3
Fixes for factories (#3192) 2020-01-03 20:34:10 +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
e9b9cef2f1
Add quotes to randomdata generator (#3171) 2019-12-26 17:09:14 +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
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
9d8e4fdb06
Change companies table property domain to subdomain (#3141) 2019-12-11 07:53:41 +11:00
Benjamin Beganović
259a28099f Various fixes (#3136) 2019-12-07 22:33:49 +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
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
384a3b4603
Fixes for transforming and saving company settings. (#3058)
* Cleanup for settings remove from entities

* Fixes for saving and transforming company settings
2019-11-13 08:26:40 +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
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
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
6fb9ba89ee Woring on invoice is_amount_discounts 2019-10-17 14:14:17 +11:00
David Bomba
c7a82d25b8 inclusive tax implementation 2019-10-17 09:51:05 +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
8d14c6b2bd Switch currency_id back to settings object 2019-10-10 21:43:50 +11:00
David Bomba
60e58abab5 Company Logo upload to groups 2019-10-08 08:07:43 +10:00
David Bomba
95be70a7b5 Group Settings 2019-10-06 08:24:46 +11:00
David Bomba
2f657aaac8 Stubs for group settings controller 2019-10-05 08:58:51 +10:00
David Bomba
24075072df refactor for pushing company meta data into settings 2019-10-04 22:37:40 +10:00
David Bomba
1f1ffd3240 transform datetimes to timestamps 2019-10-04 21:54:03 +10:00
David Bomba
3b6fa39d43 Fixes for transformers 2019-10-03 15:42:58 +10:00
David Bomba
fd58aeb856 Company Gateway API 2019-10-03 13:21:24 +10:00
David Bomba
487f93933b Laravel V6 2019-09-26 23:00:51 +10:00
David Bomba
7382ff0b84 fixes for datetime formats 2019-09-22 20:25:05 +10:00
David Bomba
86a099587d Refactor for settings to force types 2019-09-19 15:50:05 +10:00
David Bomba
e329c24879 Fixes for tests 2019-09-11 12:01:49 +10:00
David Bomba
8a90d46287 Working on payment methods 2019-09-09 12:19:19 +10:00
David Bomba
43dc9158f6 Cleaning up Tests 2019-09-04 22:01:19 +10:00
David Bomba
bc7e09b924 Working on tests for line item taxes 2019-09-04 15:10:10 +10:00
David Bomba
ea07174df6 Invoice Item Array factory 2019-09-04 08:16:53 +10:00
David Bomba
f9a5bd3444 Custom values for invoice templates 2019-09-03 16:01:40 +10:00
David Bomba
3e91a4f700 Working on client side uploads 2019-08-07 16:56:19 +10:00
David Bomba
feff6a1c76 Refactoring how we set the DB in the request cycle 2019-07-12 15:03:30 +10:00
David Bomba
a793100f79 Working on Company CRUD 2019-06-17 10:15:42 +10:00
David Bomba
ec5e35cd96 Fixes for travis 2019-06-12 14:23:38 +10:00
David Bomba
51c5b96b68 Working on User Crud 2019-06-06 14:51:28 +10:00
David Bomba
4e4d134230 Fixes for tests - new implementation for invitations 2019-06-02 16:36:31 +10:00
David Bomba
f20183025b Model updates 2019-05-30 08:22:25 +10:00
David Bomba
32ca69bc52 Working on invitationsg 2019-05-29 21:15:42 +10:00
David Bomba
866111cbbb Working on Invoice Invitations 2019-05-29 14:33:53 +10:00
David Bomba
058e12fbf6 Refactor - Breaking changes to GeneratesNumberCounter that require attention 2019-05-24 19:23:38 +10:00
David Bomba
e4b0aba5a0 Working on tests for recurring invoice cron 2019-05-24 15:13:17 +10:00
David Bomba
2549da4e6f Working on Sending Recurring invoices 2019-05-23 15:08:31 +10:00
David Bomba
c236925e6d Fix Invoice Create routes 2019-05-16 08:26:21 +10:00
David Bomba
139008ed14 Working on Company ledger 2019-05-15 14:47:07 +10:00
David Bomba
924d5b5f7b Working on tests for Mark as Paid (invoice) 2019-05-14 14:05:05 +10:00
David Bomba
ad76169b6c Working on invoice payments 2019-05-13 16:18:46 +10:00
David Bomba
9b86780fa3 Update copyright 2019-05-11 13:32:07 +10:00
David Bomba
10e0c8a05f Recurring Quotes 2019-05-05 10:49:01 +10:00
David Bomba
ac05fc6ff6 Working on Payments 2019-05-03 17:57:55 +10:00
David Bomba
9f9f3439b4 Fixes for recurring invoices test 2019-05-03 17:35:49 +10:00
David Bomba
c35f9fbe04 recurring invoices 2019-05-03 08:29:04 +10:00
David Bomba
6d14821528 Working on Quotes 2019-05-02 21:07:38 +10:00
David Bomba
acdc8fad94 Finalize tests for Factories 2019-04-26 21:18:23 +10:00
David Bomba
49427b1acb Tests for factories 2019-04-26 20:51:02 +10:00
David Bomba
d8f5d10b58 Fixes for tests 2019-04-24 20:01:40 +10:00
David Bomba
e37c6912b1 Refactor for invoice calculations, implementing testing for Invoice Invitation creation 2019-04-24 15:18:48 +10:00
David Bomba
13e859bcea Invoice to Quote factory 2019-04-23 22:22:13 +10:00
David Bomba
706625e83f Working on invoice actions 2019-04-23 14:16:41 +10:00
David Bomba
d8280b7f73 Fixes for tests 2019-04-18 08:00:04 +10:00
David Bomba
2b24753813 Working on Invoice Tests, refactoring Settings integration 2019-04-17 16:20:32 +10:00
David Bomba
cb7eea0e7b Refactor invoice calculations class, use FormRequests on destroy() 2019-04-16 13:28:05 +10:00
David Bomba
c5e0d2a8d9 Scaffolding Invoice 2019-04-15 10:10:54 +10:00