1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-21 17:01:33 +02:00
Commit Graph

209 Commits

Author SHA1 Message Date
David Bomba
36abed4c7d
Type Change for Payment Terms (#3753) 2020-05-26 18:28:19 +10:00
David Bomba
280e42d366
Hosted platform rules (#3650)
* 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"
2020-04-21 15:16:45 +10:00
Benjamin Beganović
272109f699
Custom js and css in client portal (#3638) 2020-04-17 20:15:26 +10:00
David Bomba
9349eb0414
Repeating headers and footers for PDF (#3622)
* Subclass Notification class

* Subclass Notification class

* Working on invoice design

* Working on page headers and footers

* Fixes for headers and footers

* Fixes for invoices
2020-04-12 21:51:27 +10:00
David Bomba
581654141b
Fixes for entity dates (#3563) 2020-03-30 08:29:00 +11:00
David Bomba
6df62faa82
Fixes for Invoice Designs (#3559)
* fixes for tests

* Working on Invoice Designs

* Update phpunit.yml

* Update phpunit.yml

* Working on sending an individual email

* Update phpunit.yml

* Fixes for designs

* Update phpunit.yml

* Working on sending entity email - individual

* Fixes for account creation

* Remove Laravel Horizon

* remove logging
2020-03-28 22:34:04 +11:00
David Bomba
9cb7996a2e
Performance improvements for PDF rendering (#3556)
* Performance improvements for PDF generation

* CS Fixer

* Performance improvements for PDF generate

* Fixes for tests
2020-03-28 14:45:11 +11:00
David Bomba
060b5ef432
Fixes for designs (#3554)
* Fixes for designs

* minor fixes

* Fixes for composer.json

* Convert PDF variables to object instead of array

* Fixes for testS"
2020-03-27 18:22:35 +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
0e12b63c95
Design Changes (#3504)
* 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
2020-03-16 21:12:10 +11:00
David Bomba
dc8ecbeeed
Fixes for company_user (#3477)
* 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
2020-03-11 22:05:05 +11:00
David Bomba
efa6350008
Fixes for updating pdf_variables in CompanySettings (#3465)
* Fixes for setting pdf_variables in company settings

* Fixes for company settings saver
2020-03-10 22:32:45 +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
7c00c68bf3
Create route for invoice/credit/quote PDF download (#3441) 2020-03-07 00:41:15 +11:00
David Bomba
f0176b6e37
Fixes for quote transformer (#3434)
* 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>
2020-03-06 22:10:59 +11:00
David Bomba
7acc6ee300
Repeating header and footers on Invoice PDFs (#3424)
* 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
2020-03-05 18:14:57 +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
cf345b1932
Set Default PDF Variables (#3409) 2020-03-02 22:03:40 +11:00
David Bomba
0ff14c97fd
Minors Fixes (#3405)
* Tests for client contact passwords

* test for client API

* Client Tests for password quality

* Final tests for client contact password

* Implement feature permissions

* Minor fixes
2020-03-01 21:18:13 +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
7abab22c43
Fixes for base repo (#3393) 2020-02-28 07:34:25 +11:00
David Bomba
464dd3f9eb
Fixes for base repo ->save() method (#3392)
* Fixes for tests

* payment

* remove field from company table

* Fixes for repo save()
2020-02-28 07:23:25 +11:00
David Bomba
0b2435af2a
Fixes for payment numbers (#3384) 2020-02-26 21:06:08 +11:00
David Bomba
3d31f810c0
Set Invitations as a default include for invoices (#3362)
* Working on importing company gateways

* Fix for companyuser settings object

* Migrate client_gateway_tokens

* Working on Notificaitons

* Working on notifications

* Failsafe for user-company

* unlink files

* Set DB for jobs

* Always have a fallback for company_id

* Fixes for user model

* Formatting for MultiDB

* Working on Company Ledger Tests

* Fixes for contact request

* Set Invitations as a default include for invoices
2020-02-24 21:15:30 +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
David Bomba
f57339f185
Fixes and Refactors for Invoice Emails. (#3339)
* 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
2020-02-17 20:37:44 +11:00
David Bomba
af72d27a49 fixes for update invoice (#3303) 2020-02-10 21:13:46 +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
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
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
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
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
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
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
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
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
32aedf26dd
Attach and Detach a user to a company (#3107)
* 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
2019-11-30 13:42:44 +11:00
David Bomba
52c031e290
Email template defaults (#3090)
* Update User and Company User

* Email Template Defaults for Settings

* Separate methods for saving client and group settings
2019-11-24 17:37: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
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
a78b6aaacd
Set casts on Invoice Line Items (#3049)
* 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
2019-11-08 11:38:22 +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
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
14ea3fe256
Tax Rate fixes (#3031)
* Ensure tax rate queries are scoped appropriately

* Add Tax Rate Policy

* Fixes for settings

* doc blocks

* Add failed jobs tables to migrations

* Only 1 migration file for failed table
2019-10-30 13:41:18 +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
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
e4f0b08d3e
Fixes for settings (#3009)
* Add Includes

* Clean up company settings + tests

* Update Company Settings Schema

* Fixes for tests

* fixes for tests

* fixes for settings
2019-10-23 12:01:25 +11:00
David Bomba
fbc03aa9f7 Update setting fields 2019-10-17 19:26:46 +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
dde3f1192a
Change company_logo_url to company_logo (#2980) 2019-10-11 15:30:26 +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
3123547e55 Implement validation rule for settings 2019-10-10 12:01:38 +11:00
David Bomba
056b2cbdb7 Tests for company settings 2019-10-09 23:21:21 +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
d35a90cb94 change logo_url to company_logo_url 2019-10-07 22:06:23 +11:00
David Bomba
03d0babd26 Remove show_currency_symbol 2019-10-07 17:37:46 +11:00
David Bomba
b7a90a4cae add custom values to settings object 2019-10-06 22:58:11 +11:00
David Bomba
cf67589f23 Open API 2019-10-06 19:44:00 +11:00
David Bomba
5e553b36e9 logo uploads 2019-10-05 13:18:52 +10:00
David Bomba
eca7452de3 Add additional tax rate 3 into the system 2019-10-05 12:28:23 +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
24075072df refactor for pushing company meta data into settings 2019-10-04 22:37:40 +10:00
David Bomba
ba8638d965 Fixes 2019-10-02 18:50:54 +10:00
David Bomba
f59b74b01b Refactors for gateways - using keys instead of Pkeys 2019-09-24 21:22:41 +10:00
David Bomba
176ba8dac5 fixes 2019-09-23 22:42:02 +10:00
David Bomba
6e12c3e2d3 Fixes 2019-09-23 22:38:34 +10:00
David Bomba
3ad0a3ff9a Sort response in alphabetical order by key 2019-09-23 21:29:30 +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
b6a0350952 Logic for modal display 2019-09-21 14:18:08 +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
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
e329c24879 Fixes for tests 2019-09-11 12:01:49 +10:00
David Bomba
1f624e28bc Refactor Group level settings 2019-09-10 12:30:43 +10:00
David Bomba
db7043abd9 Working on Groups 2019-09-09 21:24:22 +10:00
David Bomba
5f7a0b96d7 Tests tests and more tests 2019-09-09 21:05:53 +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
cd40ba95e6 Invoice templates 2019-09-04 11:45:53 +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
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
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
c236925e6d Fix Invoice Create routes 2019-05-16 08:26:21 +10:00
David Bomba
924d5b5f7b Working on tests for Mark as Paid (invoice) 2019-05-14 14:05:05 +10:00
David Bomba
9b86780fa3 Update copyright 2019-05-11 13:32:07 +10:00
David Bomba
b276cc729f Tests for generates numbers 2019-04-30 22:30:47 +10:00
David Bomba
defbae832b Working on Generates Number 2019-04-30 16:02:39 +10:00
David Bomba
19a5c7119b Test for Number generation: 2019-04-29 22:14:11 +10:00
David Bomba
76d625d723 Working on client, quote, invoice number generator 2019-04-29 15:50:08 +10:00
David Bomba
2a032ab253 Refactor default client settings 2019-04-29 08:40:38 +10:00
David Bomba
b649a24745 Stub counter variables 2019-04-26 15:57:45 +10:00
David Bomba
d8f5d10b58 Fixes for tests 2019-04-24 20:01:40 +10:00
David Bomba
86d123ff9a Working on Invitations 2019-04-24 10:22:02 +10:00
David Bomba
4e126b03f0 create lock_sent_invoices settings variable 2019-04-22 09:21:57 +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
35c196305e Configuring invoice settings for consumption 2019-04-08 22:43:20 +10:00
David Bomba
0d508d67f1
Client Settings (#2711)
* 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
2019-03-03 08:44:08 +11:00
David Bomba
eddb9adc73
Client Settings (#2668)
* 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
2019-02-17 21:34:46 +11:00