1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-11 05:32:39 +01:00
Commit Graph

522 Commits

Author SHA1 Message Date
David Bomba
264d6662e3 set blank object for client settings 2019-10-07 17:43:19 +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
6ea2140578 Remove json validation 2019-10-07 08:13:16 +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
95be70a7b5 Group Settings 2019-10-06 08:24: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
7c69de5ebb validate json fields 2019-10-05 08:15:57 +10:00
David Bomba
2c25f20a25 Force at least 1 product quantity 2019-10-04 21:57:33 +10:00
David Bomba
187fb67275 remove work_ prefix 2019-10-04 21:01:52 +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
724cccacfc Fixes for tests 2019-10-03 21:50:50 +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
3b6fa39d43 Fixes for transformers 2019-10-03 15:42:58 +10:00
David Bomba
9afcc28549 Fixes for company logo output 2019-10-03 15:17:57 +10:00
David Bomba
3e3cde2e1e pdate 2019-10-03 13:23:00 +10:00
David Bomba
fd58aeb856 Company Gateway API 2019-10-03 13:21:24 +10:00
David Bomba
b41966d41e working on company gateway API endpoint 2019-10-03 11:13:25 +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
70d2531ab4 validation rules 2019-10-03 07:53:59 +10:00
David Bomba
0c5202ea8c API Tests for clients 2019-10-02 20:22:10 +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
515b32fd87 Bump to Laravel 6 2019-09-26 20:49:52 +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
8027e72217 Laravel standard error pages 2019-09-25 07:18:41 +10:00
David Bomba
f59b74b01b Refactors for gateways - using keys instead of Pkeys 2019-09-24 21:22:41 +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
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
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
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
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
43dc9158f6 Cleaning up Tests 2019-09-04 22:01:19 +10:00
David Bomba
47cdeef258 Working on building dynamic tables for invoices 2019-09-03 09:00:52 +10:00
David Bomba
e4f33b06ba Saving PDF's to their correct location 2019-08-30 07:44:22 +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
9a1d7d7e49 Clean up validation around how we handle email addresses 2019-08-25 20:43:21 +10:00
David Bomba
bad61e8984 Payment Gateways - padding 2019-08-22 08:34:20 +10:00
David Bomba
e9e12f59af Padding out client dashboard 2019-08-21 14:29:07 +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
3f1fcdda76 Working on client portal 2019-08-12 08:33:17 +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
c50fb68b21 Working on dropzone uploads - generic 2019-08-07 13:07:06 +10:00
David Bomba
f37f28a846 Working on upload avatar - generic 2019-08-07 10:44:38 +10:00
David Bomba
3da6eb69f0 Working on DropZone 2019-08-06 13:31:55 +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
d15d212ad1 Working on select 2 2019-08-05 12:02:32 +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
83f6a88cb3 fixes for tests 2019-07-05 08:36:40 +10:00
David Bomba
5b0cb2a218 Validation rules 2019-07-04 14:31:01 +10:00
David Bomba
accd7ae348 Rules for company update 2019-07-04 14:04:01 +10:00
David Bomba
879d87ea60 Add ability to upload company logo 2019-06-26 13:25:14 +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
26f2bf71d5 Updates a user 2019-06-12 09:38:16 +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
4debbf1f38 Tests for unique users 2019-06-05 15:33:48 +10:00
David Bomba
542a63707a unique email check 2019-06-05 14:06:27 +10:00
David Bomba
671760eda4 Fixes for unique email rule 2019-06-05 10:43:23 +10:00
David Bomba
4dcb047c05 Static helper for installation type 2019-06-04 08:07:57 +10:00
David Bomba
d057903229 Logging 2019-06-03 15:31:20 +10:00
David Bomba
c2791815a7 Tests for File Uploading 2019-06-03 10:28:12 +10:00
David Bomba
ce8d440ec5 fixes for recurring invoice request 2019-05-30 09:58:00 +10:00
David Bomba
494504a2d0 Working on tests for new GeneratesCounterTest 2019-05-27 20:48:52 +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
3c7b2a9417 patch for basic web views 2019-05-22 13:53:11 +10:00
David Bomba
d7fa857f10 patch for basic web views 2019-05-22 13:52:38 +10:00
David Bomba
c8c965384d use correct Cookie dependency 2019-05-22 13:48:25 +10:00
David Bomba
e33273e360 Add new db discovery middleware 2019-05-22 13:46:42 +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
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
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
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
63f8700db1 bump laravel version to 5.8, include new GCS storage library 2019-04-28 15:11:08 +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
6326a3c840 Tuning SQL queries 2019-04-25 17:16:41 +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
2d5fc9e066 Working on tests for Product Route 2019-04-04 09:40:56 +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