Sha256: 2041f78ec4f74c6f2c095f08ad112d5db0e058260ea25ea657a25c0a8fc6a922

Contents?: true

Size: 716 Bytes

Versions: 1

Compression:

Stored size: 716 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]  = sanatize_value(value)
          list
        end
      end

      def sanatize_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

1 entries across 1 versions & 1 rubygems

Version Path
linkedin-0.3.1 lib/linked_in/search.rb