2019-07-30 21:29:24 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2020-06-12 20:03:43 +00:00
|
|
|
# License: AGPL-3.0-or-later WITH WTO-AP-3.0-or-later
|
|
|
|
# Full license explanation at https://github.com/houdiniproject/houdini/blob/master/LICENSE
|
2018-03-25 17:30:42 +00:00
|
|
|
module Nonprofits
|
2019-07-30 21:29:24 +00:00
|
|
|
class RefundsController < ApplicationController
|
2020-05-11 18:38:50 +00:00
|
|
|
include Controllers::Nonprofit::Current
|
|
|
|
include Controllers::Nonprofit::Authorization
|
2018-03-25 17:30:42 +00:00
|
|
|
|
2019-07-30 21:29:24 +00:00
|
|
|
before_action :authenticate_nonprofit_user!
|
2018-03-25 17:30:42 +00:00
|
|
|
|
2019-07-30 21:29:24 +00:00
|
|
|
# post /charges/:charge_id/refunds
|
|
|
|
def create
|
2019-11-05 17:43:48 +00:00
|
|
|
charge = Qx.select('*').from('charges').where(id: charge_params[:charge_id]).execute.first
|
2019-07-30 21:29:24 +00:00
|
|
|
params[:refund][:user_id] = current_user.id
|
2019-11-05 17:43:48 +00:00
|
|
|
render_json { InsertRefunds.with_stripe(charge, charge_params['refund']) }
|
2019-07-30 21:29:24 +00:00
|
|
|
end
|
2018-03-25 17:30:42 +00:00
|
|
|
|
2019-07-30 21:29:24 +00:00
|
|
|
def index
|
|
|
|
charge = current_nonprofit.charges.find(params[:charge_id])
|
|
|
|
@refunds = charge.refunds
|
2021-02-12 00:31:11 +00:00
|
|
|
render locals: {refunds: @refund}
|
2019-07-30 21:29:24 +00:00
|
|
|
end
|
2019-11-05 17:43:48 +00:00
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def charge_params
|
|
|
|
params.require(:charge_id, refund: [:amount])
|
|
|
|
end
|
2019-07-30 21:29:24 +00:00
|
|
|
end
|
2018-03-25 17:30:42 +00:00
|
|
|
end
|