Sha256: fc8f7b826d3896690dfe6f8caced574bf01d73e3811bb241ec9f12152dcd4607

Contents?: true

Size: 1.91 KB

Versions: 3

Compression:

Stored size: 1.91 KB

Contents

module Solidus
  module Returnly
    class << self
      mattr_accessor :return_item_amount_calculator,
                     :return_item_restock_policy,
                     :refunder,
                     :refund_calculator
    end

    def self.configure(&block)
      yield self if block
    end

    class Engine < Rails::Engine
      require 'spree/core'

      engine_name 'returnly'

      config.autoload_paths += %W(#{config.root}/lib)

      # use rspec for tests
      config.generators do |g|
        g.test_framework :rspec
      end

      def self.activate
        Dir.glob(File.join(File.dirname(__FILE__), '../../app/**/*_decorator*.rb')) do |c|
          Rails.configuration.cache_classes ? require(c) : load(c)
        end
      end

      config.to_prepare(&method(:activate).to_proc)

      rake_tasks do
        namespace :returnly do
          require 'securerandom'

          desc "Creates an returnly user and prints the generated API key"
          task install_user: :environment do

            returnly_email = 'api@returnly.com'

            password = SecureRandom.hex(24)

            if (user = Spree::User.find_by email: returnly_email)
              puts "The Returnly User is already generated"
              puts "The Api key is:    #{user.spree_api_key}"
            else
              user = Spree::User.new email: returnly_email, password: password,
                                     password_confirmation: password

              api_key = user.generate_spree_api_key

              if user.save!
                puts "****************************************************"
                puts "Api key Generated #{api_key}"
                puts "Returnly User Password #{password}"
                puts "Returnly User email #{returnly_email}"
                puts "****************************************************"
              end
            end
          end
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
solidus-returnly-0.4.3 lib/solidus/returnly/engine.rb
solidus-returnly-0.4.2 lib/solidus/returnly/engine.rb
solidus-returnly-0.4.1 lib/solidus/returnly/engine.rb