1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-16 08:02:40 +01:00
Commit Graph

292 Commits

Author SHA1 Message Date
David Bomba
16b731d010 Bump laravel to version 8 2020-10-01 15:33:38 +10:00
David Bomba
4b00d3a82a Improve eager loading 2020-09-19 20:05:29 +10:00
Benjamin Beganović
207c9388b5 Fix migration issues 2020-09-10 13:01:10 +02:00
David Bomba
f8f8da830e Working on recurring invoices + reminders 2020-09-08 21:01:55 +10:00
David Bomba
f5eecf0eb6 Working on recurring 2020-09-08 20:34:14 +10:00
David Bomba
ba75a44eb8
Laravel 7.x Shift (#40)
* 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>
2020-09-06 19:38:10 +10:00
David Bomba
36c54d8cc3 Working on fees 2020-08-28 11:06:46 +10:00
David Bomba
044c35266e Fixes for zapier 2020-08-24 21:53:22 +10:00
David Bomba
e6de7c9661 Logging for webhook handler 2020-08-24 21:16:35 +10:00
Benjamin Beganović
0a493c275e Enable is_public for document uploads 2020-08-18 16:12:46 +02:00
David Bomba
5daeab3895 allow total columns to be customized in PDF 2020-08-14 13:59:14 +10:00
David Bomba
e347c5ad51 Document permissions 2020-08-12 13:13:39 +10:00
David Bomba
c245125be4 Force remove stale contacts 2020-08-05 10:12:47 +10:00
David Bomba
e00500efd8 Minor enhancement for import process 2020-07-19 17:17:19 +10:00
David Bomba
439424b933 Fix for activity repo 2020-07-17 19:47:17 +10:00
David Bomba
b4f669ad59 Update refresh route to filter all subqueries by updated_at 2020-07-10 09:28:09 +10:00
David Bomba
f3572a5d11 Refactor for events 2020-07-08 22:02:16 +10:00
David Bomba
d236dd6ff6 Fixes for observers 2020-07-06 21:42:42 +10:00
David Bomba
4c321d41c3 Change subscriptions to webhooks 2020-07-06 21:22:36 +10:00
David Bomba
95a2eab410 checking latest version logging 2020-07-06 08:28:19 +10:00
David Bomba
8856e3fada Fixes for pdf preview 2020-07-05 20:58:30 +10:00
David Bomba
302c98e08b Fixes for demo data 2020-07-01 21:33:42 +10:00
David Bomba
fd7f627ffe Fixes for migrations - client balances! 2020-07-01 16:03:46 +10:00
David Bomba
5855f3ea1f Refactor for migrations 2020-07-01 15:51:19 +10:00
David Bomba
e216def2ff Use separate repo's for migrations 2020-07-01 14:37:05 +10:00
David Bomba
fb787c2c53 Fix for null client balance on import 2020-06-30 10:09:18 +10:00
David Bomba
245980ce4b Send company with all events 2020-06-30 09:35:17 +10:00
David Bomba
7af826fa7f Minor fixes for documents 2020-06-22 21:32:10 +10:00
David Bomba
2fadadf5d4 Change document->path to ->url 2020-06-22 15:52:20 +10:00
David Bomba
70c5913f1d fixes for currency type 2020-06-15 16:06:32 +10:00
David Bomba
c99c339fab Implement new refund methods 2020-06-01 13:16:06 +10:00
David Bomba
c72d38ca4f
Allow conversion of quotes to invoices (#3760) 2020-05-27 14:46:19 +10:00
David Bomba
8512db6b1e
Add payment terms per company (#3759)
* remove first name last name required

* Working on check update script

* Add payment terms per company

* set enabled modules on company creation

* Add payment terms to migration
2020-05-27 09:49:06 +10:00
David Bomba
6d0d6c10cd
Working on OAuth (#3686)
* Update Exchange rate Data once a day

* Tests for currency conversions

* Fixes for tests

* Fix for adding blank product keys

* Class for logging emails sent

* fixes for oauth
2020-05-12 19:56:30 +10:00
David Bomba
b3eb2ae3b4
Fix companygatewaytransformer (#3677)
* 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
2020-05-06 21:49:42 +10:00
David Bomba
42ccfe0700
Checkout stubs (#3672)
* 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
2020-05-04 21:13:46 +10:00
David Bomba
d7b22ba1db
Add analytics engine (#3664) 2020-04-30 22:33:57 +10:00
David Bomba
c503d58505
Adjust email quotas - Hosted plan. (#3663)
* Fixes for invitations not being created in RandomDataSeeder

* Resend failed/quota exceeded emails

* Queue email tests

* Refund a client for a ninja account

* Adjust email quotas - hosted plan
2020-04-30 21:45:47 +10:00
Benjamin Beganović
a70f42b31e
Migration improvements (#3662)
* scaffold the cases for migration

* Improve migration errors
2020-04-30 08:01:44 +10:00
David Bomba
e5a230e0c7
Performance improvements (#3634)
* Adjustments for tests

* Implement handling of temp downloading resources

* Refactor paths

* Refactors for file paths

* Refactor paths

* Add in S3 adapter

* Refactor company Documment URL

* Refactor for entity pdf performance

* Refactors for invoice generation

* Enhancements for emails invoices

* Emails

* Fixes for client portal queries
2020-04-16 18:41:25 +10:00
David Bomba
74a6c4f2ee
Reminders (#3630)
* 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
2020-04-15 10:30:52 +10:00
Benjamin Beganović
a785329965
Fix company_token issue & pass unset_user to repository (#3629) 2020-04-15 08:37:27 +10:00
David Bomba
563d41c83a
Email Settings (#3615)
* Working on advanced email settings

* working on document storage

* Email Documents if they exist

* UBL invoices

* UBL Invoices

* Fixes for tests
2020-04-10 15:07:36 +10:00
Benjamin Beganović
6a0ddd6c38
Migrate company_user with users (#3598) 2020-04-08 06:43:44 +10:00
David Bomba
6d7b7ca9a3
Invoice Deletion - Ledger (#3590)
* Fixes when implementing

* php_cs

* Clean up

* Clean up

* Working on adjusting ledger when an invoice is deleted
2020-04-04 21:32:42 +11:00
David Bomba
1fd7ecbbe6
Fixes for migration (#3577) 2020-04-02 08:26:39 +11:00
David Bomba
2bf05ba96d
Fixes for Migration (#3576)
* Fixes for permissions

* Fix casting of line items for migration
2020-04-02 08:18:17 +11:00
Benjamin Beganović
f9567e8227
Send e-mail when migration has completed (#3573)
- New completed.blade.php
- Apply php-cs-fixer on Import.php
2020-04-01 23:39:59 +11:00
David Bomba
eba0c19824
Fixes for Migration (#3572)
* Remove \Log::, fixes for tests, and fixes for migration

* Debugging migration

* Fixes for Migration
2020-04-01 19:54:22 +11:00
David Bomba
91cf1cc1f2
Debugging migrations (#3570)
* Remove \Log::, fixes for tests, and fixes for migration

* Debugging migration
2020-03-31 22:52:21 +11:00
David Bomba
6a7079b0be
Implement Github actions (#3547)
* Update phpunit.yml

* Update phpunit.yml

* Update .env.ci

* Update phpunit.yml

* Update .env.ci

* Update phpunit.yml

* Update phpunit.yml

* Update phpunit.yml

* Update phpunit.yml

* Update .env.ci

* Update phpunit.yml

* Update phpunit.yml

* Update phpunit.yml

* Update phpunit.yml

* Force /setup if system requirements are not met

* Update .env.ci

* Update phpunit.yml

* Minor changes for github actions"

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* Fixes for github actions

* cs-fixer

* cs-fixer

* Fixes for github actions

* db ports github actions

* Refactor the template engine
2020-03-26 14:23:57 +11:00
David Bomba
90cb69f8a5
Performance improvements - PDF generation (#3521)
* Improve performance of PDF building

* Clean up

* Fixes for tests

* Minor fixes
2020-03-25 00:25:20 +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
4c23d43138
Working on Setup workflow (#3509)
* 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
2020-03-18 20:40:15 +11:00
Benjamin Beganović
64eed274e1
Fix broken 'force' migration: (#3489)
* Fix breaking 'force' migration:
- Uploaded migration file now has to be passed with abs path

* Cleanup
2020-03-13 07:38:22 +11:00
David Bomba
93056ea815
Fixes for preview controller (#3486)
* fixes for user model

* Remove stale css

* Working on previewing designs

* Fixes for design previews

* fixes for preview controller

* Fixes for setting company on login

* fixes for preview
2020-03-12 22:04:53 +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
Benjamin Beganović
1017a22bca
Import migration from the folder (#3471) 2020-03-11 08:10:27 +11:00
Benjamin Beganović
fbf9f39cc6
Remove 'documents' when company is deleted (#3462)
* Remove 'documents' when company is deleted

* Fix Codacy warnings
2020-03-10 07:05:23 +11:00
David Bomba
37f295d49e
Improve notification performance (#3452)
* Improve notification performance

* Cascade deletes

* Fixes for company deletes

* Fixes for formatting

* todos for company

* Set currency id on payment

* Minor fixes for payment controller
2020-03-08 16:59:06 +11:00
David Bomba
a8c15ef1c9
Version checking (#3451)
* Ensure NINJA_ENVIRONMENT variable is present  in .env file

* Implement version checking in app

* Remove password protection from check version route
2020-03-08 09:15:11 +11:00
David Bomba
d13ab48d86
Refactor Designs (#3449)
* Refactor custom invoice HTML generation

* remove table_styles() method from designs

* Refactor designs

* Clean up designs
2020-03-07 17:31:26 +11:00
David Bomba
280271718b
Migration improvements: (#3428)
- Refactored exceptions
- Changed failed.blade.php
- Removed report() method from exceptions
- Added new force flag for MigrationController.php
2020-03-06 07:30:32 +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
d14b21f471
Fixes for migration (#3418)
* 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
2020-03-04 15:06:27 +11:00
Benjamin Beganović
40af77d324
(V2) Improve validation & error handling (#3414)
* wip - migration transfer

* (WIP) Response refactor:
- Catching exceptions at top level
- Tests refactor

* wip

* Wrappign migration validator:
- Migration dropped to queue
- New validator messages
- New exception messages

* Fixes for tests
2020-03-04 09:44:42 +11:00
David Bomba
f20b0f7720
Fixes for company tokens. (#3375)
* 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
2020-02-26 14:26:07 +11:00
Benjamin Beganović
786b54e57b
Fixes for ImportTest & StartMigration refactor (#3373) 2020-02-26 09:36:11 +11:00
Benjamin Beganović
8121a0166d
Importing migration data via HTTP (#3365)
* Accept migration over HTTP

* Comment wip tests
2020-02-25 08:15:07 +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
Benjamin Beganović
c97d664d31
Fixes for ImportTest (#3361)
* Fixes for tests (wip)

* Fix for tests

* Remove logging
2020-02-22 17:36:53 +11:00
David Bomba
c1d3fd12a8
Import (#3360)
* Fixes for test data

* Fixes for tests

* Remove legacy vue components

* Add routing number to client gateway tokens

* working on important documents and company gateways

* Import fixes
2020-02-22 13:25:49 +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
Benjamin Beganović
96a250edac
Importing documents (#3348)
* Importing documents

* Add polymorphic types

* Update documentable namespace & tests
2020-02-19 07:53:12 +11:00
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
Benjamin Beganović
61b3385102
Various tests fixes & client contacts importing (#3259)
* Fix testClientNotArchived() returns null

* Fix testClientRestored() test

* Fix risky/incomplete tests

* Importing client contacts
2020-01-29 13:43:38 +11:00
Benjamin Beganović
401d859f7a
Refactor file uploads to support multiple disks (#3257) 2020-01-29 11:12:52 +11:00
Benjamin Beganović
01c47d7c5d (Sync) beganovich:v2 to invoiceninja:v2 (#3254)
* Add more checks to invoice test

* Uploading migration file & test

* Comment redundant tests

* Improve tests with smaller sample files. (#3250)

* Reduce migration file size to improve test velocity

* minor fixes

* remove xhprof ext

* Tests for templates

* Remove commented tests

* Fix invoices testing & importing

* Sending e-mail when migration fails

* Uploading & storing the migration file
- Added Swagger notation
- Added MigrationTest.php method

Co-authored-by: David Bomba <turbo124@gmail.com>
2020-01-28 07:56:48 +11:00
Benjamin Beganović
11cc40d23a Migrate commits from 2-migration-with-json into v2 (#3241)
* 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>
2020-01-24 07:35:00 +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
54fc78a88b
Refactor jobs to be MultiDB aware (#3174) 2019-12-27 11:28:36 +11:00
Benjamin Beganović
da49880733 Massively creating resources (#3152)
* Bulk storing request & accesing policy service

* Transform hardcoded action to self-property

* Testing, support for multiple resources

* Uncomment, response(200)

* Change authorize to isAdmin() property
2019-12-17 21:58:23 +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
d05e7fb845 Force all avatars to be PNG 2019-10-05 13:55:25 +10:00
David Bomba
7c35859a6e Finished Contact Details Page 2019-08-13 09:56:46 +10:00
David Bomba
d057903229 Logging 2019-06-03 15:31:20 +10:00
David Bomba
c2791815a7 Tests for File Uploading 2019-06-03 10:28:12 +10:00
David Bomba
2549da4e6f Working on Sending Recurring invoices 2019-05-23 15:08:31 +10:00
David Bomba
9b86780fa3 Update copyright 2019-05-11 13:32:07 +10:00
David Bomba
cc4032ef3a prototype document upload class 2019-04-28 22:23:22 +10:00
David Bomba
897794dd66 Upload Files 2019-04-28 15:46:45 +10:00