mirror of
https://github.com/LaCasemate/fab-manager.git
synced 2025-01-29 18:52:22 +01:00
fix payment on site modal in case of payment schedule
This commit is contained in:
parent
30c1c91590
commit
23e38238c8
@ -40,11 +40,7 @@ class API::PaymentsController < API::ApiController
|
||||
end
|
||||
|
||||
def check_plan
|
||||
plan_id = if params[:cart_items][:subscription]
|
||||
subscription_params[:plan_id]
|
||||
elsif params[:cart_items][:reservation]
|
||||
reservation_params[:plan_id]
|
||||
end
|
||||
plan_id = (cart_items_params[:subscription][:plan_id] if cart_items_params[:subscription])
|
||||
|
||||
return unless plan_id
|
||||
|
||||
@ -106,7 +102,7 @@ class API::PaymentsController < API::ApiController
|
||||
end
|
||||
|
||||
def reservation_params
|
||||
params[:cart_items].require(:reservation).permit(:reservable_id, :reservable_type, :plan_id, :nb_reserve_places,
|
||||
params[:cart_items].require(:reservation).permit(:reservable_id, :reservable_type, :nb_reserve_places,
|
||||
tickets_attributes: %i[event_price_category_id booked],
|
||||
slots_attributes: %i[id start_at end_at availability_id offered])
|
||||
end
|
||||
@ -116,9 +112,12 @@ class API::PaymentsController < API::ApiController
|
||||
end
|
||||
|
||||
def cart_items_params
|
||||
params[:cart_items].require(:reservation).permit(:reservable_id, :reservable_type, :plan_id, :user_id, :nb_reserve_places,
|
||||
tickets_attributes: %i[event_price_category_id booked],
|
||||
slots_attributes: %i[id start_at end_at availability_id offered])
|
||||
params.require(:cart_items).permit(subscription: :plan_id,
|
||||
reservation: [
|
||||
:reservable_id, :reservable_type, :nb_reserve_places,
|
||||
tickets_attributes: %i[event_price_category_id booked],
|
||||
slots_attributes: %i[id start_at end_at availability_id offered]
|
||||
])
|
||||
end
|
||||
|
||||
def coupon_params
|
||||
|
@ -7,7 +7,7 @@ import { PaymentConfirmation } from '../../../models/payment';
|
||||
import StripeAPI from '../../../api/stripe';
|
||||
|
||||
interface StripeFormProps extends GatewayFormProps {
|
||||
onSuccess: (result: SetupIntent|PaymentConfirmation|any) => void,
|
||||
onSuccess: (result: SetupIntent|PaymentConfirmation) => void,
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -724,7 +724,7 @@ Application.Directives.directive('cart', ['$rootScope', '$uibModal', 'dialogs',
|
||||
return Price.compute(mkCartItems(items, '')).$promise;
|
||||
},
|
||||
cartItems () {
|
||||
return mkCartItems(items, 'card');
|
||||
return mkCartItems(items, '');
|
||||
},
|
||||
wallet () {
|
||||
return Wallet.getWalletByUser({ user_id: $scope.user.id }).$promise;
|
||||
@ -770,7 +770,7 @@ Application.Directives.directive('cart', ['$rootScope', '$uibModal', 'dialogs',
|
||||
|
||||
// how should we collect payments for the payment schedule
|
||||
$scope.method = {
|
||||
payment_method: settings.payment_gateway
|
||||
payment_method: 'card'
|
||||
};
|
||||
|
||||
// "valid" Button label
|
||||
@ -787,7 +787,7 @@ Application.Directives.directive('cart', ['$rootScope', '$uibModal', 'dialogs',
|
||||
* Callback to process the local payment, triggered on button click
|
||||
*/
|
||||
$scope.ok = function () {
|
||||
if ($scope.schedule && $scope.method.payment_method === settings.payment_gateway) {
|
||||
if ($scope.schedule && $scope.method.payment_method === 'card') {
|
||||
// check that the online payment is enabled
|
||||
if (settings.online_payment_module !== 'true') {
|
||||
return growl.error(_t('app.shared.cart.online_payment_disabled'));
|
||||
@ -865,7 +865,7 @@ Application.Directives.directive('cart', ['$rootScope', '$uibModal', 'dialogs',
|
||||
if (AuthService.isAuthorized(['admin', 'manager']) && $rootScope.currentUser.id !== cartItems.customer_id) {
|
||||
method = $scope.method.payment_method;
|
||||
} else {
|
||||
method = settings.payment_gateway;
|
||||
method = 'card';
|
||||
}
|
||||
}
|
||||
if ($scope.amount > 0) {
|
||||
|
@ -22,10 +22,10 @@
|
||||
<select id="method"
|
||||
class="form-control m-b"
|
||||
ng-model="method.payment_method">
|
||||
<option value="stripe" translate>{{ 'app.shared.valid_reservation_modal.method_stripe' }}</option>
|
||||
<option value="card" translate>{{ 'app.shared.valid_reservation_modal.method_card' }}</option>
|
||||
<option value="check" translate>{{ 'app.shared.valid_reservation_modal.method_check' }}</option>
|
||||
</select>
|
||||
<p ng-show="method.payment_method == 'stripe'" translate>{{ 'app.shared.valid_reservation_modal.stripe_collection_info' }}</p>
|
||||
<p ng-show="method.payment_method == 'card'" translate>{{ 'app.shared.valid_reservation_modal.card_collection_info' }}</p>
|
||||
<p ng-show="method.payment_method == 'check'" translate translate-values="{DEADLINES: schedule.items.length}">{{ 'app.shared.valid_reservation_modal.check_collection_info' }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -49,8 +49,8 @@
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-info" ng-click="ok()" ng-disabled="attempting" ng-bind-html="validButtonName"></button>
|
||||
<button class="btn btn-default" ng-click="cancel()" translate>{{ 'app.shared.buttons.cancel' }}</button>
|
||||
<payment-modal is-open="isOpenStripeModal"
|
||||
toggle-modal="toggleStripeModal"
|
||||
<payment-modal is-open="isOpenOnlinePaymentModal"
|
||||
toggle-modal="toggleOnlinePaymentModal"
|
||||
after-success="afterCreatePaymentSchedule"
|
||||
cart-items="cartItems"
|
||||
current-user="currentUser"
|
||||
|
@ -128,9 +128,9 @@ de:
|
||||
subscription_confirmation: "Abonnementbestätigung"
|
||||
here_is_the_subscription_summary: "Here is the subscription summary:"
|
||||
payment_method: "Payment method"
|
||||
method_stripe: "Online by card"
|
||||
method_card: "Online by card"
|
||||
method_check: "By check"
|
||||
stripe_collection_info: "By validating, you'll be prompted for the member's card number. This card will be automatically charged at the deadlines."
|
||||
card_collection_info: "By validating, you'll be prompted for the member's card number. This card will be automatically charged at the deadlines."
|
||||
check_collection_info: "By validating, you confirm that you have {DEADLINES} checks, allowing you to collect all the monthly payments."
|
||||
#event edition form
|
||||
event:
|
||||
|
@ -128,9 +128,9 @@ en:
|
||||
subscription_confirmation: "Subscription confirmation"
|
||||
here_is_the_subscription_summary: "Here is the subscription summary:"
|
||||
payment_method: "Payment method"
|
||||
method_stripe: "Online by card"
|
||||
method_card: "Online by card"
|
||||
method_check: "By check"
|
||||
stripe_collection_info: "By validating, you'll be prompted for the member's card number. This card will be automatically charged at the deadlines."
|
||||
card_collection_info: "By validating, you'll be prompted for the member's card number. This card will be automatically charged at the deadlines."
|
||||
check_collection_info: "By validating, you confirm that you have {DEADLINES} checks, allowing you to collect all the monthly payments."
|
||||
#event edition form
|
||||
event:
|
||||
|
@ -128,9 +128,9 @@ es:
|
||||
subscription_confirmation: "Subscription confirmation"
|
||||
here_is_the_subscription_summary: "Here is the subscription summary:"
|
||||
payment_method: "Payment method"
|
||||
method_stripe: "Online by card"
|
||||
method_card: "Online by card"
|
||||
method_check: "By check"
|
||||
stripe_collection_info: "By validating, you'll be prompted for the member's card number. This card will be automatically charged at the deadlines."
|
||||
card_collection_info: "By validating, you'll be prompted for the member's card number. This card will be automatically charged at the deadlines."
|
||||
check_collection_info: "By validating, you confirm that you have {DEADLINES} checks, allowing you to collect all the monthly payments."
|
||||
#event edition form
|
||||
event:
|
||||
|
@ -128,9 +128,9 @@ fr:
|
||||
subscription_confirmation: "Validation de l'abonnement"
|
||||
here_is_the_subscription_summary: "Voici le récapitulatif de l'abonnement :"
|
||||
payment_method: "Moyen de paiement"
|
||||
method_stripe: "Carte bancaire en ligne"
|
||||
method_card: "Carte bancaire en ligne"
|
||||
method_check: "Par chèques"
|
||||
stripe_collection_info: "En validant, vous serez invité à saisir les informations de carte bancaire du membre. Cette carte sera prélevée automatiquement aux échéances."
|
||||
card_collection_info: "En validant, vous serez invité à saisir les informations de carte bancaire du membre. Cette carte sera prélevée automatiquement aux échéances."
|
||||
check_collection_info: "En validant, vous confirmez être en possession de {DEADLINES} chèques permettant d'encaisser l'ensemble des mensualité."
|
||||
#event edition form
|
||||
event:
|
||||
|
@ -128,9 +128,9 @@ pt:
|
||||
subscription_confirmation: "Inscrição confirmada"
|
||||
here_is_the_subscription_summary: "Here is the subscription summary:"
|
||||
payment_method: "Payment method"
|
||||
method_stripe: "Online by card"
|
||||
method_card: "Online by card"
|
||||
method_check: "By check"
|
||||
stripe_collection_info: "By validating, you'll be prompted for the member's card number. This card will be automatically charged at the deadlines."
|
||||
card_collection_info: "By validating, you'll be prompted for the member's card number. This card will be automatically charged at the deadlines."
|
||||
check_collection_info: "By validating, you confirm that you have {DEADLINES} checks, allowing you to collect all the monthly payments."
|
||||
#event edition form
|
||||
event:
|
||||
|
@ -128,9 +128,9 @@ zu:
|
||||
subscription_confirmation: "crwdns20920:0crwdne20920:0"
|
||||
here_is_the_subscription_summary: "crwdns20922:0crwdne20922:0"
|
||||
payment_method: "crwdns20924:0crwdne20924:0"
|
||||
method_stripe: "crwdns20926:0crwdne20926:0"
|
||||
method_card: "crwdns20926:0crwdne20926:0"
|
||||
method_check: "crwdns20928:0crwdne20928:0"
|
||||
stripe_collection_info: "crwdns20930:0crwdne20930:0"
|
||||
card_collection_info: "crwdns20930:0crwdne20930:0"
|
||||
check_collection_info: "crwdns20932:0{DEADLINES}crwdne20932:0"
|
||||
#event edition form
|
||||
event:
|
||||
|
Loading…
x
Reference in New Issue
Block a user