* 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"
* 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
* Subclass Notification class
* Subclass Notification class
* Working on invoice design
* Working on page headers and footers
* Fixes for headers and footers
* Fixes for invoices
* Version bump
* Refactors for refunds / credits
* Working on Company Ledger
* Company Ledger OpenAPI Documentation
* Version Bump
* Fixes for internal composer update
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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>
* 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
* 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
* Fix for setting a currency!
* Additional logic to ensure invites are only created for the client_contact -> client
* Move credit number generation after the save to ensure we do not fail on the credit creation because of a number race condition
* fixes for migration
* 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
* 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
* 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!
* 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
* 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
* 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
* 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
* Include fix as describe by @michael-hampton here #3280
* Refactor createinvitations away from jobs
* Clean up
* Fixes for service() refactoring
* Fixes for services refactor
* 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
* Add PHP 7.4 to Travis Tests
* Fixes for tests
* fixes for tests
* Fixes for tests
* More tests for Refunds
* Remove dusk tests
* Refactor refund variables
* Working on refunds
* Working on refunds
* working on refundS
* working on refunds
* 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
* 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>
* add expenses, vendors and vendor_contacts along with factories and test data
* padding out vendors, expenses
* Minor fixes
* Add Expense and Company TransformerS
* 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
* Set payment number on completed payment
* Fix for paymentables not returning
* Do not set invoice status to paid if only a partial amount of the invoice has been paid
* Do not set email template defaults in settings
* Set invoice reminders, trait + tets
* Fixes for tets
* Only all an account owner to delete companies/users
* 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
* Set default templates in Company Settings
* Working on Company User creation
* Working on company_user relationship
* Fixes for company_user relation
* Clean up
* 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
* 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
* Add amount to paymentable tables to enable reversing payments gracefully
* Create Test Data artisan comannd
* Delete Payments + Fixes for company settings persistence
* 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
* 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
* 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
* 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
* Implement transformer for ClientGatewayTokens
* Add company_gateway_id to client gateway token transformer
* Fixes for client model
* Fixes for Number class
* Insert generic for client country if not set
* Add Includes
* Clean up company settings + tests
* Update Company Settings Schema
* Fixes for tests
* fixes for tests
* fixes for settings
* Enforce settype(string) for _ids
* working on js localizations
* remove dependencies
* Pad Hashes to at least 10 characters in length
* Inject JS translations into front end dynamically
* Implement VueJS for Client Edit Page with reactivity
* Conditionally hide rows if not enabled (custom_value)
* Split client template into smaller components
* implementing ui buttons
* CRUD cycles of a client
* Working on Client CRUD - Integrity constraint issues
* Fixes for datatables
* Implement a BaseModel
* Working on reusable header data model
* Working on adding session variables
* Clean up header data
* Random Data Seeder
* working on searching datatables across relationships.
* Working on transforming primary keys between client and server facinglogic
* Updated assets