Sha256: d3ad704e1e44852b2b8c4cc9f43fd27b7779fb15d1c8b5fb5c7b57170ed91f42

Contents?: true

Size: 1.02 KB

Versions: 2

Compression:

Stored size: 1.02 KB

Contents

class YouTubeG
  module Request #:nodoc:  
    class UserSearch < BaseSearch #:nodoc:      
      attr_reader :max_results                     # max_results
      attr_reader :order_by                        # orderby, ([relevance], viewCount, published, rating)
      attr_reader :offset                          # start-index

      def initialize(params, options={})
        @max_results, @order_by, @offset = nil
        @url = base_url

        if params == :favorites
          @url << "#{options[:user]}/favorites" 
          set_instance_variables(options)
        elsif params[:user]
          @url << "#{params[:user]}/uploads"
          set_instance_variables(params)
        end
        
        @url << build_query_params(to_youtube_params)
      end

      private

      def base_url #:nodoc:
        super << "users/"
      end

      def to_youtube_params #:nodoc:
        {
          'max-results' => @max_results,
          'orderby' => @order_by,
          'start-index' => @offset
        }
      end
    end
    
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
beef-youtube-g-0.4.9.9 lib/youtube_g/request/user_search.rb
youtube-g-0.4.9.9 lib/youtube_g/request/user_search.rb