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

533 Commits

Author SHA1 Message Date
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
65277800e2 fix creation subcription on stripe 2020-12-23 16:25:24 +01:00
Sylvain
f661428db2 better error handling in stripe::subscription creation process 2020-12-23 15:29:56 +01:00
Sylvain
bbf88846dd refactored Invoice & PaymentSchedule to use inheritance 2020-12-22 14:43:08 +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
ccff463165 test subscription with schedule by user 2020-12-15 15:48:13 +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
c3c881d2a8 process the schedule to the stripe subscription
- only for subscriptions for now
- TODO: reservations (see app/services/reservations/reserv.rb:13)
2020-12-09 16:47:51 +01:00
Sylvain
8e8fc9b682 validate reservation/subscription after payment schedule creation 2020-12-08 17:30:33 +01:00
Sylvain
1d64c517c9 create stripe's paymentIntent
associate the paymentMethod (the card) with the customer (the user)
for futur usages in subscriptions
2020-12-08 12:26:03 +01:00
Sylvain
5941446a72 fixes for card payment 2020-12-02 14:28:41 +01:00
Sylvain
6c39191efa allow payment with stripe-modal react component 2020-12-02 10:06:18 +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
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
5f93e6d3be plan creation: set if it allows monthly payments 2020-10-27 13:06:37 +01: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
30b3a794d3 [bug] managers cannot see passed events 2020-09-29 08:40:07 +02:00
Sylvain
5eae1c74a8 [bug] Unable to access the invoices section if the stripe key was not set or incorrect 2020-07-01 12:15:45 +02:00
Sylvain
5f0a9ed572 remove dead code 2020-06-29 15:12:32 +02:00
Sylvain
e288f66997 use search index to speed up projects searches 2020-06-23 17:06:59 +02:00
Sylvain
23338eb36d refactored project search using service 2020-06-23 15:45:38 +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
5e8aeb928c fix refactoring issue in /api/open_api_clients 2020-06-15 17:07:28 +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
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
82d6677cff read stripe_api_key from db 2020-06-10 11:33:03 +02:00
Sylvain
9ff0a06029 many sidekiq fixes 2020-06-09 18:51:57 +02:00
Sylvain
06b5da9df8 configure online payment from the UI 2020-06-08 17:42:59 +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
5c152412db test mime type of a file
use marcel to test mime types
updated mimemagic
2020-06-03 16:25:13 +02:00
Sylvain
743f3e510a WIP: Test the mime type of a file 2020-06-03 15:33:04 +02:00
Sylvain
ebe602ad1c WIP: enforce mime type checking for uploads 2020-06-02 19:18:57 +02:00
Sylvain
434c211ccf configure the features tour display mode from the UI 2020-05-27 18:49:53 +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
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
f80eb230ca refactored code to use Setting.get 2020-05-25 12:54:19 +02:00
Sylvain
37901e4153 [bug] users promoted to the administrator role are not in the admin group 2020-05-12 15:30:57 +02:00
Sylvain
1fdea63828 correct some errors due to Price.compute refactoring 2020-05-11 10:56:23 +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
2d8df2c1cd Ability to promote a user to a higher role (member > manager > admin) 2020-05-05 11:28:04 +02:00
Sylvain
d8a289e825 fixes change role API 2020-05-04 18:34:26 +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
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
18895b6a85 manager can create memebrs & credit wallets 2020-04-28 15:34:17 +02:00
Sylvain
3e177b5177 managers events views 2020-04-28 12:48:03 +02:00
Sylvain
102709246f basic access to members management for managers 2020-04-27 17:48:13 +02:00
Sylvain
8c610ea336 [managers] trainings management 2020-04-27 17:28:11 +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
e1a8646e5f inteface to add/remove/edit managers 2020-04-22 10:09:16 +02:00
Sylvain
2ca5c8c50f managers interface 2020-04-21 17:24:22 +02:00
Sylvain
f88472eeb3 Interface to manage partners 2020-04-21 16:47:35 +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
2bbce711d9 fix stylesheet view 2020-03-25 12:35:08 +01:00
Sylvain
a44bf85014 Merge branch 'slot_is_only_subscriptions' into dev 2020-03-02 16:27:26 +01:00
Sylvain
11ccaa73b6 Merge remote-tracking branch 'origin/disable_wallet_option' into dev 2020-03-02 15:47:14 +01:00
Sylvain
5186d6b22c behavior of FEATURE_TOUR_DISPLAY 2020-03-02 11:17:28 +01:00
Sylvain
d833f6d812 harmonize Fab-manager trademark syntax 2020-02-26 10:19:43 +01:00
Sylvain
5b46edd748 welcome tour + save completed tours in database 2020-02-18 17:36:45 +01:00
Du Peng
908275d171 add disable wallet option 2020-02-12 18:15:44 +01:00
Sylvain
b7dda83060 Merge branch 'edit_event_recurrent' into dev 2020-02-11 15:43:29 +01:00
Du Peng
74cc69d1bd Ability to configure reservation slot restrict for plans 2020-02-07 17:37:00 +01:00
Du Peng
35d9bec8a5 update event recurrent 2020-01-29 17:20:19 +01:00
Du Peng
b1419271e6 edit event recurrent in progress 2020-01-27 18:21:46 +01:00
Sylvain
656a603d6c customize home page css 2020-01-27 17:10:29 +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
c214ae3beb Merge branch 'dev' of git.sleede.com:projets/fab-manager into dev 2020-01-15 12:49:07 +01:00
Sylvain
7929d3b198 detailled view of collected data in fabanalytics 2020-01-15 12:48:55 +01:00
Du Peng
db29673a4c remove twitter api for get latest tweet 2020-01-15 12:34:51 +01:00
Sylvain
1f3d9cf88d display upgrade infos directly on the interface 2020-01-14 17:12:36 +01:00
Sylvain
bb48a13f83 health endpoint & automated version check 2020-01-14 14:33:00 +01:00
Sylvain
54be21729b batch delete periodic events 2020-01-07 17:18:49 +01:00
Nicolas Florentin
62c979cfc0 members filters, translations for other languages are still needed 2019-12-20 15:47:42 +01:00
Sylvain
d21f616283 [ongoing] refactoring i18n keys 2019-12-16 16:54:40 +01:00
Sylvain
60755a2c2a Merge remote-tracking branch 'origin/fix-time-now' into dev 2019-12-03 15:51:22 +01:00
Sylvain
64fe68b2b0 icalendar source sync: create/update/delete ical events 2019-12-03 12:16:07 +01:00
Sylvain
5215d0643d Merge branch 'ics' of git.sleede.com:projets/fab-manager into ics 2019-12-03 09:56:37 +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
Sylvain
55d2c88134 delete & sync ical sources 2019-12-02 12:19:30 +01:00
Nicolas Florentin
77cf8c8218 replaces almost all Time.now by DateTime.current 2019-12-02 11:57:25 +01:00
Sylvain
f72ae98109 do not show title if calendar is configured to hide them 2019-11-27 17:50:38 +01:00
Sylvain
85d17d62f3 fix events endpoint 2019-11-27 17:44:01 +01:00
Sylvain
97d93cd622 added a name to imported calendar 2019-11-27 17:39:19 +01:00
Sylvain
baf8cfb487 iCalendar server api & db model 2019-11-27 17:05:19 +01:00
Sylvain
a9b1eabb2c [poc] show google agenda events in the public calendar 2019-11-27 13:51:23 +01:00
Sylvain
eb3c78a61d [poc] show google agenda events in the public calendar 2019-11-26 13:44:43 +01:00
Sylvain
68b17cbe9a Ability to show the scheduled events in the admin calendar 2019-11-25 14:49:39 +01:00
Sylvain
9ec736e6b5 delete recursive slots 2019-11-18 17:29:51 +01:00
Sylvain
26738563bd create reccursive events 2019-11-18 11:50:20 +01:00
Sylvain
a60a39ff9e [ongoing] create multiple availabilities according to UI 2019-11-13 12:13:22 +01:00
Sylvain
1ed3eba129 [feature] export last connection date to members.xlsx 2019-10-29 11:09:17 +01:00
Sylvain
f94d8feba6 [feature] admin can delete an user 2019-10-29 09:59:21 +01:00
Sylvain
193e81e711 Merge branch 'uvsq' into dev 2019-09-30 15:34:21 +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
8eda1e673f Merge remote-tracking branch 'origin/hotfixes' into dev 2019-09-24 14:43:14 +02:00
Nicolas Florentin
c49db3b512 fix api/reservations#index find statistic_profile_id from the user_id because user_id is not a column of reservations table anymore 2019-09-20 15:23:53 +02:00
Sylvain
1fa36d4029 renamed avoir_mode to payment_method 2019-09-17 14:48:06 +02:00
Sylvain
02d28e0b8c improved accounting codes settings page (1 click saves all) + improved export file name 2019-09-16 14:39:47 +02:00
Sylvain
224b0d6dee Merge branch 'sca' into dev 2019-09-12 12:53:56 +02:00
Sylvain
539eb08b89 ability to disable the online payments through an env var 2019-09-11 17:08:00 +02:00
Sylvain
d977838d52 fix tests according to changes for stripe SCA 2019-09-11 16:20:47 +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
04f17d44d8 handle sca in js frontend 2019-09-10 12:46:02 +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
510533e080 handle 2nd confirmation on server + display confirmation modal on the client 2019-09-05 17:17:51 +02:00
Sylvain
12447698f8 collect card details on the client & create a paymentIntent on the server 2019-09-05 16:17:02 +02:00
Sylvain
a0961314a4 [ongoing] upgrade stripe gem & api version to allow SCA 2019-09-05 11:03:22 +02:00
Sylvain
e32825675c [ongoing] fixing accounting export service 2019-07-31 16:52:11 +02:00
Sylvain
12d8c65fa2 async generation of export and download cached csv using hidden iframe 2019-07-31 15:47:02 +02:00
Sylvain
fa6a54a422 export notifications 2019-07-31 12:37:31 +02:00
Sylvain
a7f68b59dd connect the export modal to the api 2019-07-31 12:00:52 +02:00
Sylvain
f772bc3509 api endpoint and worker to export accounting data 2019-07-30 11:43:51 +02:00
Sylvain
f3c433883d [bug] canceled reservation are not removed from statistics (fix #133) 2019-06-13 16:29:12 +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
cfd33c3a52 migrate projects to statistic_profile 2019-06-06 16:34:53 +02:00
Sylvain
fe2a6f7120 migrate trainings to statistic_profile and adjust code 2019-06-06 12:00:21 +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
bd796bc588 fix SubscriptionsController - all tests passing 2019-06-05 07:58:49 +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
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
ffbca98276 [ongoing] fix api to use the invoicing_profile 2019-05-28 16:49:36 +02:00
Sylvain
dd4b6e2cb1 [ongoing] abuses management interface 2019-05-09 18:27:19 +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
3b3e1af822 improved coupon filtering to allow pagination while filtering 2019-04-08 11:00:00 +02:00
Sylvain
44479b5597 allow filtering coupons list 2019-04-04 18:00:19 +02:00
Sylvain
9f8d24ec4f paginate list of coupons 2019-04-04 17:28:29 +02:00
Sylvain
7a317b7e45 [bug] unable to add a file attachment to an event 2019-03-28 11:30:25 +01:00
Sylvain
c356f35f29 add operator_id to invoices 2019-03-18 11:11:09 +01:00
Sylvain
279a958e46 download accounting period archive through interface 2019-02-25 17:22:54 +01:00
Sylvain
6e274afe3b accounting archive: insert code checksum and previous archive checksum 2019-01-31 12:19:50 +01:00
Sylvain
da672ea8b6 Merge branch 'dev' into host 2019-01-21 16:34:06 +01:00
Sylvain
da4c9cf26f [bug] invalid translation of title in new partner modal + refactored plans controller 2019-01-21 16:27:59 +01:00
Sylvain
75eaf4d4d0 improved member autocompletion with multiple words + refactored members controller 2019-01-21 15:17:56 +01:00
Sylvain
62410da9e1 add test for member autocomplete 2019-01-21 11:49:35 +01:00
Sylvain
80aab9f17c fixed: create event with custom price 2019-01-21 11:26:42 +01:00
Sylvain
c4b3c1eab5 [bug] unable to search in user autocomplete 2019-01-21 09:42:51 +01:00
Sylvain
65892684a8 fixed availabilities controller 2019-01-17 16:55:25 +01:00
Sylvain
5a09453ac2 refactored availabilities controller 2019-01-17 16:26:03 +01:00
Sylvain
da25e16c50 refactored events controller 2019-01-17 09:53:28 +01:00
Sylvain
0cd841da33 rubocop api controllers
TODO:
 - events controller
 - availabilies controller
 - members controller
 - plans controller
2019-01-16 16:28:25 +01:00
Sylvain
c6cf86fa5c rubocop api controllers 2019-01-16 13:07:19 +01:00
Sylvain
eb69822ce0 Merge branch 'dev' into host 2019-01-14 15:00:55 +01:00
Sylvain
77797db2f1 display VAT rates history 2019-01-14 15:00:33 +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
a2eb10331e [ongoing] remove invoicing disabled per user 2019-01-10 16:50:54 +01:00
Sylvain
dafeb668e0 Merge branch 'dev' into us78 2019-01-09 12:07:47 +01:00
Sylvain
56829190d6 refactored invoices controller 2019-01-09 12:07:31 +01:00
Sylvain
ccff40b226 handle dates default values and limits in close period modal 2019-01-08 11:19:07 +01:00
Sylvain
12c25389fa Merge branch 'dev' into us78 2019-01-08 09:56:22 +01:00
Sylvain
d4cddc92fb code comments 2019-01-08 09:56:07 +01:00
Sylvain
d8c8e4f72f set default dates in close modal pickers 2019-01-07 17:21:32 +01:00
Sylvain
5b13c59496 list existing closings in close period modal 2019-01-07 16:45:31 +01:00
Sylvain
d89f9e9301 close an accounting period from interface to db through api 2019-01-07 15:33:09 +01:00
Sylvain
b1b5edbfb4 Merge branch 'dev' into us78 2019-01-07 12:48:47 +01:00
Sylvain
4ab0b52294 rubocop controllers 2019-01-07 12:48:22 +01:00
Sylvain
4af3e19cd0 accounting periods API 2019-01-07 12:47:53 +01:00
Sylvain
9d831ef44a rubocop code style 2018-12-27 14:55:55 +01:00
Sylvain
96e980e7b2 removed dead code + improved test suite 2018-12-27 14:53:11 +01:00
Sylvain
10e3d4c3e4 fix update setting from client 2018-12-27 14:15:58 +01:00
Sylvain
ed65976c41 [ongoing] save settings history 2018-12-17 16:02:02 +01:00
Sylvain
d01a93e0f0 [ongoing] members tests 2018-12-12 17:24:31 +01:00
Sylvain
f2eaf4e4e1 improved tests and bug fixes 2018-12-11 17:27:25 +01:00
Sylvain
ad69b647f7 fix reservation + subscription 2018-12-11 15:07:32 +01:00
Sylvain
7822ab4572 [ongoing] fix reservation processes 2018-12-10 17:20:23 +01:00
Sylvain
8e60545753 extend subscription and offer free days will keep track of previous subscription 2018-12-10 13:24:00 +01:00
Sylvain
bef3118649 [ongoing] refactor user.subscriptions to save history
TODO: - refactor subscription.save_with_payment (stripe)
- offer free days
- extend the subscription
- renew a subscription
- buy subscription + reservation
2018-12-06 18:26:01 +01:00
Sylvain
6794b12555 force gawk during elastic upgrade & rubocop 2018-12-03 15:10:04 +01:00
Sylvain
0aa75488fa store and retrieve app version in package.json 2018-11-21 11:42:04 +01:00
Sylvain
6e56ac4286 javascript fixes 2018-11-21 11:32:50 +01:00
Sylvain
1e3066f6f4 Ability to parametrize machines order on the booking page 2018-09-18 15:30:54 +02:00
Sylvain
1b33f3c865 display the machine reservation user name to other members 2018-07-24 12:24:51 +02:00
Sylvain
77e218aa7e fix test suite
- update VCR cassettes
- fix test fixtures to allow pass test suite at the end of the week
2017-12-14 16:40:01 +01:00
Sylvain
a5b718d981 fix tests with invoices 2017-12-14 15:52:34 +01:00
Sylvain
0b3192c3ab [bug] subscription refund generate PDF with wrong dates 2017-12-13 13:16:32 +01:00
Sylvain
12c6cd2a70 Merge branch 'siteswapjuggler-master' into dev
also: align translations and mark missings
2017-11-20 11:43:40 +01:00