* Fix formatting and variable insertion for email templates
* Refactoring for invoice emails
* Fixes for midddleware
* Improve refresh includes
* change setting name
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* Update API docs
* cleaning up migrations
* Fixes for tests
* fixes for tests
* Delete client contacts when soft deleting a client
* Fixes for actions
* 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
* 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
* 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
* 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
* update company settings and OpenAPI definitions
* Fixes for tests
* Add extra variables to company settings
* Track signup platform when new account signup processed