Sha256: f4e4ce0a25873653b0426dc4727ea00cf7c2b9c24942a18aeef43633defec5f5

Contents?: true

Size: 974 Bytes

Versions: 60

Compression:

Stored size: 974 Bytes

Contents

module OpenStax
  module Accounts
    class SearchAccounts
      
      lev_routine transaction: :no_transaction

      uses_routine SearchLocalAccounts,
                   as: :local_search,
                   translations: { outputs: { type: :verbatim } }
      
      protected

      def exec(*args)
        params = args.last.is_a?(Hash) ? args.pop : {}
        params[:q] ||= args[0]
        params[:ob] ||= args[1]
        params[:pp] ||= args[2]
        params[:p] ||= args[3]

        query = params[:query] || params[:q]
        if !OpenStax::Accounts.configuration.enable_stubbing? && \
           query =~ /email:/
          # Delegate to Accounts
          response = OpenStax::Accounts::Api.search_application_accounts(query)
          OpenStax::Accounts::Api::V1::AccountSearchRepresenter \
            .new(outputs).from_json(response.body)
        else
          # Local search
          run(:local_search, params)
        end

      end

    end
  end
end

Version data entries

60 entries across 60 versions & 1 rubygems

Version Path
openstax_accounts-9.9.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.8.1 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.8.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.7.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.6.1 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.6.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.5.1 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.5.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.4.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.3.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.0.5 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.0.4 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.2.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.0.3 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.1.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.0.2 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.0.1 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-9.0.0 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-8.1.1 app/routines/openstax/accounts/search_accounts.rb
openstax_accounts-8.1.0 app/routines/openstax/accounts/search_accounts.rb