diff --git a/app/controllers/patrons_controller.rb b/app/controllers/patrons_controller.rb index 0b4d1ba..f1ea435 100644 --- a/app/controllers/patrons_controller.rb +++ b/app/controllers/patrons_controller.rb @@ -3,6 +3,7 @@ module DiscoursePatrons class PatronsController < ::ApplicationController skip_before_action :verify_authenticity_token, only: [:create] + before_action :set_api_key def index result = { email: '' } @@ -15,14 +16,12 @@ module DiscoursePatrons end def show - result = { } + result = Stripe::PaymentIntent.retrieve(params[:pid]) render json: result end def create - ::Stripe.api_key = SiteSetting.discourse_patrons_secret_key - begin response = ::Stripe::PaymentIntent.create( @@ -55,6 +54,10 @@ module DiscoursePatrons private + def set_api_key + ::Stripe.api_key = SiteSetting.discourse_patrons_secret_key + end + def param_currency_to_number params[:amount].to_s.sub('.', '').to_i end diff --git a/assets/javascripts/discourse/routes/patrons-show.js.es6 b/assets/javascripts/discourse/routes/patrons-show.js.es6 new file mode 100644 index 0000000..36794bb --- /dev/null +++ b/assets/javascripts/discourse/routes/patrons-show.js.es6 @@ -0,0 +1,7 @@ +import { ajax } from "discourse/lib/ajax"; + +export default Discourse.Route.extend({ + model(params) { + return ajax(`/patrons/${params.pid}`, { method: "get" }); + } +}); diff --git a/assets/javascripts/discourse/templates/admin/plugins-discourse-patrons.hbs b/assets/javascripts/discourse/templates/admin/plugins-discourse-patrons.hbs index bd931fe..805b53d 100644 --- a/assets/javascripts/discourse/templates/admin/plugins-discourse-patrons.hbs +++ b/assets/javascripts/discourse/templates/admin/plugins-discourse-patrons.hbs @@ -20,7 +20,11 @@ {{payment.username}} {{/link-to}} -
| Payment ID | +{{model.id}} | +
| Amount | +{{model.amount}} | +