1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-18 00:53:10 +01:00
Commit Graph

1259 Commits

Author SHA1 Message Date
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
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
Benjamin Beganović
4694675b91 Payment methods (#3045)
- Deleting payment methods
2019-11-06 09:51:39 +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
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
13e104c1d9
Fixes for line items (#3028) 2019-10-29 22:12:59 +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
0f9aae454b
Update Company settings, OpenAPI documentation and Company Migration (#3025)
* Insert generic for client country if not set

* Invoice fixes
2019-10-28 08:36:09 +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
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
ad75344503 OpenAPI docs for support message API 2019-10-17 20:31:47 +11:00
David Bomba
fbc03aa9f7 Update setting fields 2019-10-17 19:26:46 +11:00
Benjamin Beganović
b35bff3cde Forward support messages to contact@invoiceninja.com with system-level info (#2993)
* Sending support messages via API

* Sending log files only if self-hosted

* Remove legacy code
2019-10-17 07:12:38 +11:00
David Bomba
b6d6d3928b
Eager loading (#2995)
* Fixes for tests

* Eager load payment types
2019-10-16 21:24:33 +11:00
David Bomba
1c21b6dc7c
Invoice Calculations (#2985)
* Fixes for invoice item line totals

* Refactoring invoice calculations

* Update api-docs

* Fixes for invoice calculations

* remove tests

* fixes for config files
2019-10-13 21:59:55 +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
8d14c6b2bd Switch currency_id back to settings object 2019-10-10 21:43:50 +11:00
David Bomba
fb150cc1b0 Documentation for SettingsSaver trait 2019-10-10 13:24:19 +11:00
David Bomba
7a4decdd3d working on type casting 2019-10-10 10:15:35 +11:00
David Bomba
056b2cbdb7 Tests for company settings 2019-10-09 23:21:21 +11:00
David Bomba
0e9ca5c1ce Company Settings 2019-10-09 16:57:32 +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
2e4cd7459a Add pay now button to each row in table 2019-10-08 16:09:59 +11:00
David Bomba
fb513ebe69 Customise column width for datatable 2019-10-08 14:04:35 +10:00
David Bomba
75b089fa19 Multi payment invoices with filtering of already paid invoices 2019-10-08 13:06:27 +10:00
David Bomba
accbbcf67b Flash message 2019-10-08 12:03:40 +10:00
David Bomba
cc85746af0 Upload company logo to group settings 2019-10-08 07:17:55 +10:00
David Bomba
d35a90cb94 change logo_url to company_logo_url 2019-10-07 22:06:23 +11:00
David Bomba
b8515e26b0 Upload company logo to client settings 2019-10-07 22:05:06 +11:00
David Bomba
2a7f62b579 Fixes for tests 2019-10-07 21:36:30 +11:00
David Bomba
fda6ec33fd Company Settings OpenAPI 2019-10-07 21:21:02 +11:00
David Bomba
c46ebb2778 Fixes for tets 2019-10-07 20:39:22 +11:00
David Bomba
5bbc274a48 Fixes for api-headeR 2019-10-07 17:31:26 +11:00
David Bomba
a54b6c3055 Finalized OpenAPI 2019-10-07 15:57:14 +11:00
David Bomba
0cad2c1c90 Users OpenAPI 2019-10-07 15:34:57 +11:00
David Bomba
ad1f8dc928 Recurring Quote OpenAPI 2019-10-07 15:32:29 +11:00
David Bomba
eacc1fe66a Recurring Invoice OpenAPI 2019-10-07 15:29:16 +11:00
David Bomba
19caaac912 Payments OpenAPI 2019-10-07 15:19:25 +11:00
David Bomba
d999212a34 GroupSettings OpenAPI 2019-10-07 15:13:50 +11:00
David Bomba
2f7c403992 company_gateway OpenAPI 2019-10-07 15:09:04 +11:00
David Bomba
e784705aaf Clients and Companies OpenAPI 2019-10-07 15:03:01 +11:00
David Bomba
24714dc9f4 Clients OpenAPI 2019-10-07 10:32:36 +11:00
David Bomba
6d81f981f8 Invoices OpenAPI 2019-10-07 09:00:02 +11:00
David Bomba
165182266a OpenAPI 2019-10-06 23:24:15 +11:00
David Bomba
febe32b7d8 OpenAPI 2019-10-06 23:18:22 +11:00
David Bomba
65757f4b71 OpenAPI 2019-10-06 23:09:56 +11:00
David Bomba
b7a90a4cae add custom values to settings object 2019-10-06 22:58:11 +11:00
David Bomba
ac96a01c03 OpenAPI 2019-10-06 22:51:33 +11:00
David Bomba
daa402c778 OpenAPI Docs 2019-10-06 22:27:56 +11:00
David Bomba
897e4855c1 OpenAPI 2019-10-06 22:24:54 +11:00
David Bomba
cf67589f23 Open API 2019-10-06 19:44:00 +11:00
David Bomba
59abbd04f9 Integrating OpenAPI documentation 2019-10-06 17:05:46 +11:00
David Bomba
5e553b36e9 logo uploads 2019-10-05 13:18:52 +10:00
David Bomba
d39d837895 Fixes for tests 2019-10-05 11:58:33 +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
ae02953a8f Client portal client screen 2019-10-04 07:51:54 +10:00
David Bomba
5adc88d01e Docs 2019-10-03 22:17:48 +10:00
David Bomba
3af84f7de7 Company Gateway endpoint and tests 2019-10-03 21:18:12 +10:00
David Bomba
16cd98980b Company Gateway Tests 2019-10-03 20:59:19 +10:00
David Bomba
3e3cde2e1e pdate 2019-10-03 13:23:00 +10:00
David Bomba
4e51256b51 Company Logo upload test 2019-10-03 10:17:29 +10:00
David Bomba
db40a4ab71 handle logo upload for company 2019-10-03 07:59:27 +10:00
David Bomba
b8aaa8c082 Payment hooks 2019-09-30 07:49:43 +10:00
David Bomba
85de581fac Fix for company filtering 2019-09-29 18:46:53 +10:00
David Bomba
441d52523d Add activities to API 2019-09-27 14:31:13 +10:00
David Bomba
487f93933b Laravel V6 2019-09-26 23:00:51 +10:00
David Bomba
2c05f5a47e Refresh route 2019-09-25 21:49:43 +10:00
David Bomba
0687817ae8 Create payment after payment and mark invitations as paid 2019-09-25 16:23:51 +10:00
David Bomba
5090c963d3 Payment responses and saving card details 2019-09-25 14:03:28 +10:00
David Bomba
46602a21c5 Stripe payments 2019-09-25 12:07:33 +10:00
David Bomba
d34b129474 fix error formatting 2019-09-24 08:37:38 +10:00
David Bomba
bbabe4836b Fix DB search 2019-09-23 22:19:37 +10:00
David Bomba
3ad0a3ff9a Sort response in alphabetical order by key 2019-09-23 21:29:30 +10:00
David Bomba
1e1be26980 Invitation routing 2019-09-23 15:59:01 +10:00
David Bomba
3860e770f6 Add reset link to API 2019-09-23 08:24:25 +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
04b4f224fa Working on terms and signature authorization 2019-09-21 12:17:27 +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
89cc4170d6 Fixes 2019-09-18 22:43:37 +10:00
David Bomba
d5d1d7d9a3 Refactor for API 2019-09-18 16:02:05 +10:00
David Bomba
a331368383 List view for payment methods 2019-09-18 12:39:53 +10:00
David Bomba
c79211c4f4 Mitigate nulls in database 2019-09-17 15:42:10 +10:00
David Bomba
bacf1f74a0 Fixes for signup route 2019-09-17 07:42:08 +10:00
David Bomba
662aa3aed1 Working on credit card auth response 2019-09-16 21:03:25 +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
2f164d6a76 Add account to login response 2019-09-12 22:02:25 +10:00
David Bomba
da0c0080a5 Fixes for login api 2019-09-12 21:46:09 +10:00
David Bomba
9431abb300 Working on payment flow - client side 2019-09-12 16:10:21 +10:00
David Bomba
b7920a072a Set all ID's to strings for consistency 2019-09-12 11:28:41 +10:00
David Bomba
4536bc0566 API fixes 2019-09-11 20:15:44 +10:00
David Bomba
de3c724f48 Bug Fixes 2019-09-11 16:35:31 +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
1c2ba3a53e force status codes to be returned 2019-09-10 19:31:51 +10:00
David Bomba
b853dd80ed Working on payment methods 2019-09-09 16:25:33 +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
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
668e01b814 Stubbing invoice design templates 2019-08-29 14:07:04 +10:00
David Bomba
b7d9ad1808 Create more date helpers 2019-08-29 08:13:26 +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
0af0d9786d Fixes for test 2019-08-28 10:58:13 +10:00
David Bomba
33b42db47c Tests 2019-08-28 09:19:54 +10:00
David Bomba
d50cab40c2 Create client logo's 2019-08-26 19:28:21 +10:00
David Bomba
bad61e8984 Payment Gateways - padding 2019-08-22 08:34:20 +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
03d67bbb52 Recurring Invoices - Client Portal 2019-08-15 15:19:00 +10:00
David Bomba
a6b78fd7a6 Working on recurring invoices listview 2019-08-15 14:31:03 +10:00
David Bomba
ec939e2f61 Working on client payment flow 2019-08-14 20:23:44 +10:00
David Bomba
dc65ede956 Remove links to multidatabaseuserprovider 2019-08-14 15:40:22 +10:00
David Bomba
434d4a46d7 Work on paying bulk invoices 2019-08-14 13:22:47 +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
60853a8510 Edit client information 2019-08-14 07:41:02 +10:00
David Bomba
b2f7740fa1 Unique email validation for contact 2019-08-14 07:16:31 +10:00
David Bomba
7c35859a6e Finished Contact Details Page 2019-08-13 09:56:46 +10:00
David Bomba
4a08414ca5 Working on User profile 2019-08-12 22:45:13 +10:00
David Bomba
433a2a01d7 clean up 2019-08-08 21:18:02 +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
3e91a4f700 Working on client side uploads 2019-08-07 16:56:19 +10:00
David Bomba
f37f28a846 Working on upload avatar - generic 2019-08-07 10:44:38 +10:00
David Bomba
68f43671a8 Working on profile avatar upload - with dropzone 2019-08-05 15:29:50 +10:00
David Bomba
b96b03440d Implement Select 2 filtering for client portal invoices 2019-08-05 12:58:12 +10:00
David Bomba
9387072711 Datatables 2019-08-05 05:59:28 +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
888fecf886 Working on client portal - datatables 2019-07-26 08:19:01 +10:00
David Bomba
a215e9b056 Working on client portal - datatables 2019-07-26 08:05:13 +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
f237bd958d fix spacing between sidebar icons and link text 2019-07-23 09:25:53 +10:00
David Bomba
1823a23b2d view composers for client portal 2019-07-22 13:54:34 +10:00
David Bomba
2df2ec44ba View Composer for Client Portal 2019-07-19 14:32:51 +10:00
David Bomba
f63803fe7b Finished - Client auth + password reset + mailables 2019-07-18 09:45:18 +10:00
David Bomba
7e4294fcc5 Client password resets 2019-07-17 14:52:54 +10:00
David Bomba
7448ef9b0a Client-Contact password reset stubs 2019-07-17 14:15:25 +10:00
David Bomba
99a535eed8 Default skin client auth 2019-07-17 13:09:37 +10:00
David Bomba
4cc9ca2748 Handle fallback routes from different route group 2019-07-17 08:59:09 +10:00
David Bomba
241cb02a86 Start Front End of Client Portal - Authentication 2019-07-16 12:38:11 +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
89797b0991 Handle list filters from Contact Routes 2019-07-10 13:10: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
51b0c17c4c Working on client login routes 2019-07-08 10:08:57 +10:00
David Bomba
65afb4242b Finished implementing add additional company to account 2019-06-26 09:44:08 +10:00
David Bomba
220bedf3a0 fixes for company tests 2019-06-25 15:08:07 +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
67fa34fe82 Implement forced includes to allow forcing additional objects in the json response 2019-06-24 10:13:53 +10:00
David Bomba
9cb33f3e10 working on Company Tests 2019-06-21 08:15:53 +10:00
David Bomba
2ddb9ddde3 Company TestS 2019-06-20 16:20:14 +10:00
David Bomba
a793100f79 Working on Company CRUD 2019-06-17 10:15:42 +10:00
David Bomba
42e7369c08 Fixes for tests 2019-06-17 09:58:33 +10:00
David Bomba
544e59bbba Transform id keys from Bulk routes 2019-06-12 14:22:05 +10:00
David Bomba
3ca2c26e90 additional middleware filters for users that are logging in 2019-06-12 11:00:38 +10:00
David Bomba
79907e6206 Refactor the way we harvest the company entity 2019-06-12 09:15:17 +10:00
David Bomba
49a48db8a0 User Tests 2019-06-11 15:28:24 +10:00
David Bomba
f4ae84e954 Re work the way we harvest a user token 2019-06-11 13:20:23 +10:00
David Bomba
51c5b96b68 Working on User Crud 2019-06-06 14:51:28 +10:00
David Bomba
cd84cd48ba Working on User routes 2019-06-05 19:50:37 +10:00
David Bomba
671760eda4 Fixes for unique email rule 2019-06-05 10:43:23 +10:00
David Bomba
c2791815a7 Tests for File Uploading 2019-06-03 10:28:12 +10:00
David Bomba
ce8d440ec5 fixes for recurring invoice request 2019-05-30 09:58:00 +10:00
David Bomba
364df6bfe2 Cleaning up OAuth 2019-05-23 10:25:55 +10:00
David Bomba
383c04827d Custom Scopes depending on provider 2019-05-23 08:28:03 +10:00
David Bomba
c25e2e6a6d Fixes for logining in via web 2019-05-22 13:43:51 +10:00
David Bomba
1c48c51407 bug fix 2019-05-22 13:24:40 +10:00
David Bomba
b121955cd7 bug fix 2019-05-22 13:23:31 +10:00
David Bomba
02a9dc228e bug fix 2019-05-22 13:22:31 +10:00
David Bomba
bdf4c8b028 Expand Scopes 2019-05-22 13:21:23 +10:00
David Bomba
d2a2378f4b OAuth from Third Party Client <> Server finished 2019-05-22 13:18:18 +10:00
David Bomba
914496b75a fix for login controller 2019-05-22 11:24:05 +10:00
David Bomba
3d4100394f enforce stateless API 2019-05-22 11:18:52 +10:00
David Bomba
2f6d330a7a fix for signup over OAuth 2019-05-22 11:09:36 +10:00
David Bomba
2334a3a870 Fix for oauth signup 2019-05-22 11:00:23 +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
97d3093b2b Working on oAuth 2019-05-22 09:00:12 +10:00
David Bomba
289556e673 refactor job names 2019-05-16 16:00:27 +10:00
David Bomba
8b3432f350 Apply payments and adjust ledgeR 2019-05-16 09:40:53 +10:00
David Bomba
92b46d5ed8 tests 2019-05-15 19:20:52 +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
98d1480450 Store Invoice Job 2019-05-09 15:29:31 +10:00
David Bomba
52800bdc4b Minor refactors 2019-05-06 15:34:59 +10:00
David Bomba
10e0c8a05f Recurring Quotes 2019-05-05 10:49:01 +10:00
David Bomba
6660e881ef Fixes for Payment tests 2019-05-03 18:28:48 +10:00
David Bomba
ac05fc6ff6 Working on Payments 2019-05-03 17:57:55 +10:00
David Bomba
9f9f3439b4 Fixes for recurring invoices test 2019-05-03 17:35:49 +10:00
David Bomba
5bc41b4d79 payments 2019-05-03 16:11:43 +10:00
David Bomba
c35f9fbe04 recurring invoices 2019-05-03 08:29:04 +10:00
David Bomba
6d14821528 Working on Quotes 2019-05-02 21:07:38 +10:00
David Bomba
a54fd4b931 Upload a file 2019-04-28 20:25:18 +10:00
David Bomba
16379fe514 User Requests 2019-04-27 19:20:03 +10:00
David Bomba
2cfcc35f70 Fire events for User 2019-04-25 21:33:03 +10:00
David Bomba
2a613d2722 start mysql in travis 2019-04-24 11:21:50 +10:00
David Bomba
639b22c69c Bump dist version to xenial for travis 2019-04-24 11:12:27 +10:00
David Bomba
e364bcf6ec Stub clone to quote 2019-04-23 23:17:49 +10:00
David Bomba
18d2284a8e Quotes and Recurring Invoice migrations 2019-04-23 21:44:41 +10:00
David Bomba
f496949008 Refactor bulk actions 2019-04-23 16:19:45 +10:00
David Bomba
706625e83f Working on invoice actions 2019-04-23 14:16:41 +10:00
David Bomba
5b8f56593e Implement API throttling, and ensure output is JSON 2019-04-19 17:59:48 +10:00
David Bomba
72dee9bfb6 User login via API 2019-04-19 12:58:40 +10:00
David Bomba
f82aaefd4c Working on API login 2019-04-19 11:59:07 +10:00
David Bomba
ac382fe3e7 Refactor for Signup via API 2019-04-18 21:57:22 +10:00
David Bomba
788a42e9a4 Working on API Login Authentication 2019-04-18 16:11:37 +10:00
David Bomba
f03da9d02d Wired Up Account Confirmation 2019-04-18 15:01:40 +10:00
David Bomba
d5e2787272 Documentation for InvoiceController 2019-04-18 08:30:59 +10:00
David Bomba
2b24753813 Working on Invoice Tests, refactoring Settings integration 2019-04-17 16:20:32 +10:00
David Bomba
2de838cb62 Invoice List Tests 2019-04-17 10:58:23 +10:00
David Bomba
82d573d759 Invoice API tests scaffolding 2019-04-16 15:28:30 +10:00
David Bomba
cb7eea0e7b Refactor invoice calculations class, use FormRequests on destroy() 2019-04-16 13:28:05 +10:00
David Bomba
c5e0d2a8d9 Scaffolding Invoice 2019-04-15 10:10:54 +10:00
David Bomba
ae57c05659 Working on tests for invoice items 2019-04-04 20:28:53 +11:00
David Bomba
1f630eb119 app/Filters/InvoiceFilters.php 2019-04-04 12:38:17 +11:00
David Bomba
931ea9634c Invoice Factory and Repo 2019-04-04 10:17:15 +11:00
David Bomba
b8331bb3d6 Bulk action and delete Product 2019-04-03 20:54:27 +11:00
David Bomba
cb93b9ebe4 Update a Product 2019-04-03 14:22:13 +11:00
David Bomba
39617644ad Save a product 2019-04-03 13:34:28 +11:00
David Bomba
08c4579464 Working on Products 2019-04-03 12:17:21 +11:00
David Bomba
0f19056b8f Obfuscate primary ID 2019-04-03 11:09:22 +11:00
David Bomba
ef08afc240 Catch Model Not Found and return JSON 2019-04-02 17:36:49 +11:00
David Bomba
fd085e7e9c Invoice Transformer 2019-04-02 16:16:39 +11:00
David Bomba
e95558334e Add fallback route to catch all non existant routes 2019-03-30 20:30:41 +11:00
David Bomba
8ae8300785 Implement Fractal API output 2019-03-29 08:34:58 +11:00
David Bomba
fd8c19d911 implement filterable query models 2019-03-28 21:07:45 +11:00
David Bomba
7d86c8306a Clean up for tests 2019-03-28 20:05:13 +11:00
David Bomba
25b26a2e5d Working on determining the current company the best way using the API 2019-03-28 16:03:18 +11:00
David Bomba
88f96be135 working on transformers 2019-03-28 13:36:36 +11:00
David Bomba
1c3f0c590c More tests for Client REST api endpoints 2019-03-28 08:32:50 +11:00
David Bomba
74a01f8731 move away from session variables 2019-03-27 20:38:28 +11:00
David Bomba
08e4f9724f Client Tests 2019-03-27 17:22:27 +11:00
David Bomba
ebddf93353 Test for API 2019-03-27 15:50:13 +11:00
David Bomba
e8da725aa1 testing api 2019-03-27 08:17:28 +11:00
David Bomba
7defe077bc working on client test 2019-03-26 22:31:07 +11:00
David Bomba
ea5f045509 Setting up for tests 2019-03-26 15:46:08 +11:00
David Bomba
9ff835a52e V2 First Push 2019-03-26 14:08:19 +11: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
7b5028820d
Fixes for travis (#2669) 2019-02-17 22:07:58 +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
David Bomba
1ad19734e3
Stubs for Client Settings (#2655)
* 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
2019-02-04 23:06:19 +11:00
David Bomba
49e4ae134b force collection on nested view model 2019-01-28 11:19:29 +11:00
David Bomba
ce16c4d4c0 Use factories to create default models 2019-01-28 09:13:12 +11:00
David Bomba
f345986157 Working on google maps implementation 2019-01-28 08:34:57 +11:00
David Bomba
545a8df362 DocBlocks 2019-01-27 10:22:57 +11:00
David Bomba
64d3ca0474 Added docs 2019-01-27 08:24:16 +11:00
David Bomba
e3fc50ebdb Working on Show Client 2019-01-26 20:34:38 +11:00
David Bomba
cf1e65f1c0
ctrans() translator helper (#2621)
* Refactor  pivot table accessors

* Add select2 for client - country selector

* Fixes for client contact update

* implement ctrans() function across application

* Increase custom fields to 4 across the application

* Refactor: remove repos calling other repos, implement 4 custom values across application

* include querying the custom values in the client list

* Fix null custom value labels

* Scaffold for client - show view

* Working on Client Show
2019-01-25 21:47:23 +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
da325e1797
Refactor permissions for datatables. (#2615)
* 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
2019-01-22 01:06:49 +11:00
David Bomba
0c1fc0d904
List views (#2609)
* Wire up Create Entity Button to create route

* Refactor permissions, we must also ensure the user company id and entity id matches at the Gate::

* Add translations for Status filters

* Bug fix for initial list view not displaying

* Apply actions to menu for list items

* Wire up list view actions, individual

* Place permission filters on datatable lists
2019-01-20 16:00:50 +11:00
David Bomba
cc53d08b4d
Bulk Actions (#2606)
* Wired up Bulk Archive / Delete / Restore button with reactivity on checkbox actions

* Working on POSTing bulk actions

* Working on Filtering by status

* Add Action Entity

* Implement Vuex for state management

* Implement Vuex storage & list view bulk actions

* Clean up console logs

* Configure entity list views server side
2019-01-19 21:35:21 +11:00
David Bomba
77969243fa
Revert "Implement Bulk Actions (#2605)" (#2607)
This reverts commit b635f3b32e.
2019-01-19 21:34:58 +11:00
David Bomba
b635f3b32e
Implement Bulk Actions (#2605)
* Wired up Bulk Archive / Delete / Restore button with reactivity on checkbox actions

* Working on POSTing bulk actions

* Working on Filtering by status

* Add Action Entity

* Implement Vuex for state management

* Implement Vuex storage & list view bulk actions

* Clean up console logs
2019-01-19 17:21:34 +11:00
David Bomba
64a0248f50
Scaffold Laravel permissions (Client - Entity) (#2602)
* Wired up Bulk Archive / Delete / Restore button with reactivity on checkbox actions

* Scaffold Laravel permissions (Client - Entity)
2019-01-16 20:28:06 +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
0faf91dd5d
Generated Datatable Action Menus (#2590)
* Style Datatable

* Component Actions

* Harvest user permissions from Pivot table

* Pad out permissions

* Client actions

* Fixes for travis

* Client Datatables

* Menu permissions

* Tests for menu permissions

* Action menu

* Implement query builder filter

* Flatten user permissions

* Implement rendering of client action dropdowns

* Generated Action Menus
2019-01-07 22:30:28 +11:00
David Bomba
43342fb98b
Datatables using Vue (#2568)
* Vue DataTables

* Vue Datatables - Pagination

* Sort Vue Tables

* Working on Vue Datatables

* Apply filter to vue table

* Search implementation for vue datatables

* Clean up
2018-12-24 08:45:55 +08: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
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
c72e1f0139
Client Creation (#2533)
* Working on Oauth

* splitting out JS files

* Working on oAuth

*  working on oAuth

* minor fixes

* create client

* create client

* create client

* Working on adding a client
2018-12-02 21:42:06 +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
cdb98ce528
View Composers + JS testing framework (#2521)
* Add Jest testing to travis

* View Composers

* Composers
2018-11-26 15:15:08 +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
6769ade16f
Explicit route model binding (#2498)
* Switch to explicit route model binding
2018-11-12 18:52:20 +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
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
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
ede0668caf
Update ClientController.php 2018-10-29 14:17: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
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
4076a00dae
Multi Auth - Multi DB (#2442)
* Multi Auth / Multi DB cleanup

* Fixes for Multi-DB

* Fixes for Multi auth using Multi DB

* Remove register routes from application
2018-10-15 16:00:48 +11:00
David Bomba
19a836b010
Scaffolding Auth (#2438)
Scaffolding Auth
2018-10-12 22:29:34 +11:00
David Bomba
537b53859f
StyleCI fixes (#2416)
* Env for travis

* Apply fixes from StyleCI (#7)
2018-10-05 21:40:02 +10:00
Hillel Coren
f03dd652e6 Initial commit 2018-10-04 20:10:43 +03:00