Sha256: 5699cec4a955c766f0075866a0cd890e48c0639f388bf0bf9b7851b2013febe0

Contents?: true

Size: 996 Bytes

Versions: 6

Compression:

Stored size: 996 Bytes

Contents

# frozen_string_literal: true

# rubocop:disable Lint/HandleExceptions
begin
  require "braintree"
rescue LoadError
end

begin
  require "stripe"
  require "stripe_event"
rescue LoadError
end

begin
  require "paddle_pay"
rescue LoadError
end
# rubocop:enable Lint/HandleExceptions

module Pay
  class Engine < ::Rails::Engine
    engine_name "pay"

    initializer "pay.processors" do |app|
      # Include processor backends
      require "pay/stripe" if defined? ::Stripe
      require "pay/braintree" if defined? ::Braintree
      require "pay/paddle" if defined? ::PaddlePay

      if Pay.automount_routes
        app.routes.append do
          mount Pay::Engine, at: Pay.routes_path, as: "pay"
        end
      end
    end

    config.to_prepare do
      Pay::Stripe.setup if defined? ::Stripe
      Pay::Braintree.setup if defined? ::Braintree
      Pay::Paddle.setup if defined? ::PaddlePay

      Pay.charge_model.include Pay::Receipts if defined? ::Receipts::Receipt
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
pay-2.4.4 lib/pay/engine.rb
pay-2.4.3 lib/pay/engine.rb
pay-2.4.2 lib/pay/engine.rb
pay-2.4.0 lib/pay/engine.rb
pay-2.3.1 lib/pay/engine.rb
pay-2.3.0 lib/pay/engine.rb