1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-14 15:13:29 +01:00
Commit Graph

83 Commits

Author SHA1 Message Date
Benjamin Beganović
ac5525c9ac
[V2] Client portal rework (#3516)
* Client login, reset and update password page

* Client dashboard, sidebar, PortalComposer.php

* wip

* Personal page & update for details

* Invoices, paying & pagination.blade.php

* Invoices, recurring invoice & buttons

* Payments, link component

* Payment methods

* Breadcrums, clean up & wrap up

* Remove format_date() method to formatDate on object

* Payments
- $this->render is now proxy for render()
- Removed logic from Controller.php to ClientPortal.php
- Added MakesDates to ClientGatewayToken.php
- StripePaymentDriver.php now returns correct views
- Refactor of adding new payment method
- Ignoring all local builds for public/js/clients/*

* Signature, wip

* Fix "Pay now" on single invoice

* Payments:
- Added ProcessInvoicesInBulk request class
- Refactor InvoiceController::bulk()
- Displaying terms & payments
- New signature.blade.php
- Removed comment from webpack.mix.js

* Quotes:
- Refactor ProcessInvoicesInBulk.php to ProcessInvoicesInBulkRequest.php
- Add new 'Quotes' field inside of PortalComposer.php
- Added MakesDates to Quote.php
- Added Quote::badgeForStatus()
- Cleanup payment.blade.php
- Quote showing and approving
- New resource 'quotes' in client.php
- New image for quotes, align-left.svg

* Credits:
- New 'credits' resource in client.php
- Fixes for client.php typo

* Breadcrumbs:
- Quotes
- Credits

* Placeholder for translations.

* Restore whereIn & client scope

Co-authored-by: David Bomba <turbo124@gmail.com>
2020-03-24 04:10:42 +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
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
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
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
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
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
a6579e43df Transformer fixes 2019-10-02 19:04:27 +10:00
David Bomba
e9e12f59af Padding out client dashboard 2019-08-21 14:29:07 +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
f63803fe7b Finished - Client auth + password reset + mailables 2019-07-18 09:45:18 +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
f01c038c6e Move from guarded models to fillable properties.. overcomes handling additional response parameters 2019-06-26 14:04:10 +10:00
David Bomba
9b86780fa3 Update copyright 2019-05-11 13:32:07 +10:00
David Bomba
17a7f0564e
Create client (#2543)
* Fix for comparing delete contacts change diffKeys to diff()

* Client create

* Create client

* Create client
2018-12-07 21:57:20 +11:00
David Bomba
348890e8fa
Save Client / Contacts (#2523)
* View composers

* Saving client and contacts

*  saving client and contacts

* update client job

* unique emails
2018-11-27 17:59:16 +11:00
David Bomba
fa83ce10a3
Implement Typescript (#2514)
* Add contact

* Saving client and contacts

* working on ts implementation

* Need to pass  into TS

* client_edit.ts

* Need to pass  into TS

* declare variables
2018-11-22 22:12:41 +11:00
David Bomba
0f66625cdf
Refactor clients (#2513)
* attempting to bind vue to blade partials

* typo for vue

* working on client contact page

* refactor shipping-billing addresses back to client model

* clean up
2018-11-21 19:28:07 +11:00
David Bomba
af9ae06289
Model encode primary keys (#2510)
* Client Address

* Vue components for address

* Fix for null objects being passed to Vue

* Copy Billing Address

* route key

* Social auth

* Pad out route bindings

* Deploy hashes across models

* social auth buttons
2018-11-20 15:36:56 +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
d430600e1e
Datatables, Base Model, Base Presenter (#2484)
* Fixes for datatables

* Implement a BaseModel

* Working on reusable header data model

* Working on adding session variables

* Clean up header data

* Random Data Seeder

* working on searching datatables across relationships.

* Working on transforming primary keys between client and server facinglogic

* Updated assets
2018-11-02 21:54:46 +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
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