Sha256: 90f90270553ac1dbb12b4953c27865ac6b1db3a4adc2994e5b6792246a846cd2

Contents?: true

Size: 717 Bytes

Versions: 2

Compression:

Stored size: 717 Bytes

Contents

module LinkedIn

  module Search

    def search(options={})
      path = "/people-search"

      options = { :keywords => options } if options.is_a?(String)
      options = format_options_for_query(options)

      result_json = get(to_uri(path, options))

      Mash.from_json(result_json)
    end

    private

      def format_options_for_query(opts)
        opts.inject({}) do |list, kv|
          key, value = kv.first.to_s.gsub("_","-"), kv.last
          list[key]  = sanitize_value(value)
          list
        end
      end

      def sanitize_value(value)
        value = value.join("+") if value.is_a?(Array)
        value = value.gsub(" ", "+") if value.is_a?(String)
        value
      end

  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
linkedin-0.3.3 lib/linked_in/search.rb
linkedin-0.3.2 lib/linked_in/search.rb