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

454 Commits

Author SHA1 Message Date
David Bomba
6fb9ba89ee Woring on invoice is_amount_discounts 2019-10-17 14:14:17 +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
b90122443f
Fixes for incorrect payment gateway meta data. (#2992)
* Fixes for staging

* Fixes for gateway fields

* fix for null design
2019-10-16 08:35:32 +11:00
David Bomba
c43eb96333
Fixes for staging (#2990) 2019-10-15 21:36:51 +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
9cc31195f7 fixes for storing invoice 2019-10-11 09:11:36 +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
fb150cc1b0 Documentation for SettingsSaver trait 2019-10-10 13:24:19 +11:00
David Bomba
e56aac5e73 Implement type checking for settings objects 2019-10-10 08:36:50 +11:00
David Bomba
056b2cbdb7 Tests for company settings 2019-10-09 23:21:21 +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
faa5a05ac1 Validation rules for update client 2019-10-08 22:14:23 +11:00
David Bomba
accbbcf67b Flash message 2019-10-08 12:03:40 +10:00
David Bomba
091673a7ac Payment edge cases 2019-10-08 09:05:41 +10:00
David Bomba
db3ccaf4bc validation fixes 2019-10-08 06:49:16 +10:00
David Bomba
b8515e26b0 Upload company logo to client settings 2019-10-07 22:05:06 +11:00
David Bomba
fda6ec33fd Company Settings OpenAPI 2019-10-07 21:21:02 +11:00
David Bomba
95be70a7b5 Group Settings 2019-10-06 08:24:46 +11:00
David Bomba
eca7452de3 Add additional tax rate 3 into the system 2019-10-05 12:28:23 +10:00
David Bomba
d39d837895 Fixes for tests 2019-10-05 11:58:33 +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
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
24075072df refactor for pushing company meta data into settings 2019-10-04 22:37:40 +10:00
David Bomba
1f1ffd3240 transform datetimes to timestamps 2019-10-04 21:54:03 +10:00
David Bomba
187fb67275 remove work_ prefix 2019-10-04 21:01:52 +10:00
David Bomba
3900529e83 Format dates for client 2019-10-04 08:06:38 +10:00
David Bomba
ae02953a8f Client portal client screen 2019-10-04 07:51:54 +10:00
David Bomba
724cccacfc Fixes for tests 2019-10-03 21:50:50 +10:00
David Bomba
16cd98980b Company Gateway Tests 2019-10-03 20:59:19 +10:00
David Bomba
9afcc28549 Fixes for company logo output 2019-10-03 15:17:57 +10:00
David Bomba
b41966d41e working on company gateway API endpoint 2019-10-03 11:13:25 +10:00
David Bomba
0c5202ea8c API Tests for clients 2019-10-02 20:22:10 +10:00
David Bomba
a6579e43df Transformer fixes 2019-10-02 19:04:27 +10:00
David Bomba
b243ce4643 Log system events 2019-10-02 13:00:51 +10:00
David Bomba
a57de08178 Working on partial invoice payments 2019-10-02 08:44:13 +10:00
David Bomba
78ae24df46 Balances with company ledger 2019-10-01 19:59:32 +10:00
David Bomba
2d5d9b816b Payment Events 2019-10-01 11:56:48 +10:00
David Bomba
441d52523d Add activities to API 2019-09-27 14:31:13 +10:00
David Bomba
1778e63421 cast created_at/updated_at/deleted_at to timestamps 2019-09-26 08:27:26 +10:00
David Bomba
362f197fbb Store payment after invoice is confirmed paid 2019-09-25 15:55:52 +10:00
David Bomba
46602a21c5 Stripe payments 2019-09-25 12:07:33 +10:00
David Bomba
f59b74b01b Refactors for gateways - using keys instead of Pkeys 2019-09-24 21:22:41 +10:00
David Bomba
1e1be26980 Invitation routing 2019-09-23 15:59:01 +10:00
David Bomba
d5ec342764 Nuances of client contact invitations 2019-09-23 13:22:24 +10:00
David Bomba
a9f4a5feaf add group settings to company transformer: 2019-09-22 20:41:43 +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
4aa781fb03 Working on settings - safe guards to updating the settings object 2019-09-21 14:09:25 +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
cc7ee120d5 Fixes for test
s
2019-09-19 16:22:32 +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
a331368383 List view for payment methods 2019-09-18 12:39:53 +10:00
David Bomba
70d146333b Casts 2019-09-17 20:27:48 +10:00
David Bomba
c79211c4f4 Mitigate nulls in database 2019-09-17 15:42:10 +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
9431abb300 Working on payment flow - client side 2019-09-12 16:10:21 +10:00
David Bomba
6368ab10f7 Doc Blocks for settings 2019-09-12 13:23:44 +10:00
David Bomba
b7920a072a Set all ID's to strings for consistency 2019-09-12 11:28:41 +10:00
David Bomba
6544ca2977 Dusk UI tests 2019-09-11 21:04:03 +10:00
David Bomba
0d4d1041f5 Refactor of client settings and cascading settings Client > Group > Company finished 2019-09-11 16:00:23 +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
6561602fef fixes for tests 2019-09-10 20:25:29 +10:00
David Bomba
f98f2902dc Refactor company gateways 2019-09-10 19:35:18 +10:00
David Bomba
1f624e28bc Refactor Group level settings 2019-09-10 12:30:43 +10:00
David Bomba
5f7a0b96d7 Tests tests and more tests 2019-09-09 21:05:53 +10:00
David Bomba
b853dd80ed Working on payment methods 2019-09-09 16:25:33 +10:00
David Bomba
2ffca37e74 Working on gateways and gateway fees 2019-09-09 14:54:39 +10:00
David Bomba
c7512f1572 Working on gateway fees 2019-09-09 13:27:16 +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
f8734db1b6 Working on Stripe payment driver 2019-09-05 22:42:26 +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
43dc9158f6 Cleaning up Tests 2019-09-04 22:01:19 +10:00
David Bomba
bc7e09b924 Working on tests for line item taxes 2019-09-04 15:10:10 +10:00
David Bomba
cd40ba95e6 Invoice templates 2019-09-04 11:45:53 +10:00
David Bomba
e60bcf2d23 Dynamic invoice tables for PDF generation 2019-09-04 09:16:23 +10:00
David Bomba
47cdeef258 Working on building dynamic tables for invoices 2019-09-03 09:00:52 +10:00
David Bomba
d99443806a working on invoice labels and template values 2019-09-02 15:08:26 +10:00
David Bomba
019cc09dbb Working on replacing variables for templates 2019-08-30 16:16:39 +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
2c65a6305c Render PDF in HTML 2019-08-29 14:58:04 +10:00
David Bomba
2704c179c7 Presenter variables for invoice 2019-08-29 14:13:16 +10:00
David Bomba
13f21710ce Presenter variables for invoice 2019-08-29 14:12:09 +10:00
David Bomba
668e01b814 Stubbing invoice design templates 2019-08-29 14:07:04 +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
d02e62e46f Padding out Company Gateways - Default gateways per company and per client 2019-08-22 11:58:42 +10:00
David Bomba
cc1997b390 Gateway Types 2019-08-22 10:25:30 +10:00
David Bomba
bad61e8984 Payment Gateways - padding 2019-08-22 08:34:20 +10:00
David Bomba
b9605925e3 Show company and client details in portal 2019-08-22 07:46:11 +10:00
David Bomba
e9e12f59af Padding out client dashboard 2019-08-21 14:29:07 +10:00
David Bomba
f3d3385678 Fix badgers 2019-08-20 08:29:19 +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
dc65ede956 Remove links to multidatabaseuserprovider 2019-08-14 15:40:22 +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
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
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
1823a23b2d view composers for client portal 2019-07-22 13:54:34 +10:00
David Bomba
f63803fe7b Finished - Client auth + password reset + mailables 2019-07-18 09:45:18 +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
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
548c9b31d0 fixes for tests 2019-07-03 19:58:34 +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
879d87ea60 Add ability to upload company logo 2019-06-26 13:25:14 +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
a793100f79 Working on Company CRUD 2019-06-17 10:15:42 +10:00
David Bomba
544e59bbba Transform id keys from Bulk routes 2019-06-12 14:22:05 +10:00
David Bomba
79907e6206 Refactor the way we harvest the company entity 2019-06-12 09:15:17 +10:00
David Bomba
f4ae84e954 Re work the way we harvest a user token 2019-06-11 13:20:23 +10:00
David Bomba
e458ec6331 Update user table on access 2019-06-04 07:46:46 +10:00
David Bomba
d057903229 Logging 2019-06-03 15:31:20 +10:00
David Bomba
ea9430f691 Transformers for invitesd 2019-06-02 19:57:12 +10:00
David Bomba
32ca69bc52 Working on invitationsg 2019-05-29 21:15:42 +10:00
David Bomba
866111cbbb Working on Invoice Invitations 2019-05-29 14:33:53 +10:00
David Bomba
494504a2d0 Working on tests for new GeneratesCounterTest 2019-05-27 20:48:52 +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
474d99505e working on sending recurring invoices 2019-05-23 16:15:06 +10:00
David Bomba
2549da4e6f Working on Sending Recurring invoices 2019-05-23 15:08:31 +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
c236925e6d Fix Invoice Create routes 2019-05-16 08:26:21 +10:00
David Bomba
92b46d5ed8 tests 2019-05-15 19:20:52 +10:00
David Bomba
5467fc64b1 Invoice activity listeners 2019-05-15 15:03:18 +10:00
David Bomba
139008ed14 Working on Company ledger 2019-05-15 14:47:07 +10:00
David Bomba
924d5b5f7b Working on tests for Mark as Paid (invoice) 2019-05-14 14:05:05 +10:00
David Bomba
ad76169b6c Working on invoice payments 2019-05-13 16:18:46 +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
ca71819086 Change custom dateFormat until laravel has better support for microtime date timestmaps 2019-05-07 20:48:43 +10:00
David Bomba
44a57b2679 Clean up models 2019-05-07 15:33:20 +10:00
David Bomba
e8d92f627d Make all timestamps microtime stamps 2019-05-07 15:08:10 +10:00
David Bomba
6333a2e8c5 Company Ledger 2019-05-07 15:06:42 +10:00
David Bomba
10e0c8a05f Recurring Quotes 2019-05-05 10:49:01 +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
7b62c50f90 Fix Recurring implicit binding 2019-05-03 11:30:08 +10:00
David Bomba
c35f9fbe04 recurring invoices 2019-05-03 08:29:04 +10:00
David Bomba
d9324697c0 Quote Tests 2019-05-02 21:24:00 +10:00
David Bomba
0102d1a22b Getters and Setters on Invoice model 2019-05-02 15:47:16 +10:00
David Bomba
599ff31f9d Working on more tests for generates numbers 2019-05-01 16:09:55 +10:00
David Bomba
87bae37350 Implement more testing on generates numbers 2019-05-01 13:49:23 +10:00
David Bomba
71d00c1aeb Implement more testing on generates numbers 2019-05-01 13:33:04 +10:00
David Bomba
568fbdf6c8 Use Company ScopeS 2019-05-01 12:23:13 +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
50a43720d1 Create settings getter on Client Model 2019-04-29 10:54:26 +10:00
David Bomba
cc4032ef3a prototype document upload class 2019-04-28 22:23:22 +10:00
David Bomba
a54fd4b931 Upload a file 2019-04-28 20:25:18 +10:00
David Bomba
f958effb81 Documents 2019-04-28 15:31:32 +10:00
David Bomba
2cfcc35f70 Fire events for User 2019-04-25 21:33:03 +10:00
David Bomba
e0da0c14a8 User event-listener pairs 2019-04-25 20:21:07 +10:00
David Bomba
6326a3c840 Tuning SQL queries 2019-04-25 17:16:41 +10:00
David Bomba
e37c6912b1 Refactor for invoice calculations, implementing testing for Invoice Invitation creation 2019-04-24 15:18:48 +10:00
David Bomba
86d123ff9a Working on Invitations 2019-04-24 10:22:02 +10:00
David Bomba
13e859bcea Invoice to Quote factory 2019-04-23 22:22:13 +10:00
David Bomba
706625e83f Working on invoice actions 2019-04-23 14:16:41 +10:00
David Bomba
ab07513e3d User Listener 2019-04-22 09:15:07 +10:00
David Bomba
2545935d31 Wiring up Activities table and events 2019-04-21 22:24:26 +10:00
David Bomba
9790ed17f5 Working on loggin activities 2019-04-20 22:09:40 +10:00
David Bomba
c9fcc465ff Working on activities 2019-04-20 11:54:11 +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
1f630eb119 app/Filters/InvoiceFilters.php 2019-04-04 12:38:17 +11:00
David Bomba
4620cd7640 Invoice Factory and Quote Model 2019-04-04 10:30:49 +11:00
David Bomba
931ea9634c Invoice Factory and Repo 2019-04-04 10:17:15 +11:00
David Bomba
39617644ad Save a product 2019-04-03 13:34:28 +11:00
David Bomba
0f19056b8f Obfuscate primary ID 2019-04-03 11:09:22 +11:00
David Bomba
b25f2b72a0 Change to firstOrFail() for route model binding 2019-04-02 17:43:17 +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
caf653ed69 Force DB to be set only on company table 2019-03-28 09:21:28 +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
ea5f045509 Setting up for tests 2019-03-26 15:46:08 +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
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
545a8df362 DocBlocks 2019-01-27 10:22:57 +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
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
feafbd9826
User Settings (#2601)
* Datamapping JSON Settings

*  JSON Mapping

* User Setting Defaults

* Testing Json Mapper

* Implemented User Settings - hydrated from JSON format
2019-01-16 09:00:25 +11: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
f9ea784d63
Module relationships (#2556)
* Fix for wrong contact being deleted

* dynamically load module relationships
2018-12-16 00:04:46 +11:00
David Bomba
95f1d24b8f
Access module relations from parent (#2553)
* Refactor JS directory structure

* Access Module relations from Parent entity
2018-12-13 22:01:33 +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
4abe61f493
Fix for tests, set return types (#2524)
* View composers

* Saving client and contacts

*  saving client and contacts

* update client job

* unique emails

* fix for tests
2018-11-27 18:24:26 +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
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
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
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
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
f42024f84a
Migrations + Translations + POPO (#2446) 2018-10-15 23:40:34 +11:00
David Bomba
275be96d4f
Switch Multi-DB to Eloquent driver (#37) (#2443)
Switch Multi-DB to Eloquent driver
2018-10-15 20:06:57 +11:00