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

866 Commits

Author SHA1 Message Date
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
Sylvain
a53c6e80e7 move invoice->operator to invoicing_profile + minor fixes to handle user deletion 2019-06-12 12:22:38 +02:00
Sylvain
86ded2b8d2 [ongoing] fixes for invoices pdf files 2019-06-11 16:56:11 +02:00
Sylvain
37b9e3da60 link statistic profile to invoices 2019-06-11 10:02:48 +02:00
Sylvain
cfd33c3a52 migrate projects to statistic_profile 2019-06-06 16:34:53 +02:00
Sylvain
35da65b686 change statistic_service to use statistic_profile + use raw sql in migrations 2019-06-06 13:58:49 +02:00
Sylvain
fe2a6f7120 migrate trainings to statistic_profile and adjust code 2019-06-06 12:00:21 +02:00
Sylvain
0a5e373730 models linking 2019-06-05 16:21:39 +02:00
Sylvain
f0c5b0eb09 init StatisticProfileTraining 2019-06-05 16:17:56 +02:00
Sylvain
6f87873b2c fix init member group when created from signup modal 2019-06-05 16:09:11 +02:00
Sylvain
17fbd6b465 multiple fixes related to statistic_profile & invoicing_profile + fix users list while sorting by subscription 2019-06-05 12:11:51 +02:00
Sylvain
4c033614ae [ongoing] migrate subscriptions & reservations to statistic_profile 2019-06-04 16:50:23 +02:00
Sylvain
52992ac9d5 move gender & birthday to statistic_profile 2019-06-04 13:33:00 +02:00
Sylvain
42e73e4315 [ongoing] statistic profile 2019-06-03 17:25:04 +02:00
Sylvain
9ef2f142bd link HistoryValue to InvoicingProfile + improved invoices tests 2019-06-03 16:51:43 +02:00
Sylvain
7ed97ef35a link wallet & its transactions to invoicingprofile 2019-06-03 16:00:09 +02:00
Sylvain
6011f27268 finish moving organization & address to invoiving profile: fix create & edit user 2019-06-03 12:06:01 +02:00
Sylvain
a211ad39ff moving organization & address to invoicingProfile + refactored doc about postgre 2019-05-29 14:28:14 +02:00
Sylvain
142e07f3c9 update code to use invoicingprofile 2019-05-29 12:01:24 +02:00
Sylvain
ffbca98276 [ongoing] fix api to use the invoicing_profile 2019-05-28 16:49:36 +02:00
Sylvain
3945b760b5 [ongoing] attach invoices to invoicingProfile instead of user 2019-05-27 13:03:44 +02:00
Sylvain
5231e464fe fix invoicingProfile schema + migration script 2019-05-27 13:00:05 +02:00
Sylvain
70bc3d5732 put invoicing data into separate table 2019-05-27 13:00:05 +02:00
Sylvain
0c51f25f7f Merge branch 'hotfix' into dev 2019-05-27 12:50:19 +02:00
Sylvain
5d32756928 [bug] updating a setting does not chain new values 2019-05-27 11:21:29 +02:00
Sylvain
6f2483a51f [bug] when generating an Avoir at a previous date, the resulting checksum may be invalid 2019-05-27 11:11:21 +02:00
Sylvain
3394413747 fixed syntax 2019-05-07 15:56:23 +02:00
Sylvain
26b901ebb5 [bug#131] Availabilities export report an erroneous number of reservations for machine availabilities 2019-05-07 12:24:51 +02:00
Sylvain
162a56250a notify users after privacy policy update + hide undefined content 2019-04-25 11:40:26 +02:00
Sylvain
531e298b14 [bug] updating a setting does not chain new values 2019-04-23 13:04:50 +02:00
Sylvain
c0c9b2a980 privacy policy: fixed admin view after update + display last update date 2019-04-23 12:58:01 +02:00
Sylvain
7a2fc7c42e [ongoing] save as draft or publish 2019-04-18 15:57:56 +02:00
Sylvain
8fae8b104d admin interface to customize privacy policy page 2019-04-18 12:30:00 +02:00
Sylvain
936495e596 [bug] when paying reservation with wallet, the invoice footprint is not correctly updated 2019-04-08 17:04:53 +02:00
Sylvain
3b3e1af822 improved coupon filtering to allow pagination while filtering 2019-04-08 11:00:00 +02:00
Sylvain
c786ba6edb notify user about archiving 2019-04-04 11:37:23 +02:00
Sylvain
21a5f5591a [ongoing] generate achives async 2019-04-03 17:57:21 +02:00
Sylvain
4be597ba9d fixed ruby style 2019-04-03 17:33:43 +02:00
Sylvain
8a6ff0c093 prevent closing a period not in the past 2019-04-03 17:27:25 +02:00
Sylvain
9e39a0517c [bug] vat rat in archives may be wrong 2019-04-03 16:56:47 +02:00
Sylvain
722d5d36e7 check server-side that periods match length requirements + explain requirements to user before closing 2019-04-03 13:04:19 +02:00
Sylvain
7cdacb3164 print date in archive 2019-04-01 13:36:45 +02:00
Sylvain
7a317b7e45 [bug] unable to add a file attachment to an event 2019-03-28 11:30:25 +01:00
Sylvain
2ac0336adb Merge branch 'dev' into host 2019-03-25 16:17:23 +01:00
Sylvain
5cdaa014ef [security] updated devise + updated rails 2019-03-25 14:57:48 +01:00
Sylvain
8530a6f655 superadmin + fixed free space notification 2019-03-20 16:49:38 +01:00
Sylvain
940ea3051b chain historyValues with sha256 footprints 2019-03-20 11:01:53 +01:00
Sylvain
7b0824a4a3 notify admins when no accounting period closed for 1 year 2019-03-18 14:33:30 +01:00
Sylvain
c356f35f29 add operator_id to invoices 2019-03-18 11:11:09 +01:00
Sylvain
b439c643cb zip archives, include checksum, chained zips 2019-03-13 17:48:35 +01:00
Sylvain
9fcb4277cd Merge branch 'dev' into host 2019-03-13 16:49:11 +01:00
Sylvain
402be18bdf model documentation 2019-03-13 16:49:03 +01:00
Sylvain
857b1cebba fix accounting period checksum + improved period validation 2019-03-12 15:26:17 +01:00
Sylvain
4f418cc3fb compute total without taxes + fix close period date pickers + improved archived % number format 2019-03-12 13:36:10 +01:00
Sylvain
b9e427a9fc include VAT in archives 2019-03-12 12:15:14 +01:00
Sylvain
4e7a62bc2b [ongoing] close period for max 1 year + force contiguous periods + fix totals 2019-03-12 09:14:20 +01:00
Sylvain
2a32bc4752 date the archives 2019-03-11 16:25:51 +01:00
Sylvain
b940ae0327 display complete info set on accounting archives 2019-03-11 16:11:49 +01:00
Sylvain
811d7288e7 fix chain_record methods 2019-03-11 13:49:16 +01:00
Sylvain
e543f1fe3e add watermark to invoices in dev/staging/test environment 2019-02-27 17:44:52 +01:00
Sylvain
9854a4b965 prevent memory saturation with periodic checks 2019-02-26 15:18:19 +01:00
Sylvain
1c8e82df14 added free disk space notification to oss release to prevent collision 2019-02-26 11:13:57 +01:00
Sylvain
8f210bb713 Merge branch 'dev' into host 2019-02-26 10:45:34 +01:00
Sylvain
1b97c39645 refactored notificationcenter to accept meta_data 2019-02-26 10:45:12 +01:00
Sylvain
f11f629bcf compute, secure and archive period total and cumulative total of each accounting period 2019-02-25 14:51:19 +01:00
Sylvain
cf23fae73c Merge branch 'dev' into host 2019-02-14 16:35:38 +01:00
Sylvain
9f765009a8 [bug] unable to create oauth2 sso
[bug] application failed when sso activated
[bug] missing translations in oauth2 forms
2019-02-14 12:25:37 +01:00
Sylvain
06f2c3626c refactored rake tasks 2019-02-13 12:59:28 +01:00
Sylvain
ffe5516d10 prevent closing an accounting period if any checksum error in period 2019-02-12 17:38:44 +01:00
Sylvain
9f4d026f30 fix last archive infos in closed accounting period 2019-02-12 16:19:11 +01:00
Sylvain
2ba3890325 display records integrity status 2019-02-12 16:00:36 +01:00
Sylvain
f9364b3872 chains invoice and invoiceItem records. save them in archives 2019-02-12 14:45:21 +01:00
Sylvain
cc124a0dee [ongoing] chain invoice records 2019-02-11 13:57:07 +01:00
Sylvain
6e274afe3b accounting archive: insert code checksum and previous archive checksum 2019-01-31 12:19:50 +01:00
Sylvain
55ae979213 Merge branch 'dev' into host 2019-01-30 10:04:12 +01:00
Sylvain
a528fc3766 infos about deprecated notification 2019-01-30 10:03:53 +01:00
Sylvain
da672ea8b6 Merge branch 'dev' into host 2019-01-21 16:34:06 +01:00
Sylvain
d2c4773ac9 [bug] unable to delete an admin who has changed a setting 2019-01-16 17:09:27 +01:00
Sylvain
526b9aab0c [bug] unable to create/edit plan of 12 months/53 weeks 2019-01-16 12:10:07 +01:00
Sylvain
27f3296719 rubocop coupon 2019-01-16 11:07:09 +01:00
Sylvain
a1ba272538 Merge branch 'dev' into host 2019-01-14 13:00:24 +01:00
Sylvain
f6e236aeb5 refactored roles methods to match ruby conventions 2019-01-14 12:57:31 +01:00
Sylvain
0927336956 fixed reservation after removing disable_invoicing + updated vcr cassettes 2019-01-14 12:45:17 +01:00