1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-20 16:31:33 +02:00
Commit Graph

259 Commits

Author SHA1 Message Date
David Bomba
6a03bcc546
Merge branch 'v5-develop' into v5-develop 2020-12-09 07:25:16 +11:00
David Bomba
8107a49677 remove trailing slash from app url 2020-12-08 07:21:08 +11:00
Benjamin Beganović
8280184425 bump livewire version 2020-12-05 13:53:45 +01:00
David Bomba
f878cfc1b5 version bump 2020-12-05 20:01:49 +11:00
Benjamin Beganović
a7a484f205 install php-cs-fixer 2020-11-25 15:01:49 +01:00
David Bomba
63cc567244 Working on migrations 2020-11-24 21:12:05 +11:00
David Bomba
6f1b4d4548 Change JSON parser 2020-11-24 08:33:37 +11:00
David Bomba
28cbd75fcb Fixes for credit PDF 2020-11-11 11:13:39 +11:00
David Bomba
ae361ed22f Update composer 2020-11-02 08:49:58 +11:00
David Bomba
adeda5526e Add Psalm, code cleanup! 2020-10-28 17:58:15 +11:00
David Bomba
1338a5e558 Fixes for check data script 2020-10-21 17:15:03 +11:00
David Bomba
9187946760 Fixes for gateway 2020-10-09 22:13:33 +11:00
David Bomba
16b731d010 Bump laravel to version 8 2020-10-01 15:33:38 +10:00
David Bomba
1d9fb2271e Bump sentry version 2020-09-29 22:26:29 +10:00
Benjamin Beganović
4e9bc0552d Rename "Downloads" to "Documents":
- Remove Livewire auto-publish from composer.json
- Replace old DocumentController with DownloadsController
- Rename DownloadsTable & downloads-table to DocumentsTable & documents-table
- New ShowDocumentRequest for displaying documents
- Change authorize() with DownloadMultipleDocumentsRequest
- Change route in PortalComposer
- Update Livewire assets
- Remove old documents routes
2020-09-28 12:04:34 +02:00
David Bomba
038d5e0406 remove stripe omnipay driver 2020-09-25 20:05:45 +10:00
Benjamin Beganović
f2f556004d Auto-publish assets from Livewire 2020-09-24 13:29:20 +02:00
David Bomba
dcaaa53ae6 remove redundant dependencies 2020-09-12 09:47:43 +10:00
David Bomba
7356d26827 Remove dump server 2020-09-07 20:26:53 +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
d3775fd059 Change PING route response 2020-07-02 20:14:19 +10:00
Benjamin Beganović
72cd7ca91a Merge remote-tracking branch 'upstream/v2' into v2-1006-checkout-com 2020-06-15 14:26:59 +02:00
David Bomba
630ef6c26e Add authorize.net sdk 2020-06-12 08:18:49 +10:00
Benjamin Beganović
d37064e393 wip 2020-06-11 15:13:35 +02:00
David Bomba
0164b053db update dependencies 2020-06-11 08:56:12 +10:00
Benjamin Beganović
049f30104e checkout 2020-06-10 17:38:10 +02:00
David Bomba
3e77612210
Fixes for conflicts (#3743)
* Add checks for duplicate contacts in invitations

* Fixes for self updater

* homebrew self updater

* remove self-updater
2020-05-25 11:57:08 +10:00
David Bomba
6cc47fbcad
Test local git update (#3741)
* Add checks for duplicate contacts in invitations

* Fixes for self updater

* homebrew self updater
2020-05-25 10:50:16 +10:00
Benjamin Beganović
b036d370c3
Inline CSS for e-mails (#3718)
* Add laravel-mail-css-inliner

* fix typo

* production builds

Co-authored-by: David Bomba <turbo124@gmail.com>
2020-05-19 23:01:06 +10:00
Benjamin Beganović
14577fdfd0
Remove breadcrumbs (#3699)
* Remove breadcrumbs

* remove config
2020-05-14 11:02:23 +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
d9d2e21f93
Subscriptions (#3682)
* 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

* Quote actions

* Send Quotes

* Fixes for seg faults!

* Minor fixes

* Fixes for client contact scopes
2020-05-09 08:35:49 +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
Benjamin Beganović
ab8b05dd56
Client portal improvements (#3652)
* Install livewire/livewire

* Table improvements

- Cleanup of InvoiceController
- Added Livewire package
- New Livewire component (InvoicesTable)
- New WithSorting trait
- Removed rendering invoices from index.blade.php
- Removed Yaryabox/Datatables references in InvoiceController

* Refactor: Recurring invoices

* payments table & sorting improvements

* payment methods table

* quotes table

* credits table

* Add turbolinks
2020-04-23 08:49:23 +10:00
David Bomba
820f770ef8
Upgrade Self Updater (#3646)
* Fixes for createinvoicepdf

* Filter properties which can be saved on free accounts

* Update laravel self updater version

* Upgrade self updater version

* Rework Composer upate

* Self Update
2020-04-20 08:35:48 +10:00
David Bomba
aa690578e3
Implement Currency Conversion library. (#3643)
* Fixes for testS

* Fixes for migration

* Fixes for migratin

* Query performance improvements

* Check Data Script

* Currency Conversion API

* Implement currency conversion

* Currency Conversions
2020-04-19 20:29:58 +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
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
David Bomba
4b18041d36
Add dbal (#3611) 2020-04-09 22:23:56 +10:00
Benjamin Beganović
8f4fa5e80d
Client portal improvements (#3607)
* Remove Html\Builder dependency from controllers

* Remove: yajra/laravel-datatables-html

- yajra/laravel-datatables-oracle as main non-dev dependency

* Added sorting to tables
2020-04-09 12:18:07 +10:00
David Bomba
bfc434071f
Fixes for self-installer (#3604)
* Fixes for self updater

* Fixes for self updater

* Fixes for self updater

* Fixes for self-updater
2020-04-08 22:19:07 +10: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
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
374a44aa55
Laravel Horizon. (#3517)
* Fixes for white label

* Include Laravel Horizon
2020-03-24 04:15:56 +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
David Bomba
ee0a529118
Implement composer internally to support self-update (#3476)
* Make notifications queueable

* Make composer a dependency so we can support self updating!

* Allow composer to update internally
2020-03-11 11:38:11 +11:00
David Bomba
26cffd90e1
Lock self updater (#3475) 2020-03-11 10:43:27 +11:00
David Bomba
d60c179da7
Fixes for deleting a company. (#3454)
* Fix for typo

* wind back self updater repo

* fixes for client settings

* Add current version to the account transformer

* fixes for deleting a company
2020-03-08 20:06:21 +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
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
c3da9c80b3
Refunds implementation v1 (#3270)
* Minor fixes for tests

* Refunds implementation v1
2020-01-30 22:19:51 +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
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
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
1b6ec9699a
Gmail Email via API (#3124)
* Working on GMail Driver

* working on custom Gmail Mail Provider

* Add total_taxes to quotes and recurring_*

* Implementation of new mailserviceprovider to allow native use of Mail:: with gmail email sending
2019-12-04 15:52:04 +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
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
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
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
e2284132ec
Add gateway transformer (#2999) 2019-10-17 22:49:09 +11:00
David Bomba
59abbd04f9 Integrating OpenAPI documentation 2019-10-06 17:05:46 +11:00
David Bomba
515b32fd87 Bump to Laravel 6 2019-09-26 20:49:52 +10:00
David Bomba
bbe5049a2d add padding to tables 2019-09-26 15:14:07 +10:00
David Bomba
f8734db1b6 Working on Stripe payment driver 2019-09-05 22:42:26 +10:00
David Bomba
374cc88c06 Display PDF 2019-09-05 09:52:49 +10:00
David Bomba
76ba0624bc fixes for dependencies 2019-09-05 08:04:45 +10:00
David Bomba
3f1fcdda76 Working on client portal 2019-08-12 08:33:17 +10:00
David Bomba
c50fb68b21 Working on dropzone uploads - generic 2019-08-07 13:07:06 +10:00
David Bomba
3829a874aa Add Former dependency 2019-07-29 13:59:28 +10:00
David Bomba
fd9c746c8d Working on datatables 2019-07-25 14:51:00 +10:00
David Bomba
7a6f9c993b Stubs for datatables 2019-07-23 13:31:53 +10:00
David Bomba
d25d6d1c9e force php 7.3 2019-07-09 10:33:34 +10:00
David Bomba
4e4d134230 Fixes for tests - new implementation for invitations 2019-06-02 16:36:31 +10:00
David Bomba
5efa91141c Add Omnipay 3 drivers 2019-05-05 14:22:32 +10:00
David Bomba
a0abd052b2 Tests for PDF generation? 2019-05-04 13:14:37 +10:00
David Bomba
cc4032ef3a prototype document upload class 2019-04-28 22:23:22 +10:00
David Bomba
63f8700db1 bump laravel version to 5.8, include new GCS storage library 2019-04-28 15:11:08 +10:00
David Bomba
b649a24745 Stub counter variables 2019-04-26 15:57:45 +10:00
David Bomba
3baa48a23b fixes for tests 2019-04-24 20:39:41 +10:00
David Bomba
d8f5d10b58 Fixes for tests 2019-04-24 20:01:40 +10:00
David Bomba
3c5ccf2da3 Add Sentry Support 2019-04-10 12:01:28 +10:00
David Bomba
8ae8300785 Implement Fractal API output 2019-03-29 08:34:58 +11:00
David Bomba
9ff835a52e V2 First Push 2019-03-26 14:08:19 +11:00
David Bomba
748409471c Implement Embedded Google Maps - remove redundant npm and composer dependencies 2019-01-30 15:52:26 +11:00
David Bomba
6a8f8b8691 Geocoding library 2019-01-29 21:15:03 +11:00
David Bomba
0b8e83b38e Add Geocoder library 2019-01-29 20:21:55 +11:00
David Bomba
068ff4107d Remove telescope 2019-01-28 09:54:25 +11:00
David Bomba
b5687c91af Add Telescope 2019-01-28 08:52:19 +11:00
David Bomba
37e4b67ab9
V5.0 (#2617)
* 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
2019-01-22 20:47:26 +11:00
David Bomba
9204510193
Vue Datatables (#2597)
* Adding Vue components for Charts and Multi Select

* List Views


* Improve UI of datatable

* Refactor Vue Datatable for reusability
2019-01-13 12:42:03 +02:00
David Bomba
bdb0f43d33
Modules, VueJS (#2552)
* Fix for comparing delete contacts change diffKeys to diff()

* Client create

* Client Settings

* Working on localization

* Refactor DataTables

* protyping blade vs pure vue

* Rebuild test module

* Generic notes module

* Small Client Notes Module

* Tests for TabMenu Trait

* implements tab pills in client screen

* Integrate Modules
2018-12-13 10:23:21 +11:00
David Bomba
b989cf82b7
Client CRUD with VueJS (#2497)
*  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
2018-11-11 00:24:36 +11:00
David Bomba
1ad857bac9
Vue JS Scaffolding (#2493)
* 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
2018-11-07 16:22:36 +11:00
David Bomba
db8f962d9b
Remove Laravel Telescope (#2488) 2018-11-03 12:22:43 +11:00
David Bomba
3b0cda1502
Set default company on account creation (#2487)
* Fixes for tests

* fixes for permissions

* Set default company on account creation

* Ensure default company ID is registered in session variables

* Implement a generic resolver to harvest an entity from encoded value

* Laravel Telescope
2018-11-03 12:01:40 +11:00
David Bomba
dde1cd6cfb
Confirmation Emails, Datatables (#2473)
* Fixes for MakesHash trait

* Client List DataTables

* Data table dependencies

* Confirmation URLs

* Wire up firing events for notification emails
2018-10-29 14:16:17 +11:00
David Bomba
849f6e5439
Fixes for Tests, implement MakeHash trait (#2469)
* Fixes for Feature and browser tests

* Change .env.example variable names, implement hash encoding of db numbers for URIs
2018-10-26 15:53:29 +11:00
David Bomba
dac1aa88d5
Tests, Multi-DB support for incoming URLs (#2466)
* Tests for authentication

* Add db field to company table (required if we are doing jobs without an auth()->user() )

* Add Laravel Dusk for browser testing, add ability to set DB by incoming URL Hash
2018-10-24 21:24:09 +11:00
David Bomba
64041fb3cb
Refactor signup flow (#2465) 2018-10-24 14:50:15 +11:00
David Bomba
e4f46c2a4e
Presenters, skinned views, model refactoring (#2464)
* Default database connection - set defaults for engine and strict

* Working on tests for refactored model

* Fixes for tests, use polymorphic relationships for Invitations

* skin the password reset pages
2018-10-22 23:04:37 +11:00
David Bomba
50e22ee1d6
Refactor constants, set active db connection in middleware, add socket.io dependencies (#2463) 2018-10-21 09:26:21 +11:00
David Bomba
103a95955a
Sign up (#2460)
* Privacy Policy & TOS

* configure additional dependency packages for redis and modules, middleware implementation for multi-db

* Stub the signup
2018-10-19 14:45:55 +11:00
David Bomba
f745c3f0a6
Working on Social Authentication (#2458)
* Laravel Socialite + Refactor for searching for Users across multiple databases

* Refactor for Unique User Rules, add Middleware for setting active DB connection per request, more tests
2018-10-18 16:04:36 +11:00
David Bomba
62e2444a2c
Sign Up Scaffolding (#2453)
* Fix js dependencies

* Breadcrumb implementation

* Test for UniqueEmailRule Validation

* reduce length of account_key to prevent key too long error

* Fixes for travis - reduce user email length

* Reduce all unique field lengths to 100 to prevent key overflow

* Fix for Bank Model

* Prevent a user from registering multiple account with one email address when using multiple databases
2018-10-17 23:26:27 +11:00
David Bomba
528c99f655
Login UI, Database Seeds, Dashboard layouts (#2450)
* Implement CoreUI Interface

* Core UI Navigation wire frame

* UI - Fix sidebar nav - add Invoice Ninja Logo

* Create layout using CoreUI admin template

* Login UI, Database seeds
2018-10-16 22:42:43 +11:00
David Bomba
19a836b010
Scaffolding Auth (#2438)
Scaffolding Auth
2018-10-12 22:29:34 +11:00
Hillel Coren
f03dd652e6 Initial commit 2018-10-04 20:10:43 +03:00