* 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>
* 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
* 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
* 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
* 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
* 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
* Fix for typo
* wind back self updater repo
* fixes for client settings
* Add current version to the account transformer
* fixes for deleting a company
* 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
* 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
* 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
* 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
* 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
* Minor fixes for randomdataseeder
* 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
* 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
* Implement first_load query parameter which checks client size and returns an truncated response if client count is greater than 1000
* Fixes for listeners
* 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
* 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
* 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 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
* 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
* Implement transformer for ClientGatewayTokens
* Add company_gateway_id to client gateway token transformer
* Fixes for client model
* Fixes for Number class
* update company settings and OpenAPI definitions
* Fixes for tests
* Add extra variables to company settings
* Track signup platform when new account signup processed
* Add conditional checks in client portal
* Add ability to cancel recurring invoices from client portal
* Fixes for types
* Add fields to invoice and quote table
* Fixes for travis
* Additional settings variables at the company and client level
* Implement accessor for client settings
* Currency symbol or code setter
* Implement custom JS number and currency formatter
* Implement VueX state management for client settings
* Move settings logic into its own class
* Working on client settings
* client settings
* Move Client Settings helper into PHP
* Move translation helper into its own class
* Working on Client Settings
* fixes for client settings
* Client setting defaults
* fixes for .env
* Fixes for Travis
* Clean up Client Show
* Working on Show Client menu action
* working on client view permissions
* Finishing up Client Statement View
* Workig on client settings
* add mix manifest
* css for client settings
* Client Settings
* Working on Client Settings
* Implement StartupCheck and static seeders
* Implement cached statics in view composers
* Working on client settings
* Payment Terms
* Working on Payment Terms View Composer
* Payment Terms builder
* Client Settings
* refactor companies table
* Refactor for company settings, move settings to json
* Set object cast on settings column of Company table
* Fixes for refactor of companies and clients table
* Test
* Client Settings Datamapper
* Client Settings
* Default client language
* Client Settings
* Working on client settings options
* Client Settings
* Settings Json serialization/deserialization handling
* Refactor pivot table accessors
* Add select2 for client - country selector
* Fixes for client contact update
* implement ctrans() function across application
* Increase custom fields to 4 across the application
* Refactor: remove repos calling other repos, implement 4 custom values across application
* include querying the custom values in the client list
* Fix null custom value labels
* Scaffold for client - show view
* Working on Client Show
* Add URL link directly to client view in list view
* Implement Form requests for all client routes
* Refactor how permissions are implemented on Datatable row action menus
* fixes for tests
* bug fix
* Add ctrans global function for custom translations. Reduced DB queries for Client List. Added Debugbar for dev environments
* ctrans
* attempting to bind vue to blade partials
* typo for vue
* working on client contact page
* refactor shipping-billing addresses back to client model
* clean up
* Client Address
* Vue components for address
* Fix for null objects being passed to Vue
* Copy Billing Address
* route key
* Social auth
* Pad out route bindings
* Deploy hashes across models
* social auth buttons
* 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
* client ui
* Paddin out client detail view
* Padding out clients
* Padding out clients
* show maps
* Padding out clients
* fixes for migrations
* client padding
* Working on different Client UX
* more client ux
* New Client UI
* Vue Scaffolding
* 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