Du Peng
5ec541d854
add checkout controller and refactoring cart controller
2022-08-21 19:08:10 +02:00
Du Peng
73a2e328a5
set operator if admin create cart
2022-08-21 15:34:23 +02:00
Du Peng
396248ed2b
manage cart session when user login or logout
2022-08-20 20:49:51 +02:00
Du Peng
ab800a519f
store cart
2022-08-19 20:03:09 +02:00
Du Peng
16288ae2bd
fablab store page
2022-08-16 19:47:27 +02:00
Du Peng
1cef45e3d7
add product stock mouvements
2022-08-08 18:04:14 +02:00
Du Peng
1b605b3265
fix bug: product amount cannot update
2022-08-04 14:02:19 +02:00
Du Peng
f345fc2443
add is_main to product image
2022-08-03 20:16:21 +02:00
Du Peng
fc4fd78843
product files and images upload
2022-08-03 10:25:36 +02:00
Du Peng
5e1436eda4
create/edit product form
2022-08-03 10:18:00 +02:00
Du Peng
1e3e7854b2
Product model/controller
2022-08-03 10:16:36 +02:00
Du Peng
11fc251557
product category update position api
2022-08-03 10:16:11 +02:00
Du Peng
432b60ca9a
store product category create/list/update/delete
2022-08-03 10:16:08 +02:00
Nicolas Florentin
98c7da492d
prevents users enumeration attacks by not giving any info about the validity of the email
2022-07-29 16:02:58 +02:00
Sylvain
bb7eec924c
Usage of the rails logger instead of printing to standard output
2022-07-26 17:27:33 +02:00
Sylvain
2705b9f6bd
(bug) unable to reserve if user's subscription plan is disabled
2022-07-20 17:46:09 +02:00
Sylvain
b243800f5a
(bug) As admin, unable to create a new member ( #374 )
2022-07-19 16:29:28 +02:00
Sylvain
06ee1acea5
(bug) fix slot reservation is considered full
2022-07-19 15:40:28 +02:00
Sylvain
d26e2ae313
(bug) fix various issues due to slots behavior refactoring
2022-07-19 11:32:12 +02:00
Sylvain
6a8c441e85
public calendar endpoint refactoring & testing
2022-07-18 17:19:33 +02:00
Sylvain
b68e47a0ea
refactor shopping_cart/reservation
...
Previsouly, the reservation was expecting parameters like:
slots_attributes: [{start_at: date, end_at: date, availability_id: number}]
Now, the reservation is expecting simpler parameters like:
slots_reservations_attributes:[{slot_id: number}]
2022-07-18 17:18:01 +02:00
Sylvain
37b24a8d2f
refactor slots model
2022-07-18 17:18:01 +02:00
Sylvain
5012912edd
(wip) refactoring Availabilities::AvailabilitiesService and Availabilities::StatusService
2022-07-18 17:18:01 +02:00
Sylvain
b2fd2e1b48
build all slots at reservation creation time
2022-07-18 17:18:00 +02:00
Sylvain
3d566782f2
(bug) OIDC scopes are not saved
2022-07-06 13:16:09 +02:00
Sylvain
1b8282fda4
display reservations credits in the dashboard
2022-06-29 15:35:17 +02:00
Sylvain
bcbd3bfb58
(bug) invalid users are reported in search
2022-06-29 15:35:17 +02:00
Sylvain
6ce762f778
(bug) unable to reserve a space
2022-06-29 15:34:47 +02:00
Sylvain
ea1883e406
factorize front-end API params helper
2022-06-29 15:34:04 +02:00
Du Peng
cc8beb2d03
fix variable name error
2022-06-27 15:23:38 +02:00
Sylvain
d03a34b894
(bug) unable to update the user profile after toggling the organization switch twice
2022-06-22 17:14:19 +02:00
Du Peng
c24aad00c4
check shopping cart items is valid before pay online
2022-06-07 16:55:29 +02:00
Du Peng
ef5d603065
Fix a bug: admins are shown in select member for reservation by admin
2022-06-03 12:05:55 +02:00
Du Peng
c5ba1afe8d
Fix a bug: unable to save user validation if admin click save user profile button after switch user valitation
2022-06-01 10:45:24 +02:00
Du Peng
cecf8126e0
Fix bug: Unable to create plans for all group
2022-05-17 17:38:00 +02:00
Du Peng
78076b7fba
user and admin can edit organization field
2022-05-11 16:57:44 +02:00
Du Peng
798941c349
edit organization custom field in member's dashboard profile
2022-05-11 16:57:44 +02:00
Du Peng
3e34b3c7a7
add user validation required setting, user proof of identity upload and organization custom field
2022-05-11 16:57:44 +02:00
Sylvain
89853d3533
(ui) allow admins to change user password without asking for the current
2022-05-10 10:50:41 +02:00
Sylvain
302c55755e
(ui) admin edit user: use new user-profile-form component
2022-05-10 10:23:43 +02:00
Sylvain
c1bf5bee14
(wip)(ui) refactor user edition form
2022-05-04 14:07:12 +02:00
Sylvain
b3848596bf
(bug) unable to create openid connect provider from the interface
2022-05-04 12:36:31 +02:00
Sylvain
07578b5826
(ui)(api) configure data mapping for openid
2022-05-04 12:28:48 +02:00
Sylvain
c85281b29f
(api) automatically configure the openID response_type
2022-05-04 12:28:48 +02:00
Sylvain
6c46e5ec81
(api) automatically configure some openID parameters: redirect_uri, display, response_mode
2022-05-04 12:28:48 +02:00
Sylvain
5013484104
(ui) add profile edition url for openid
2022-05-04 12:28:31 +02:00
Sylvain
f9e5e7f2a8
(ui) display authorization callback url directly in interface
2022-05-04 12:28:29 +02:00
Sylvain
2c2f8fdcc5
(api) openid provider configuration api
2022-05-04 12:16:38 +02:00
Sylvain
b4e53d2039
(db) table to save OpenID connect configuration
...
Also refactored OAuth2Mapping to allow usage with any types of providers
2022-05-04 12:16:38 +02:00
vincent
3f4714861b
Add description to plan category
2022-05-04 11:16:51 +02:00
Nicolas Florentin
4b30d9f124
Fix a bug: With PayZen, when there was more than one transaction (for ex: 1 failed atempt + 1 successful atemp), the order was not considered PAID because only the first transaction was checked ( https://app.clickup.com/t/28zvhwy )
2022-04-28 13:36:16 +02:00
Sylvain
0c51aff748
(feat) OAuth2 scopes are now configurable from the interface
...
Previously, scopes were supported through OAUTH2_SCOPE since v5.3.1.
BREAKING CHANGE: update your oauth2 provider configuration if you need scopes support
2022-03-22 16:40:09 +01:00
Nicolas Florentin
e2bf482a4a
fix typo "projets" => "projects"
2022-02-25 15:22:14 +01:00
Sylvain
193ee4ffe9
(bug) case-sensitive emails
...
- for sso code sending
- for adminsys configuration
2022-01-18 12:00:23 +01:00
Sylvain
67850a6f9f
(feat) optional sso debug logs according to SSO_DEBUG env var
2022-01-17 15:24:07 +01:00
Sylvain
c031f099a5
Merge branch 'oauth2' into dev
2022-01-17 12:46:07 +01:00
Sylvain
0cffa68919
(bug) error if no username/email was provided by the sso
2022-01-17 12:42:27 +01:00
Sylvain
634da414f8
(feat) When a payment schedule is in error or canceled, ability to re-enable it with another payment method
2022-01-17 12:38:53 +01:00
Sylvain
a91610f530
Optimized multiple DB queries
2022-01-11 16:04:14 +01:00
Sylvain
9922812111
Ability to select "bank transfer" as the payment mean for a payment schedule
2022-01-05 15:58:33 +01:00
Sylvain
e1256ec551
Ability to disable public account creation
2022-01-04 15:27:58 +01:00
Sylvain
effe5c7ba9
optimized the load time of the payment schedules list
...
From now, we no longer retrieve the client_secret directly from the API/list but from a specialized component which ask API/get_item.
This highly decrease the laod time needed to fetch API/list
2022-01-03 11:24:08 +01:00
Sylvain
00b9bce587
export collected VAT by rate
2021-12-29 17:00:54 +01:00
Sylvain
fe96e01b7f
refactor spaces/extended_prices code architecture to match the FM style guide
2021-12-28 11:25:10 +01:00
vincent
bd781a14e9
Add extended price
2021-12-21 17:13:40 +01:00
Sylvain
6091cec82e
api endpoint to create prices
2021-12-21 14:18:03 +01:00
Sylvain
9173bdbcb4
[bug] fix duplicates email on case sensitive matches
2021-12-21 11:20:44 +01:00
Sylvain
d6b30875a4
compute the price based on custom durations
2021-12-20 17:08:14 +01:00
Sylvain
1103c7757b
added debug logs
2021-11-10 13:03:12 +01:00
Sylvain
4e574e513f
show detailed error message in case user was notsaved
2021-11-09 09:43:30 +01:00
Sylvain
ca603f85af
fix uninitialized constant PayZen::Service
2021-10-22 15:12:25 +02:00
Sylvain
9c55b9d61f
[bug] incorrect behavior for the setting 'email confirmation required'
...
- when enabled: the user was still logged-in in the backend (F5 and he was logged in the frontend)
- when disabled: the user was not logged in the frontend and received a message to confirm his/her email
2021-10-21 15:07:18 +02:00
Sylvain
d0eebddcee
[bug] payzen amount for non 2-decimals currencies
2021-10-18 12:14:51 +02:00
Sylvain
4c56dffc04
remove deprecated code and endpoints
2021-10-18 10:15:48 +02:00
Sylvain
fd39eaf2f1
fix renew subscription API
...
TODO:
- remove old endpoints
- bug in UI (start date invalid)
- fix tests
- payzen
2021-10-15 17:31:01 +02:00
Sylvain
3349cc3a2d
fix test on paymentSchedules
2021-10-15 11:55:30 +02:00
Sylvain
315e899540
[WIP] fix tests
2021-10-14 18:20:10 +02:00
Sylvain
17a0baac7e
refactored free subscription extending
2021-10-12 14:07:35 +02:00
Sylvain
e646eb8cb5
extend subscription UI
2021-10-08 19:14:47 +02:00
Sylvain
676f921d66
fix some errors about stp subscription refacto + improved error handling
2021-10-07 17:07:46 +02:00
Sylvain
3663f8ab86
full stripe subscription code refacto
...
TODO: test
2021-10-06 17:09:35 +02:00
Sylvain
d494b012d4
[ongoing] refactoring stripe subscription
2021-10-06 09:42:58 +02:00
Du Peng
2973dec6a7
rewrite payment schedule workflow by stripe
2021-09-08 18:57:10 +02:00
Sylvain
19717d1351
use localPaymentModal in cart directive
2021-06-30 16:35:25 +02:00
Sylvain
10aaf0042c
integration of packs-summary
2021-06-29 15:59:57 +02:00
Sylvain
baf41588d3
packs summary component
2021-06-29 11:14:36 +02:00
Sylvain
4e030300cb
[bug] unable to filter by multiple user IDs in OpenAPI
...
Also: tests for OpenAPI user trainings
2021-06-28 10:17:26 +02:00
Sylvain
4126e05d4a
Merge branch 'dev' into prepaid
2021-06-28 09:58:07 +02:00
Sylvain
66ba8e565c
Full test coverage of the OpenAPI
...
Also: fix related bugs
2021-06-28 09:50:37 +02:00
Sylvain
f16cbc44ff
WIP: buy pack modal
2021-06-25 17:24:34 +02:00
Sylvain
26f98f30f6
edit pack modal
2021-06-25 09:56:39 +02:00
Sylvain
5d3391cd44
move new pack to a separate component
2021-06-25 09:28:05 +02:00
Sylvain
0345d22582
delete & disable packs
2021-06-24 17:59:05 +02:00
Sylvain
1a65b97653
Merge branch 'dev' into prepaid
2021-06-24 17:15:17 +02:00
Sylvain
522df1ccd7
[bug] most OpenAPI endpoints were dysfunctional
2021-06-24 12:36:16 +02:00
Sylvain
d7ba83f6a0
WIP: migrate machine pricing edition interface to react
2021-06-22 11:13:44 +02:00
Sylvain
d54f30e048
WIP: interface to configure packs
2021-06-21 17:39:48 +02:00
Sylvain
a61a2e96d8
[bug] unable to export members list ( #287 )
2021-06-21 12:08:23 +02:00
Sylvain
f91ee24639
[bug] the training validation modal shows cancelled trainings
2021-06-15 10:18:14 +02:00
Sylvain
569be57a1f
[bug] a message tells that creating a new plan fails, but it worked
2021-06-14 16:53:52 +02:00
Sylvain
ec301ba07e
[bug] unable to list user's payment schedules in the dashboard
2021-06-14 14:40:54 +02:00
Sylvain
0c72cde67b
[bug] unable to process stripe payments with 3DS authentication
...
>
> Backported from v4.7.13:
> 9b90ff0482
2021-06-11 16:14:30 +02:00
Sylvain
e184bf3d3c
filter plans y duration
2021-06-10 14:06:53 +02:00
Sylvain
a416f8c7ae
transactional bulk update + better error handling while configuring the payment gateway
2021-06-10 10:39:42 +02:00
Sylvain
1f07f4c2fb
fix data migration
2021-06-09 16:42:06 +02:00
Sylvain
05882b3743
display list of plans grouped by category
2021-06-09 13:03:58 +02:00
Sylvain
4ca16c2688
associate plan w/ category
2021-06-08 17:26:40 +02:00
Sylvain
ae039cdd0c
ordering categories
2021-06-08 17:00:52 +02:00
Sylvain
e1e446ab3f
API+ interface to CRUD plan categories
2021-06-08 16:43:43 +02:00
Sylvain
68f64cfc5c
update the card for payment schedules
2021-06-04 18:26:20 +02:00
Sylvain
89adcf1a9d
WIP: pay item
2021-06-03 16:25:42 +02:00
Sylvain
431ea28448
WIP: payzen recurring payments
2021-06-01 12:20:02 +02:00
Sylvain
d942d46632
WIP: migration to object[]
...
TODO: fix running tests, fix front-end
2021-05-28 17:34:20 +02:00
Sylvain
5f5ec8dbb6
remove references to Invoice.invoiced
2021-05-27 15:58:55 +02:00
Sylvain
c79078c8e1
Merge branch 'dev' into payzen
2021-05-26 14:00:51 +02:00
Sylvain
413bb57c38
[bug] zero-decimal currencies w/ stripe
2021-05-26 13:38:16 +02:00
Sylvain
c7a59c8cb7
WIP: refactoring to singularize the booking process
...
We need to achieve only one process for all booking, not one for subscription, one for reservations, etc.
Moreover we must store one object per invoice_item/payment_schedule_object and stop using Invoice.invoiced or PaymentSchedule.scheduled
2021-05-21 18:25:18 +02:00
Sylvain
66f81a975e
WIP: array of items
...
Migration from cart_items:{reservation:{}, subscription:{}, ...}
to cart_items:{items:[{reservation:{}, ...}], ...}
2021-05-19 18:12:52 +02:00
Sylvain
6bcd9f6fef
Merge branch 'dev' into payzen
2021-05-17 15:07:41 +02:00
Sylvain
82260d8c62
[bug] invalid currency in notifications for locales with region
2021-05-14 11:57:52 +02:00
Sylvain
7ac119d4cf
[bug] invoices are not generated in test/development if the configured locale is composed
...
Eg. If locale is fr-CA, it was crashing. If locale was only fr, is was working.
Now, composed locales print the watermark using the base locale and
hour_minute format is fetched from the base locale
2021-05-12 17:23:42 +02:00
Sylvain
390f62fd41
[bug] the count of successfully updated events was not correct
2021-05-12 15:53:32 +02:00
Sylvain
e3187460ea
create payment schedules on payzen
...
Also: make generic the creation of products on remote gateway
Also: make generic the call to gateway specific actions
2021-04-30 16:07:19 +02:00
Sylvain
5f47624d4e
WIP: create payment schedule w/ payzen
2021-04-29 17:10:02 +02:00
Sylvain
23e38238c8
fix payment on site modal in case of payment schedule
2021-04-28 17:25:42 +02:00
Sylvain
3dc686840c
front adaptation to cartItems
...
fix payzen customer cart creation
TODO: refactor the payOnSite modals
2021-04-27 17:18:20 +02:00
Sylvain
e75259734c
fix test Subscriptions::CreateAsAdminTest
...
user_id must be read from [:cart_items][:customer_id]
2021-04-27 13:51:23 +02:00
Sylvain
1bf091081b
fix test Reservations::CreateAsAdminTest
...
create subscription from POST api/reservation if the parameter subscription.plan_id is provided
+ cart_items are not wrapped in a reservation object
2021-04-26 18:27:35 +02:00
Sylvain
d5f7bd7abd
fix test Reservations::CreateTest
...
create subscription w/ the reservation if applicable
+ refactor payments_controller to factorize the on_*_success codes
2021-04-26 17:42:03 +02:00
Sylvain
b9e8c8867c
fix running test renew_as_admin_test
2021-04-26 11:40:26 +02:00
Sylvain
bc6ef8ef50
WIP: move backend code base to new architecture
...
- from stripe only to payment gateway abstract
- from reservation params style to unified cart_items
TODO: fix not passing tests,
subscriptions/renew_as_admin_test.rb fails because InvoiceItem(9).amount = nil
2021-04-23 17:54:59 +02:00
Sylvain
94cbcd3236
refactor to use the new price computation system based on ShoppingCart
2021-04-23 12:52:06 +02:00
Sylvain
e456ddc7c9
WIP: refactor the price computation system
2021-04-22 19:24:08 +02:00
Sylvain
26dfbef5e1
WIP: refactor models to use payment_gateway_objects
2021-04-21 17:38:06 +02:00
Sylvain
434ec9c205
refactored Invoices to get rid of stripe references
2021-04-20 17:22:53 +02:00
Sylvain
a897d37b2d
improved footprint debug process
2021-04-16 16:03:10 +02:00
Sylvain
1bbb8c3965
move the architecture from stripe-only to gateway-generic
2021-04-15 17:01:52 +02:00
Sylvain
ddd1ac52d6
save reservation|subscription to db after payment
2021-04-14 17:56:10 +02:00
Sylvain
4d3ead310d
do not run StripeWorker tasks is the gateway is not enabled
2021-04-14 12:18:37 +02:00
Sylvain
4e512dda45
validate the payment server side
2021-04-13 17:16:05 +02:00
Sylvain
ef7dcd37d8
retreive the formToken from PZ API
2021-04-12 12:16:12 +02:00
Sylvain
fd5c3a87ce
rename /api/payment to /api/stripe
...
other payment gateways will have their own separate endpoints
2021-04-12 10:45:41 +02:00
Sylvain
23032c405b
WIP: create the formToken server-side
2021-04-09 17:17:58 +02:00
Sylvain
422acdd162
safely configure and test payzen keys
2021-04-02 17:16:27 +02:00
Sylvain
30830b56fd
PayZen REST API wrapper ruby + live test keys while configuring
2021-04-01 18:20:26 +02:00
Sylvain
c25e54a6af
save & retreive stripe settings
2021-03-30 15:56:36 +02:00
Sylvain
7099f1f317
address required
...
- Ability to set the address as a mandatory field
- The address is new requested when creating an account
- The profile completion page is less fuzzy for people landing on it without enabled SSO
2021-03-23 11:49:05 +01:00
Sylvain
a5b3728f8c
[bug] various fixes on accouting exports
...
- accounting exports may ignore some invoices for the first and last days
- file caching for accounring exports is not used
2021-03-22 17:42:54 +01:00
Sylvain
a74c5d4c95
WIP: plan description
2021-03-03 17:21:11 +01:00
Sylvain
120c9144bb
[security] restrict allowed keys when creating/updating credits
2021-02-24 11:11:18 +01:00