Commit Graph

540 Commits

Author SHA1 Message Date
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
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 d77c662ee9 Fixes for invoice invitations
* Fixes for invoice invitations

* Fixes for invoice invitations
2020-02-10 21:20:49 +11:00
David Bomba 069d2b99c6 Fixes for invoice invitations (#3304) 2020-02-10 21:17:13 +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 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 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
David Bomba 63f514f3bc
Working on payments (#3269)
* 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
2020-01-30 15:50:45 +11:00
David Bomba 956d4ba12e
Fixes for tests (#3262)
* Working on Refunds

* Refund tests

* fixes for tests
2020-01-29 15:25:08 +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
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
David Bomba 8c7f4ab09f
Projects and Tasks factories. (#3234)
* Working on projects and tasks

* Fixes for company transformer

* projects and tasks factories
2020-01-21 20:22:10 +11:00
David Bomba a1ae991684
Working on projects and tasks (#3232) 2020-01-21 11:32:34 +11:00
David Bomba db558acf70
V2 (#3230)
* Improve test data quality

* Add Projects and Tasks to schema

* Improve invoice data quality
2020-01-20 21:40:22 +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 6167907a8e
Fix invoice payable rules (#3212) 2020-01-15 19:43:40 +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 a573558bdd
Fix for missing relationship (#3199) 2020-01-07 20:35:55 +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 ad06de25f5
Fixes for Payments (#3194)
* 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
2020-01-04 13:27:51 +11:00
David Bomba 08d8d11dea
Fixes for missing contact_key in seeder (#3190)
*  Stub refund payment

* Fixes for missing contact_key in seeder
2020-01-03 19:49:59 +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 d797799196
Fixes for V2 (#3172)
* Optimizations for large queries

* Fixes for client activities

* Implement UpdateOrCreate for products
2019-12-27 09:33:07 +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 4c2cbb2dee
Bug fixes for middleware/ (#3167)
* Fix formatting and variable insertion for email templates

* Refactoring for invoice emails

* Fixes for midddleware
2019-12-25 08:55:29 +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 e125052f96
Implement invoice reminder scheduler (#3160)
* 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
2019-12-18 13:45:18 +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 b6cb0172c3
Add custom values to user and companygateway transformer (#3157) 2019-12-17 21:57:15 +11:00
David Bomba f6f5b89af9
Return company user settings as object (#3156)
* Conditional in test

* Add additional fields to payments

* Additional fields for payments table

* Return company user as object
2019-12-17 21:50:45 +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 550cb42722
Dynamically apply locale (#3140)
* 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
2019-12-11 07:25:54 +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
Benjamin Beganović 259a28099f Various fixes (#3136) 2019-12-07 22:33:49 +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 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 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 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 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 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 cb939ed986
Implement Company Settings Sieve (#3057)
* remove redundant custom gateways

* Implement view_all,edit_all_create_all permissions

* Fixes for company settings sieve
2019-11-12 22:36:24 +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 49ecde8a38
Fixes for group settings id put/post hashing (#3052) 2019-11-11 08:12:21 +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
David Bomba 97a4fb3696
Fixes for Templates - Add Assigned User functionality (#3044)
* Request Cancellation

* Add fields to settings

* Recurring invoice cancellation request

* change REST endpoint for entity_id templates
2019-11-05 21:16:38 +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
Benjamin Beganović 11690ae50e (v2): Automatic resolving on route binding (#3035)
* Resolve route binding

* add withTrashed() property

* Remove route binds from the Provider
2019-11-05 10:22:36 +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 74f416cd2d
Add users relation to company model (#3032)
* fixes for invoice footer"

* Add users relation to company model
2019-10-30 18:48:44 +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 3fe3c04091
Fixes for Number class. (#3020)
* Implement transformer for ClientGatewayTokens

* Add company_gateway_id to client gateway token transformer

* Fixes for client model

* Fixes for Number class
2019-10-25 20:49:38 +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 adfced11d6
Add design_id to invoice and quote table (#3013)
* 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
2019-10-24 07:37:20 +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 d29f37ef8b
Improve invoice calculations (#3007)
* Fixes for test

* Invoice Items Inclusive Tax Calculator

* Inclusive taxes

* Invoice Inclusive Tax Tests

* More tests

* clean up

* fixes for inclusive tests
2019-10-22 13:07:00 +11:00
David Bomba fbc03aa9f7 Update setting fields 2019-10-17 19:26:46 +11:00
David Bomba 6fb9ba89ee Woring on invoice is_amount_discounts 2019-10-17 14:14:17 +11:00
David Bomba 7eb0f8d44b
Invoice calculations (#2994)
* Add traits for invoice calculations

* V2 of invoice calculator

* Tests for invoice item calculator

* Test for Invoice Item Calculations

* Invoice Calculation Tests

* fix for tests

* Fixes for invoice calculations
2019-10-16 20:28:52 +11:00
David Bomba b90122443f
Fixes for incorrect payment gateway meta data. (#2992)
* Fixes for staging

* Fixes for gateway fields

* fix for null design
2019-10-16 08:35:32 +11:00
David Bomba c43eb96333
Fixes for staging (#2990) 2019-10-15 21:36:51 +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 9cc31195f7 fixes for storing invoice 2019-10-11 09:11:36 +11:00
David Bomba 8d14c6b2bd Switch currency_id back to settings object 2019-10-10 21:43:50 +11:00
David Bomba 84edb28652 Move custom labels into single column on DB custom_fields 2019-10-10 13:52:57 +11:00
David Bomba fb150cc1b0 Documentation for SettingsSaver trait 2019-10-10 13:24:19 +11:00
David Bomba e56aac5e73 Implement type checking for settings objects 2019-10-10 08:36:50 +11:00
David Bomba 056b2cbdb7 Tests for company settings 2019-10-09 23:21:21 +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 faa5a05ac1 Validation rules for update client 2019-10-08 22:14:23 +11:00
David Bomba accbbcf67b Flash message 2019-10-08 12:03:40 +10:00
David Bomba 091673a7ac Payment edge cases 2019-10-08 09:05:41 +10:00
David Bomba db3ccaf4bc validation fixes 2019-10-08 06:49:16 +10:00
David Bomba b8515e26b0 Upload company logo to client settings 2019-10-07 22:05:06 +11:00
David Bomba fda6ec33fd Company Settings OpenAPI 2019-10-07 21:21:02 +11:00
David Bomba 95be70a7b5 Group Settings 2019-10-06 08:24:46 +11:00
David Bomba eca7452de3 Add additional tax rate 3 into the system 2019-10-05 12:28:23 +10:00
David Bomba d39d837895 Fixes for tests 2019-10-05 11:58:33 +10:00
David Bomba 305eea7fc8 Tests for client presenter using new settings object for company meta data 2019-10-05 11:48:00 +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 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 187fb67275 remove work_ prefix 2019-10-04 21:01:52 +10:00
David Bomba 3900529e83 Format dates for client 2019-10-04 08:06:38 +10:00
David Bomba ae02953a8f Client portal client screen 2019-10-04 07:51:54 +10:00
David Bomba 724cccacfc Fixes for tests 2019-10-03 21:50:50 +10:00
David Bomba 16cd98980b Company Gateway Tests 2019-10-03 20:59:19 +10:00
David Bomba 9afcc28549 Fixes for company logo output 2019-10-03 15:17:57 +10:00
David Bomba b41966d41e working on company gateway API endpoint 2019-10-03 11:13:25 +10:00
David Bomba 0c5202ea8c API Tests for clients 2019-10-02 20:22:10 +10:00
David Bomba a6579e43df Transformer fixes 2019-10-02 19:04:27 +10:00
David Bomba b243ce4643 Log system events 2019-10-02 13:00:51 +10:00
David Bomba a57de08178 Working on partial invoice payments 2019-10-02 08:44:13 +10:00
David Bomba 78ae24df46 Balances with company ledger 2019-10-01 19:59:32 +10:00
David Bomba 2d5d9b816b Payment Events 2019-10-01 11:56:48 +10:00
David Bomba 441d52523d Add activities to API 2019-09-27 14:31:13 +10:00
David Bomba 1778e63421 cast created_at/updated_at/deleted_at to timestamps 2019-09-26 08:27:26 +10:00
David Bomba 362f197fbb Store payment after invoice is confirmed paid 2019-09-25 15:55:52 +10:00
David Bomba 46602a21c5 Stripe payments 2019-09-25 12:07:33 +10:00
David Bomba f59b74b01b Refactors for gateways - using keys instead of Pkeys 2019-09-24 21:22:41 +10:00
David Bomba 1e1be26980 Invitation routing 2019-09-23 15:59:01 +10:00
David Bomba d5ec342764 Nuances of client contact invitations 2019-09-23 13:22:24 +10:00
David Bomba a9f4a5feaf add group settings to company transformer: 2019-09-22 20:41:43 +10:00
David Bomba 7382ff0b84 fixes for datetime formats 2019-09-22 20:25:05 +10:00
David Bomba 50d52c5323 Add DateFormats to model 2019-09-22 19:30:03 +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 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 cc7ee120d5 Fixes for test
s
2019-09-19 16:22:32 +10:00
David Bomba 86a099587d Refactor for settings to force types 2019-09-19 15:50:05 +10:00
David Bomba 89cc4170d6 Fixes 2019-09-18 22:43:37 +10:00
David Bomba a331368383 List view for payment methods 2019-09-18 12:39:53 +10:00
David Bomba 70d146333b Casts 2019-09-17 20:27:48 +10:00
David Bomba c79211c4f4 Mitigate nulls in database 2019-09-17 15:42:10 +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 9431abb300 Working on payment flow - client side 2019-09-12 16:10:21 +10:00
David Bomba 6368ab10f7 Doc Blocks for settings 2019-09-12 13:23:44 +10:00
David Bomba b7920a072a Set all ID's to strings for consistency 2019-09-12 11:28:41 +10:00
David Bomba 6544ca2977 Dusk UI tests 2019-09-11 21:04:03 +10:00
David Bomba 0d4d1041f5 Refactor of client settings and cascading settings Client > Group > Company finished 2019-09-11 16:00:23 +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 6561602fef fixes for tests 2019-09-10 20:25:29 +10:00
David Bomba f98f2902dc Refactor company gateways 2019-09-10 19:35:18 +10:00
David Bomba 1f624e28bc Refactor Group level settings 2019-09-10 12:30:43 +10:00
David Bomba 5f7a0b96d7 Tests tests and more tests 2019-09-09 21:05:53 +10:00
David Bomba b853dd80ed Working on payment methods 2019-09-09 16:25:33 +10:00
David Bomba 2ffca37e74 Working on gateways and gateway fees 2019-09-09 14:54:39 +10:00
David Bomba c7512f1572 Working on gateway fees 2019-09-09 13:27:16 +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 0b0f0759f1 Working on Gateways 2019-09-08 20:39:13 +10:00
David Bomba f8734db1b6 Working on Stripe payment driver 2019-09-05 22:42:26 +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 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 cd40ba95e6 Invoice templates 2019-09-04 11:45:53 +10:00
David Bomba e60bcf2d23 Dynamic invoice tables for PDF generation 2019-09-04 09:16:23 +10:00
David Bomba 47cdeef258 Working on building dynamic tables for invoices 2019-09-03 09:00:52 +10:00
David Bomba d99443806a working on invoice labels and template values 2019-09-02 15:08:26 +10:00
David Bomba 019cc09dbb Working on replacing variables for templates 2019-08-30 16:16:39 +10:00
David Bomba 10272a1eeb Working on PDF generation with mocked Invoice Data. - Finishing saving to file location 2019-08-29 22:47:45 +10:00
David Bomba 2c65a6305c Render PDF in HTML 2019-08-29 14:58:04 +10:00
David Bomba 2704c179c7 Presenter variables for invoice 2019-08-29 14:13:16 +10:00
David Bomba 13f21710ce Presenter variables for invoice 2019-08-29 14:12:09 +10:00
David Bomba 668e01b814 Stubbing invoice design templates 2019-08-29 14:07:04 +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 d02e62e46f Padding out Company Gateways - Default gateways per company and per client 2019-08-22 11:58:42 +10:00
David Bomba cc1997b390 Gateway Types 2019-08-22 10:25:30 +10:00
David Bomba bad61e8984 Payment Gateways - padding 2019-08-22 08:34:20 +10:00
David Bomba b9605925e3 Show company and client details in portal 2019-08-22 07:46:11 +10:00
David Bomba e9e12f59af Padding out client dashboard 2019-08-21 14:29:07 +10:00
David Bomba f3d3385678 Fix badgers 2019-08-20 08:29:19 +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 dc65ede956 Remove links to multidatabaseuserprovider 2019-08-14 15:40:22 +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 7c35859a6e Finished Contact Details Page 2019-08-13 09:56:46 +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 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 1823a23b2d view composers for client portal 2019-07-22 13:54:34 +10:00
David Bomba f63803fe7b Finished - Client auth + password reset + mailables 2019-07-18 09:45:18 +10:00
David Bomba 9effc2ebca Align Signup and Login responses for consistency 2019-07-14 19:34:49 +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 9f624b3c61 Mock Client InvoiceList 2019-07-10 11:42:34 +10:00
David Bomba 45d00be174 Create specific transformer for client login response 2019-07-09 20:32:26 +10:00
David Bomba 60e0e84980 Fixes for tests - base PHP version now 7.3 2019-07-09 10:01:29 +10:00
David Bomba 51b0c17c4c Working on client login routes 2019-07-08 10:08:57 +10:00
David Bomba 548c9b31d0 fixes for tests 2019-07-03 19:58:34 +10:00
David Bomba f01c038c6e Move from guarded models to fillable properties.. overcomes handling additional response parameters 2019-06-26 14:04:10 +10:00
David Bomba 879d87ea60 Add ability to upload company logo 2019-06-26 13:25:14 +10:00
David Bomba de4e3f5655 Refactoring the order of data displayed when creating accounts and companies 2019-06-25 13:55:02 +10:00
David Bomba 518d5f12e7 working on testing signup routes again 2019-06-24 21:05:47 +10:00
David Bomba a793100f79 Working on Company CRUD 2019-06-17 10:15:42 +10:00
David Bomba 544e59bbba Transform id keys from Bulk routes 2019-06-12 14:22:05 +10:00
David Bomba 79907e6206 Refactor the way we harvest the company entity 2019-06-12 09:15:17 +10:00
David Bomba f4ae84e954 Re work the way we harvest a user token 2019-06-11 13:20:23 +10:00
David Bomba e458ec6331 Update user table on access 2019-06-04 07:46:46 +10:00
David Bomba d057903229 Logging 2019-06-03 15:31:20 +10:00
David Bomba ea9430f691 Transformers for invitesd 2019-06-02 19:57:12 +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 494504a2d0 Working on tests for new GeneratesCounterTest 2019-05-27 20:48:52 +10:00
David Bomba 0a12e2d49a Complete rewrite of Generates Numbers 2019-05-27 15:26:34 +10:00
David Bomba 058e12fbf6 Refactor - Breaking changes to GeneratesNumberCounter that require attention 2019-05-24 19:23:38 +10:00
David Bomba 474d99505e working on sending recurring invoices 2019-05-23 16:15:06 +10:00
David Bomba 2549da4e6f Working on Sending Recurring invoices 2019-05-23 15:08:31 +10:00
David Bomba ef25cfa320 OAuth login and signup. Improve handling of login via API 2019-05-22 10:56:47 +10:00
David Bomba c236925e6d Fix Invoice Create routes 2019-05-16 08:26:21 +10:00
David Bomba 92b46d5ed8 tests 2019-05-15 19:20:52 +10:00
David Bomba 5467fc64b1 Invoice activity listeners 2019-05-15 15:03:18 +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 3fde744d77 Working on client saves 2019-05-10 16:08:33 +10:00
David Bomba ca71819086 Change custom dateFormat until laravel has better support for microtime date timestmaps 2019-05-07 20:48:43 +10:00
David Bomba 44a57b2679 Clean up models 2019-05-07 15:33:20 +10:00
David Bomba e8d92f627d Make all timestamps microtime stamps 2019-05-07 15:08:10 +10:00
David Bomba 6333a2e8c5 Company Ledger 2019-05-07 15:06:42 +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