1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-10 21:24:20 +01:00
Commit Graph

641 Commits

Author SHA1 Message Date
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