1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-13 23:48:55 +01:00
Commit Graph

948 Commits

Author SHA1 Message Date
Sylvain
0e35616710 (ui) openid connect configuration interface 2022-04-13 15:50:33 +02:00
Sylvain
c3f7249242 (ui) display authorization callback url directly in interface 2022-04-12 16:34:44 +02:00
Sylvain
9191e1f9cd (bug) validate oauth2 providers have User.uid mapped 2022-04-12 10:25:48 +02:00
Sylvain
d2c90f4066 (api) validate auth providers data
+ remove legacy code
2022-04-11 17:27:56 +02:00
Sylvain
f68c8a492e WIP: front-end form for openid configuration 2022-04-04 16:25:17 +02:00
Sylvain
08ce18d93f (db) distringuish between oid client configuration and client_auth_method 2022-04-04 16:24:27 +02:00
Sylvain
d4be62d0b8 (db) add profile_url to OpenIdConnectProvider 2022-04-04 16:24:27 +02:00
Sylvain
bd68c5e7e8 (authentication) configure devise/omniauth to use the OpenIdConnect configuration 2022-04-04 16:24:27 +02:00
Sylvain
8495e2a7a0 (db) table to save OpenID connect configuration
Also refactored OAuth2Mapping to allow usage with any types of providers
2022-04-04 16:24:27 +02:00
Du Peng
58f4ea4c15 Fix a bug: unable to set user's invoicing profile names and email if active address required in create user form 2022-03-29 17:08:35 +02:00
Sylvain
2fcda8a0ce (feature) Prepaid-packs purchases are exported to the accounting CSV file 2022-03-23 13:14:34 +01:00
Sylvain
51a2bed16c (bug) prepaid-packs purchases are reported as subscriptions in the statistics 2022-03-23 12:35:02 +01:00
Sylvain
f4395c88b9 (feat) google analytics V4 2022-03-22 11:27:18 +01:00
Sylvain
36d85c0cf7 (bug) unable to delete an administrator who had closed an accounting period 2022-03-16 17:10:27 +01:00
Nicolas Florentin
e37cde2f0d removes dead code about OpenAPI (open_api_calls_count_tracings) 2022-02-25 15:39:56 +01:00
Sylvain
a46e3ae783 (bug) prepaid-packs without expiration date do not work 2022-01-18 17:12:19 +01:00
Sylvain
e4a0798b8a (bug) statistics not built
for instances with plans created before v4.3.3, the StatisticType.key does not match Plan.duration because of a behavior change in rails framework. (v4.3.3 introduces a framework upgrade)
2022-01-18 14:01:34 +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
9f7c77144a (bug) unable to rebuild the PDF for invoices without subscriptions 2022-01-12 14:58:57 +01:00
Sylvain
a38d3e31b1 use explicit payment method for check in paymentSchedules and do not include the payment method in the footprint 2022-01-11 16:15:43 +01:00
Sylvain
a91610f530 Optimized multiple DB queries 2022-01-11 16:04:14 +01:00
Sylvain
051b56b72f send notifications on payment schedules error/canceled by gateway 2022-01-11 12:37:06 +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
b00bf958cc [bug] extended_prices_in_same_day apply the extended prices to each days 2021-12-29 22:07:28 +01:00
Sylvain
00b9bce587 export collected VAT by rate 2021-12-29 17:00:54 +01:00
Sylvain
44853930ed WIP: improve VatHistoryService 2021-12-28 19:42:04 +01:00
Du Peng
d52b8bde06 fix bug: accounting period export 2021-12-28 13:45:29 +01:00
Du Peng
c5211e98e3 generate invoice with multi vat 2021-12-28 13:45:28 +01:00
Du Peng
5e8c90458b vat history service receive invoice item param 2021-12-28 13:45:28 +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
c3cbc26a1e Merge branch 'spaces_multiprices_front' into spaces_multiprices 2021-12-21 17:14:22 +01:00
vincent
bd781a14e9 Add extended price 2021-12-21 17:13:40 +01:00
Sylvain
ffb0f3e19e ability to limit extended prices to slots in the same day 2021-12-21 16:32:02 +01:00
Sylvain
2d807e6c94 improved slot price calculation 2021-12-21 15:30:08 +01:00
Sylvain
2b834045ef improve price calculation 2021-12-21 11:14:09 +01:00
Sylvain
90b1e98938 fix unable to link address from sso 2021-12-21 10:42:59 +01:00
Sylvain
d6b30875a4 compute the price based on custom durations 2021-12-20 17:08:14 +01:00
Sylvain
5ebc1017d2 save prices duration in db 2021-12-20 15:47:57 +01:00
Sylvain
3fb9850786 [bug] unable to bind sso to Profile.bithday or Profile.gender 2021-12-20 14:07:25 +01:00
Sylvain
587beb01ab fix user import from sso
A bug was introduced by detailed debug logs
2021-12-20 13:41:40 +01:00
Sylvain
0f57e1081f [bug] unable to create a plan 2021-11-10 17:06:21 +01:00
Sylvain
1103c7757b added debug logs 2021-11-10 13:03:12 +01:00
Sylvain
840c536c75 Ability to configure data sources for preventing booking on overlapping slots 2021-10-22 14:50:02 +02:00
Sylvain
36086f93df [WIP] ability to select categories of slots for computing overlapping slots 2021-10-21 18:09:36 +02:00
Sylvain
a51dec9c72 removed ourdated comment 2021-10-21 15:11:47 +02:00
Sylvain
bbf512f674 validate birthday in past 2021-10-21 09:29:29 +02:00
Sylvain
e9740ebf69 validate birth date must be in the past 2021-10-20 17:31:30 +02:00
Sylvain
f250f58317 fix subscription renewal tests 2021-10-18 11:47:28 +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
2b088ff035 Merge branch 'extend_subscription' into dev 2021-10-07 18:04:38 +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
Du Peng
a9f431a6a2 fix bug: offer and extends subscription 2021-10-06 08:56:16 +02:00
Du Peng
235fd2e58a Merge branch 'buy_pack_for_plan_option' into dev 2021-09-21 18:01:54 +02:00
Du Peng
1c54e54c17 use plant.base_name instands of plan.name 2021-09-21 18:00:48 +02:00
Du Peng
f2dd1bbcd2 add an option Subscription valid for purchase and use of a prepaid pack 2021-09-20 19:43:05 +02:00
Du Peng
5d8a1367a6 update test 2021-09-13 14:25:30 +02:00
Du Peng
6b763cc1c9 improve code for stripe subscription payment 2021-09-10 15:19:04 +02:00
Du Peng
2973dec6a7 rewrite payment schedule workflow by stripe 2021-09-08 18:57:10 +02:00
Sylvain
920a97f40f fix computing reservation price 2021-07-02 15:45:52 +02:00
Sylvain
02870659e0 [bug] prepaid hours not used if bought slot is longer than remaining prepaid time 2021-07-02 12:39:34 +02:00
Sylvain
6c326c7209 compute price according to prepaid hours
Also: handle prepaid hours decreasing when used
2021-06-30 10:53:05 +02:00
Sylvain
9c6a7df0bf WIP: compute price including prepaid packs 2021-06-29 16:56:40 +02:00
Sylvain
baf41588d3 packs summary component 2021-06-29 11:14:36 +02:00
Sylvain
1aad4891c1 buy prepaid-pack a hours from modal 2021-06-28 18:17:11 +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
d54f30e048 WIP: interface to configure packs 2021-06-21 17:39:48 +02:00
Sylvain
7ac60f6ef3 data architecture of prepaid-packs 2021-06-21 14:58:49 +02:00
Sylvain
2b0130c6be Merge branch 'dev' into prepaid 2021-06-21 11:36:31 +02:00
Sylvain
263b69dc8b [bug] deleting a coupon displays an error message 2021-06-18 17:40:06 +02:00
Sylvain
99792e8610 WIP: migrate machine card to react 2021-06-15 17:34:12 +02:00
Sylvain
11579fede4 ability to disable the public agenda 2021-06-15 11:57:43 +02:00
Sylvain
27ac345588 remove reference to stripe in user creation workflow 2021-06-14 15:14:14 +02:00
Sylvain
71775378e8 include payment schedules in accounting archives 2021-06-10 11:36:32 +02:00
Sylvain
a416f8c7ae transactional bulk update + better error handling while configuring the payment gateway 2021-06-10 10:39:42 +02:00
Sylvain
13fae70277 test payzen endpoints 2021-06-09 18:48:51 +02:00
Sylvain
1f07f4c2fb fix data migration 2021-06-09 16:42:06 +02:00
Sylvain
e1e446ab3f API+ interface to CRUD plan categories 2021-06-08 16:43:43 +02:00
Sylvain
6af425d272 fix Avoir mode by card 2021-06-07 09:18:11 +02:00
Sylvain
68f64cfc5c update the card for payment schedules 2021-06-04 18:26:20 +02:00
Sylvain
dc0a75e52d verify each deadlines on payzen for payment schedules 2021-06-03 12:22:37 +02:00
Sylvain
4e109f7edb retrieve gateway objects with multiple ids 2021-06-03 09:48:21 +02:00
Sylvain
87cd41794e WIP: payzen subscription
TODO: retreive the payzen subscription from PayZen::Item
2021-06-02 20:07:53 +02:00
Sylvain
431ea28448 WIP: payzen recurring payments 2021-06-01 12:20:02 +02:00
Sylvain
d0011a10f0 check for slots restricted to subscribers at cart level 2021-05-31 15:39:56 +02:00
Sylvain
db58ee28c0 migration to object[]
TODO: fix invoices checksums
2021-05-31 11:52:53 +02:00
Sylvain
d942d46632 WIP: migration to object[]
TODO: fix running tests, fix front-end
2021-05-28 17:34:20 +02:00
Sylvain
6cd74ac33e remove references to PaymentSchedule.scheduled 2021-05-27 16:11:23 +02:00
Sylvain
5f5ec8dbb6 remove references to Invoice.invoiced 2021-05-27 15:58:55 +02:00
Sylvain
13f50c0e33 remove references to WalletService.transactable 2021-05-27 13:43:54 +02:00
Sylvain
6b90e73195 migrate database to object[] to store multiple boughts items 2021-05-25 17:28:35 +02:00
Sylvain
b938232c19 Merge branch 'dev' into payzen 2021-05-25 14:06:30 +02:00
Sylvain
ecf80b0591 ability to set invoices as erroneous 2021-05-24 16:34:27 +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
b151802923 WIP: fix invoices without invoiced_id
TODO: fix datetime parsing
2021-05-21 18:21:24 +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
bf2407467b [bug] unable to sort invoices by date
This is a workaround. The real issue is that some invoices does not have the invoiced_id data for Reservation. This is likely due to the fact that invoices are created and saved before the reservation is saved (so they don't have an ID).

@see app/services/reservations/reserve.rb#34
2021-05-17 12:34:12 +02:00
Sylvain
0992999a32 [bug] some invoices does not have the name of the user 2021-05-14 17:07:38 +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
aaf36dcc0a reserve events w/ payzen
we cannot use the <cart> directive because the layout is too much different
2021-04-29 16:29:35 +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
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
da372cf8ad fix test Events::AsUserTest
the event price calculalation was using a variable not reinitialized
2021-04-26 16:38:00 +02:00
Sylvain
53e9a1c4f2 fix running test create_as_admin_test
- do not create an empty payment gateway object if not needed
2021-04-26 12:00:07 +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
4ffd357841 WIP: migrate stripe ids in DB 2021-04-16 12:25:48 +02:00
Sylvain
343b2f7d23 refactor code related to archiving 2021-04-16 10:34:02 +02:00
Sylvain
07ea6e8c69 renamed SUPERADMIN_EMAIL to ADMINSYS_EMAIL
The previous was too much subject to confusions
2021-04-14 15:04:41 +02:00
Sylvain
4e512dda45 validate the payment server side 2021-04-13 17:16:05 +02:00
Sylvain
67d0ce24b4 set payzen currency
also: refactored the comments in the react components to fit high quality
2021-04-07 16:21:12 +02:00
Sylvain
63c81b82c1 Merge branch 'dev' into payzen 2021-04-06 15:03:27 +02:00
Sylvain
e06f3beeab [bug] notification not sent
notification sent to the project author when a collaborator has confirmed his participation
2021-04-06 14:16:03 +02:00
Sylvain
54c1a3cfd9 payzen keys configuration form 2021-03-31 16:03:51 +02:00
Sylvain
5aacd6695c Merge branch 'dev' into payzen 2021-03-30 09:22:47 +02:00
Sylvain
818e9e99fc [bug] unable to update a coupon 2021-03-29 10:19:06 +02:00
Sylvain
5b854ea831 Merge branch 'dev' into payzen 2021-03-24 14:34:24 +01: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
f535be5b05 WIP: address_required 2021-03-22 18:02:56 +01:00
Sylvain
141f4f31b1 Merge branch 'dev' into payzen 2021-03-10 15:23:56 +01:00
Sylvain
9d747db095 Ability to disable the trainings module 2021-03-10 13:25:53 +01:00
Sylvain
3ea06826ad WIP: select gateway 2021-03-03 15:28:56 +01:00
Sylvain
ecb23c02b9 fix extend susbcription w/ payment schedule 2021-02-10 13:32:13 +01:00
Sylvain
8468a3c6de rake task to regenerate payment schedules PDF files 2021-02-10 11:40:23 +01:00
Sylvain
f3ad59d33a fix cancel schedule 2021-02-09 16:26:09 +01:00
Sylvain
ff0c69fc58 stripe card update + cancel subscription 2021-02-09 15:44:56 +01:00
Sylvain
0e7226c85c handle stripe requires_action 2021-02-08 15:28:47 +01:00
Sylvain
163976b988 WIP: error handling for card payments on later deadlines 2021-01-27 17:24:10 +01:00
Sylvain
39c3164b47 WIP: admin interface to manage payment schedules 2021-01-26 17:31:11 +01:00
Sylvain
01a0612a4b fix create invoice for each due date 2021-01-25 14:37:07 +01:00
Sylvain
26636254bd generate the invoices for each schedule item and notify if something goes wrong 2021-01-25 13:05:27 +01:00
Sylvain
e5439901d6 fix generate payment schedule pdf + send by mail
TODO: total amount does not match with sum of all lines
- generate invoices for each PS-item
- interface to access the payment schedules
2021-01-19 16:47:51 +01:00
Sylvain
12e99f4c9c generate payment schedule pdf 2021-01-04 18:12:44 +01:00
Sylvain
37af665991 save subcription id in payment schedule item 2021-01-04 17:03:44 +01:00
Sylvain
8b13ae45ac all tests passing 2021-01-04 16:26:52 +01:00
Sylvain
728ae4310c improved testing of payment schedules + some fixes
TODO: fix the test
rails test test/integration/reservations/create_test.rb
Reservations::CreateTest#test_user_reserves_a_machine_and_renew_a_subscription_with_payment_schedule_and_coupon_and_wallet [test/integration/reservations/create_test.rb:841]
Minitest::Assertion: Expected: "stripe"
  Actual: nil
2020-12-30 18:43:33 +01:00
Sylvain
dc00df4afc fix stripe subscription w/ coupon + wallet 2020-12-30 12:19:33 +01:00
Sylvain
b8319a5124 handle percent coupons w/ stripe subscriptions 2020-12-30 10:17:39 +01:00
Sylvain
fba5f57a1c handle wallet transaction w/ stripe subscription 2020-12-29 18:55:00 +01:00
Sylvain
feeed2f450 fix take a reservation + subscription
FIXME:
ActionView::Template::Error (undefined method `iso8601' for nil:NilClass)
Callstack:
  app/views/api/reservations/show.json.jbuilder:40:in `_app_views_api_reservations_show_json_jbuilder'
  app/controllers/api/payments_controller.rb:91:in `confirm_payment_schedule'
2020-12-28 18:30:27 +01:00
Sylvain
3e4892d3a5 WIP: creating payment schedule workers
see TODO in app/workers/payment_schedule*
2020-12-23 16:56:19 +01:00
Sylvain
32b0222da5 save payment schedules PDF to a persistant volume storage 2020-12-22 16:39:37 +01:00
Sylvain
bbf88846dd refactored Invoice & PaymentSchedule to use inheritance 2020-12-22 14:43:08 +01:00
Sylvain
6fa9780ad5 refactor chainable/footprint protected models to use inheritance 2020-12-22 09:53:41 +01:00
Sylvain
d3a41903cd WIP: exclude invoice_id from footprint in payment_schedule_item 2020-12-21 17:37:58 +01:00
Sylvain
609d19e5d1 refactored subscription process + renew (update) subscription/ offre free days 2020-12-21 16:12:34 +01:00
Sylvain
40c78974b8 refactoring of reservation:pay_and_save
TODO: debug with tests,
refactor subscription:pay_and_save on the same template
2020-12-16 18:33:43 +01:00
Sylvain
908ccf5bab handle reservations+subscription w/ schedule
integration testing for payment schedule
debug reservation process
2020-12-14 17:42:23 +01:00
Sylvain
5941446a72 fixes for card payment 2020-12-02 14:28:41 +01:00
Sylvain
34a9084501 pass payment method to the ruby service 2020-11-23 11:48:44 +01:00
Sylvain
678af0de1f using stripe api + improved ui + ui to configure schedules reference
TODO: as an admin, I can select if payment_method = (stripe || local)
2020-11-16 16:37:40 +01:00
Sylvain
b5504d2342 create stripe subscription with all data 2020-11-12 16:44:55 +01:00
Sylvain
ed5b90cbdc add stp_product_id to all items that can be scheduled 2020-11-12 12:14:51 +01:00
Sylvain
78847bdb4b WIP: create subscription on stripe 2020-11-10 17:02:21 +01:00
Sylvain
21bd1312bc compute payment schedule + basic display 2020-11-03 16:50:11 +01:00
Sylvain
408531d13a use i18next instead of angular-translate for react components 2020-11-02 11:07:08 +01:00
Sylvain
14091f547e parse multiple scss files for theme 2020-10-29 16:11:19 +01:00
Sylvain
4f877ab05d react coponent: plan-card + extracted scss from stylesheet.rb into themes/ 2020-10-29 15:53:29 +01:00
Sylvain
106d8be4c8 Merge branch 'dev' into monthly-payment 2020-10-28 12:11:49 +01:00
Sylvain
1699bbf143 [bug] theme primary color is ignored on links 2020-10-28 12:10:25 +01:00
Sylvain
ddd2b252ab fix caret color 2020-10-28 10:27:59 +01:00
Sylvain
ccd3e93428 fix about link color 2020-10-28 10:03:04 +01:00
Sylvain
44525f9bad Merge branch 'dev' into monthly-payment 2020-10-28 09:53:28 +01:00
Sylvain
bf76157703 Initialize new plans with default prices for machines & spaces 2020-10-28 09:24:31 +01:00
Sylvain
a9cc0b391b save products and prices to stripe for each plans 2020-10-27 16:46:38 +01:00
Sylvain
6be51feeb2 save stp_price_id for each plan 2020-10-27 16:03:20 +01:00
Sylvain
840be2c6c0 renamed RepaymentSchedule to PaymentSchedule 2020-10-27 16:02:41 +01:00
Sylvain
52f3bd956f database structure for payment schedule 2020-10-27 11:32:20 +01:00
Sylvain
2227a59275 [bug] unable to rename a group containing users 2020-10-20 15:52:14 +02:00
Sylvain
b5a4e724e8 [bug] email notification after reservation update have wrong previous date (#234) 2020-10-20 15:14:11 +02:00
Sylvain
57b76d156b Alert before cancelling a reservation that credits will be lost 2020-09-29 12:03:13 +02:00
Sylvain
13bc5334cc ability to configure until when the events are shown on the home page 2020-09-29 09:39:32 +02:00
Sylvain
14b0b2ac30 class documentation 2020-07-21 19:28:30 +02:00
Sylvain
7bf06ff23e debug footprints 2020-07-21 19:25:21 +02:00
Sylvain
e644e4894a using unaccent to build project search index + updated doc 2020-06-30 15:58:39 +02:00
Sylvain
e95b270433 multiples fixes
- improved project search
- fix db schema (sql)
- improved doc
- removed es_language_analyzer var (deprecated)
2020-06-24 17:22:38 +02:00
Sylvain
8137418904 improved test for accounting periods 2020-06-24 15:25:17 +02:00
Sylvain
e288f66997 use search index to speed up projects searches 2020-06-23 17:06:59 +02:00
Sylvain
7140571d63 filter & search projets from postgres 2020-06-23 11:19:20 +02:00
Sylvain
1a6cd356bf WIP: using postgres for full-text search in projects 2020-06-22 16:28:05 +02:00
Sylvain
d83e3a8d26 using gem pg_search 2020-06-22 11:25:35 +02:00
Sylvain
7af6f18973 source for building search engine 2020-06-17 16:56:10 +02:00
Sylvain
a164ec402d poc using tsvector 2020-06-17 16:49:38 +02:00
Sylvain
40dd39304e enable/disable statistics module fomr the UI 2020-06-17 12:20:51 +02:00
Sylvain
24155bc009 ability to lock settings from the env vars 2020-06-15 13:20:48 +02:00
Sylvain
42872ab107 configure wallet from UI 2020-06-15 12:44:43 +02:00
Sylvain
f46c78a476 read email_confirmation_required from the UI 2020-06-15 11:57:13 +02:00
Sylvain
48bcf0b838 configure invoices prefix from the DB 2020-06-15 10:58:15 +02:00
Sylvain
78518e17fb read stripe_currency from the UI
We prevent the currency from being changed if any stripe payment was made, because a stripe user cannot made pay with different currencies. If we try to charge a user with a different currency than the currency he used for a previous payment, this will fail; so we must prevent this case
2020-06-10 16:37:11 +02:00
Sylvain
4b8504f531 fix tests 2020-06-10 11:52:54 +02:00
Sylvain
82d6677cff read stripe_api_key from db 2020-06-10 11:33:03 +02:00
Sylvain
dbda82ac9b notify after members sync on stripe 2020-06-09 15:06:46 +02:00
Sylvain
d5939a9de5 set the stripe keys from the UI 2020-06-09 13:09:31 +02:00
Sylvain
06b5da9df8 configure online payment from the UI 2020-06-08 17:42:59 +02:00
Sylvain
b44a8da73b set openlab_default from the UI 2020-06-08 16:15:44 +02:00
Sylvain
f78eb10c75 use openlab_app_secret from db w/ openlab_ruby gem 2020-06-08 15:17:56 +02:00
Sylvain
88f2fb3749 secure the settings API (read) + read the openlab settings from the db 2020-06-08 15:08:07 +02:00
Sylvain
db8de18bd4 set openlab-projects id & secret from the UI 2020-06-08 11:38:49 +02:00
Sylvain
5c152412db test mime type of a file
use marcel to test mime types
updated mimemagic
2020-06-03 16:25:13 +02:00
Sylvain
ebe602ad1c WIP: enforce mime type checking for uploads 2020-06-02 19:18:57 +02:00
Sylvain
45013be950 configure default_host & default_protocol from env
reverts 478a6c40 (partially) & b2434864
2020-06-02 18:29:24 +02:00
Sylvain
9a0f36c245 configure disqus_shortname from the UI 2020-06-01 18:31:43 +02:00
Sylvain
478a6c409d define default_protocol & default_host from the UI + fix email_from + various minor fixes 2020-06-01 17:32:32 +02:00
Sylvain
0617e4cd26 configure default_mail_from from the UI 2020-06-01 12:15:16 +02:00
Sylvain
434c211ccf configure the features tour display mode from the UI 2020-05-27 18:49:53 +02:00
Sylvain
0d211e2e31 configure google recaptcha from UI 2020-05-27 16:35:30 +02:00
Sylvain
c3846e7080 configure twitter analytics from the UI 2020-05-27 15:39:39 +02:00
Sylvain
628a0f3bc3 configure facebook_app_id from the UI 2020-05-27 12:29:51 +02:00
Sylvain
2d628d8826 disable the invoicing module from the UI config panel 2020-05-26 18:07:07 +02:00
Sylvain
537743a740 configure the plans module from the admin UI 2020-05-26 15:39:28 +02:00
Sylvain
6cc6bba7ce refactored app to gather spaces module status from the settings 2020-05-26 13:59:40 +02:00
Sylvain
fd93093f0d UI to configure the spaces module 2020-05-26 10:53:49 +02:00
Sylvain
acefc325f6 configure events_in_calendar form the UI panel 2020-05-25 17:36:53 +02:00
Sylvain
ba4c39ca99 use slot duration from the db setting 2020-05-25 12:55:01 +02:00
Sylvain
a63340188b configure default slot duration from settings panel 2020-05-25 12:55:01 +02:00
Sylvain
ddce7f516a configuration of book concurrent slots through the settings interface 2020-05-25 12:55:00 +02:00
Sylvain
419605e551 configuration of google analytics tracking ID through the settings interface 2020-05-25 12:55:00 +02:00
Sylvain
13bcd9a1f8 use phoneRequired from settings instead of env 2020-05-25 12:54:19 +02:00
Sylvain
f80eb230ca refactored code to use Setting.get 2020-05-25 12:54:19 +02:00
Sylvain
654d4b1cb4 setting: phone_required 2020-05-25 12:54:19 +02:00
Sylvain
18e2b032ae fix import users from csv 2020-05-19 11:45:51 +02:00
Sylvain
2b95c043e3 Removed dependency to has_secure_token to fix warnings about already initialized constant 2020-05-18 17:45:01 +02:00
Sylvain
fdc2f60ff5 [bug] when a new account is created through the sign-up modal, the role is not reported in the StatisticProfile (#196)
Also: if a member was deleted the /api/members/mapping will raise an error
2020-05-18 16:23:53 +02:00
Sylvain
14c8cbbf57 typos 2020-05-11 17:17:37 +02:00
Sylvain
9f8fb1a95c fix tests + fix price.compute flor slots 2020-05-11 13:52:27 +02:00
Sylvain
1fdea63828 correct some errors due to Price.compute refactoring 2020-05-11 10:56:23 +02:00
Sylvain
06502cde33 [bug] accounting periods totals are wrong for periods closed after 2019-08-01 2020-05-11 10:10:52 +02:00
Sylvain
be23cf27c3 use Price.compute to generate invoice items 2020-05-06 12:43:47 +02:00
Sylvain
19de8ca319 fix: manager can offer slot to other users 2020-05-06 09:58:15 +02:00
Sylvain
e6f8a34aa4 [ongoing] compute per based on a hourly rate 2020-05-05 17:56:47 +02:00
Sylvain
34935cbc35 decrease higher limit for black text on primary color 2020-05-05 16:20:44 +02:00
Sylvain
2d8df2c1cd Ability to promote a user to a higher role (member > manager > admin) 2020-05-05 11:28:04 +02:00
Sylvain
06a5bff084 [ongoing] change user role 2020-05-04 18:32:25 +02:00
Sylvain
3319e68526 Auto-adjusts text colors based on the selected theme colors 2020-05-04 13:20:57 +02:00
Sylvain
29e7ac2f08 [bug] background image of the profile is not shown and wrong menu hover color 2020-05-04 12:10:13 +02:00
Sylvain
7640704568 fix payment method on invoices operated by a manager 2020-05-04 11:36:06 +02:00
Sylvain
6aa7ba89e8 manager's notifications 2020-04-29 15:34:30 +02:00
Sylvain
35ce577651 [bug] subscription page shows the groups without any active plans
[bug] cart price inconsistently updated after a subscription
[feature] plans page for managers
2020-04-29 10:57:32 +02:00
Sylvain
3e177b5177 managers events views 2020-04-28 12:48:03 +02:00
Sylvain
2da644ecd5 [bug] unable to delete an unreserved event 2020-04-28 10:05:28 +02:00
Sylvain
3624bee057 {bug] unable to create events or trainings that are not multiples of SLOT_DURATION 2020-04-28 09:45:12 +02:00
Sylvain
570672c5db [bug] unable to change group if the previous was deactivated 2020-04-28 09:21:33 +02:00
Sylvain
69c8d7c678 manager can change existing reservations 2020-04-27 12:58:55 +02:00
Sylvain
5312c13d3f [manager] manage agenda + book machines for himself&others 2020-04-27 12:12:29 +02:00
Sylvain
c30ae8179e fix groups and tags in manager creation + helpers to get users w/ role partner|manager 2020-04-22 10:46:46 +02:00
Sylvain
ff75a96ecc Ability to define, per availability, a custom duration for the reservation slots 2020-04-15 18:08:02 +02:00
Sylvain
de9c224a92 improved version check
- use referer from client when available
- save uuid returned by hub
- send uuid to hub on version check
- check the version on each startup to prevent wrong sync
- also: do not save a setting on API update if it has not changed
2020-04-07 17:53:19 +02:00
Sylvain
3917d6042c [bug] no statistics for subscriptions (#196)
+ [bug] issing translation for subscriptions statistics > duration
2020-04-01 17:25:55 +02:00
Sylvain
f9e18ca580 removed dependency to discoutinued protected_attributes + fixed auth_provider 2020-03-30 16:17:32 +02:00
Sylvain
02c1014412 class documentation 2020-03-30 11:33:12 +02:00
Sylvain
d33c6c0d30 documented all models until StatisticField + fixes halting callback chains via returning false + improved some code 2020-03-25 17:45:53 +01:00
Sylvain
68b8827499 removed unused PlanImage 2020-03-25 16:49:13 +01:00
Sylvain
6b66d601e1 inherit models from ApplicationRecord 2020-03-25 12:35:09 +01:00
Sylvain
df8ff77597 fix migrations for rails 5 + use maildev instead of mailcatcher + fix tests script 2020-03-25 12:35:08 +01:00
Du Peng
9ca9425ef4 update to rails 5.0.7.2 2020-03-25 12:35:07 +01:00
Sylvain
0b341af1ed [bug] unable to create new availabilities if SLOT_DURATION is not defined 2020-03-11 11:31:06 +01:00
Sylvain
978c44f55f fix an issue: shift in subscription end date when over DST 2020-03-04 11:43:12 +01:00
Sylvain
a44bf85014 Merge branch 'slot_is_only_subscriptions' into dev 2020-03-02 16:27:26 +01:00
Sylvain
d833f6d812 harmonize Fab-manager trademark syntax 2020-02-26 10:19:43 +01:00
Du Peng
096a658bac add a validator to check reservation's slot is or not restrict for subscriptions 2020-02-11 13:22:20 +01:00
Du Peng
74cc69d1bd Ability to configure reservation slot restrict for plans 2020-02-07 17:37:00 +01:00
Sylvain
656a603d6c customize home page css 2020-01-27 17:10:29 +01:00
Sylvain
37c90b1d54 ruby syntax 2020-01-22 14:34:45 +01:00
Sylvain
b85c7ac00b admin set its customized html template for the home page & can reset it to factory value 2020-01-22 11:53:40 +01:00
Sylvain
15ab3c1305 Ability to customize the title of the link to the about page 2020-01-21 16:16:12 +01:00
Du Peng
fe387cbe3c Merge branch 'twitter' into dev 2020-01-15 12:40:01 +01:00
Du Peng
db29673a4c remove twitter api for get latest tweet 2020-01-15 12:34:51 +01:00
Sylvain
059096c2dd privacy option for fab-analytics 2020-01-15 10:46:04 +01:00
Sylvain
bb48a13f83 health endpoint & automated version check 2020-01-14 14:33:00 +01:00
Sylvain
64764e5498 check version on hub & [ongoing] health endpoint 2020-01-13 17:05:53 +01:00
Sylvain
1c4f144b8d Merge branch 'members-filters' into dev 2020-01-07 10:44:55 +01:00
Sylvain
f778ee9016 fix syntax + add missing translations 2020-01-07 10:44:29 +01:00
Sylvain
b6ee4e92a4 change falsy value + updated changelog 2020-01-07 10:34:12 +01:00
Nicolas Florentin
62c979cfc0 members filters, translations for other languages are still needed 2019-12-20 15:47:42 +01:00
Nicolas Florentin
0a3a6d034a env variable USER_CONFIRMATION_NEEDED_TO_SIGN_IN can force user to confirm his account to sign in 2019-12-18 16:02:47 +01:00
Sylvain
6aa3c0caeb Notify all admins on the creation of a refund invoice 2019-12-09 11:55:31 +01:00
Sylvain
60755a2c2a Merge remote-tracking branch 'origin/fix-time-now' into dev 2019-12-03 15:51:22 +01:00
Sylvain
11e74c6859 Merge branch 'ics' into dev 2019-12-03 15:30:28 +01:00
Sylvain
64fe68b2b0 icalendar source sync: create/update/delete ical events 2019-12-03 12:16:07 +01:00
Sylvain
122ff54cd8 fix colors in ics imports 2019-12-03 10:17:29 +01:00
Sylvain
22be9f6a08 display external calendars list in public calendar + pull availabilities 2019-12-02 16:49:20 +01:00
Sylvain
cca6b14f58 import events asyncronously from icalendar 2019-12-02 15:53:24 +01:00
Nicolas Florentin
db41e846dd uses DateTime#current instead of Time.now in tests 2019-12-02 15:29:05 +01:00
Nicolas Florentin
b17bcfde86 comment model slot.rb 2019-12-02 12:39:20 +01:00
Nicolas Florentin
6ff6c71060 rm dead code Slot#can_be_modified? 2019-12-02 12:32:52 +01:00
Nicolas Florentin
77cf8c8218 replaces almost all Time.now by DateTime.current 2019-12-02 11:57:25 +01:00
Sylvain
baf8cfb487 iCalendar server api & db model 2019-11-27 17:05:19 +01:00
Sylvain
48b811d2b5 Added freeCAD files as default allowed extensions
also: refactored some ruby code
2019-11-25 16:12:23 +01:00
Sylvain
1182822d8b show correct seats nb in canceled reservation 2019-11-25 10:45:54 +01:00
Sylvain
bbd613f2a5 compute right nb of free seats for event reservation
also: copy nb_total_places to n+1 instances when creating recurrent
availabilities
2019-11-25 10:30:12 +01:00
Sylvain
cabe2e5604 update free places after cancel event reservation 2019-11-20 17:06:42 +01:00
Sylvain
b725a5a071 Merge branch 'cancel' into dev 2019-11-20 10:27:56 +01:00
Sylvain
ad928bd4e6 ability to set phone number optional or required
also: show stars on required fields in new admin form
2019-11-19 11:44:32 +01:00
Sylvain
a60a39ff9e [ongoing] create multiple availabilities according to UI 2019-11-13 12:13:22 +01:00
Sylvain
e8930924e4 [bug] do not display each days in invoices for multiple days event reservation 2019-10-16 16:11:37 +02:00
Sylvain
19a125bd67 [bug] accounting export: on subscription + reservation invoice, the subscription item is exported twice 2019-10-07 12:08:08 +02:00
Sylvain
193e81e711 Merge branch 'uvsq' into dev 2019-09-30 15:34:21 +02:00
Sylvain
0d3cc0fe40 [feature] Ability to disable invoices generation and interfaces 2019-09-30 15:29:20 +02:00
Sylvain
ff5de97c92 import new users from CSV and view results in app
TODO:
 - update users though CSV
2019-09-26 17:05:57 +02:00
Sylvain
4deaf1f75a [ongoing] import members from csv 2019-09-25 16:37:42 +02:00
Sylvain
a532efd198 upload csv file to the server through the API and save it on the disk 2019-09-24 17:42:50 +02:00
Sylvain
ede53ad761 [feature] Ability to set project's CAO attachement maximum upload size 2019-09-24 16:40:38 +02:00
Sylvain
8eda1e673f Merge remote-tracking branch 'origin/hotfixes' into dev 2019-09-24 14:43:14 +02:00
Sylvain
f75633e64e [bug] create a plan does not set its name 2019-09-24 11:41:07 +02:00
Nicolas Florentin
401df4cb77 delay_for does not exist anymore in sidekiq 5 2019-09-20 15:01:27 +02:00
Sylvain
de1cc2013a [bug] after disabling a group, its associated plans are hidden from the interface
+ validate server-side that there's no more user in the group to disable
2019-09-19 15:34:21 +02:00
Sylvain
a7dc3b2431 factorized invoice reference & order number code 2019-09-19 14:59:22 +02:00
Sylvain
2d6f5c3e81 wallet client line in accounting export + factorized accountingExportService 2019-09-19 13:57:33 +02:00
Sylvain
7d26932f6c configure accounting codes & labels for wallet clients and other means clients 2019-09-19 11:51:14 +02:00
Sylvain
cd2c8488c2 Compute the VAT per item in each invoices, instead of globally 2019-09-18 17:14:59 +02:00
Sylvain
02c7cb801f factorized footprint computation 2019-09-18 15:09:14 +02:00
Sylvain
30e7ce8377 [bug] invoices with total = 0, are marked as paid on site even if paid by card 2019-09-17 15:16:11 +02:00
Sylvain
1fa36d4029 renamed avoir_mode to payment_method 2019-09-17 14:48:06 +02:00
Sylvain
3348539fdf export labels: user name + reference + summary, only on client line. Also: handling new export parameters (decimal separator, label length, export zeros) 2019-09-17 12:35:34 +02:00
Sylvain
224b0d6dee Merge branch 'sca' into dev 2019-09-12 12:53:56 +02:00
Sylvain
78e6392f60 do not display invoice update logs in test mode + updated reservations fixtures w/o stp_invoice_id column + helper script to run tests 2019-09-11 14:29:35 +02:00
Sylvain
3320ee103b Log changes in Invoices or InvoiceItems records for better handling of accounting certification issues 2019-09-11 12:22:14 +02:00
Sylvain
f60d19fa27 allow reservations & subscriptions at price of zero 2019-09-11 11:51:04 +02:00
Sylvain
75f483a7a6 compute subscription price server-side for payments 2019-09-11 10:31:22 +02:00
Sylvain
ac0489a496 [bug] wallet usage is noted on subscription invoices even if wallet was not used + use payment confirm API for subscriptions only (sca) 2019-09-10 17:57:46 +02:00
Sylvain
4d0ac9b3ca using stp_payment_intent_id instead of stp_invoice_id on new invoices 2019-09-10 16:45:45 +02:00
Sylvain
a96050a2e9 refactor payment process for sca 2019-09-10 11:46:14 +02:00
Sylvain
e9e27663cd quick coding rules checking with rubocop 2019-09-09 18:04:31 +02:00
Nicolas Florentin
e94cf46fa4 ongoing work on sca stripe 2019-09-09 17:37:54 +02:00
Sylvain
61c1d09ac8 [bug] use vat history while regenerating invoices 2019-08-01 11:29:45 +02:00
Sylvain
38ab06840e consider vat history in accounting export + [bug] use vat history while regenerating invoices 2019-08-01 11:26:40 +02:00
Sylvain
a9ea4057f3 interface to customize accounting codes and labels 2019-07-30 16:06:35 +02:00
Sylvain
f772bc3509 api endpoint and worker to export accounting data 2019-07-30 11:43:51 +02:00
Sylvain
ab295f064d service to export invoices into a given period to CSV lines for an accounting sofware 2019-07-29 17:51:53 +02:00
Sylvain
a778b1063a enhance ruby syntax 2019-07-29 12:17:57 +02:00
Sylvain
b77fde2506 [bug] OpenlabWorker is crashing with message undefined method profile for StatisticProfile 2019-07-10 10:58:51 +02:00
Sylvain
b0b2e8d3a9 use an async worker to notify users about policy update 2019-06-17 10:01:59 +02:00
Sylvain
f3c433883d [bug] canceled reservation are not removed from statistics (fix #133) 2019-06-13 16:29:12 +02:00
Sylvain
249e59bb2a get user consent about cookies 2019-06-13 11:28:55 +02:00