module Newznab::Api::Search

Module to hold search specific functions

Public Instance Methods

Private Instance Methods

_parse_search_args(query: nil, group: [], limit: nil, cat: [], attrs: [], extended: false, delete: false, maxage: nil, offset: nil) click to toggle source

@macro search.params @return [Hash] @since 0.1.0

# File lib/newznab/api/search.rb, line 154
def _parse_search_args(query: nil, group: [], limit: nil, cat: [], attrs: [], extended: false, delete: false, maxage: nil, offset: nil)
  params = {
      extended: extended ? '1' : '0',
      del: delete ? '1' : '0',
  }

  unless query.nil?
    params[:q] = query.to_s.encode('utf-8')
  end

  unless maxage.nil?
    params[:maxage] = maxage.to_i
  end

  unless offset.nil?
    params[:offset] = offset.to_i
  end

  unless limit.nil?
    params[:limit] = limit.to_i
  end

  unless group.empty?
    params[:group] = group.collect { |o| o.to_s.encode('utf-8') }.join(',')
  end

  unless cat.empty?
    params[:cat] = cat.collect { |o| o.to_s.encode('utf-8') }.join(',')
  end

  unless attrs.empty?
    params[:group] = attrs.collect { |o| o.to_s.encode('utf-8') }.join(',')
  end

  params
end