Sha256: 51a7a6c94e2b037bbe7a5ab77b3283a840551d0f0f0360e737ecf79be16ab5c0

Contents?: true

Size: 1.48 KB

Versions: 7

Compression:

Stored size: 1.48 KB

Contents

require 'cgi'
require 'rest_client'
require 'happymapper'
require 'nokogiri'


require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'extensions')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'proxy')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'client')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'project')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'story')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'task')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'membership')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'activity')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'iteration')
require File.join(File.dirname(__FILE__), 'pivotal-tracker', 'note')

module PivotalTracker

  # define error types
  class ProjectNotSpecified < StandardError; end

  def self.encode_options(options)
    return nil if !options.is_a?(Hash) || options.empty?

    options_string = []
    options_string << "limit=#{options.delete(:limit)}" if options[:limit]
    options_string << "offset=#{options.delete(:offset)}" if options[:offset]

    filters = []
    options.each do |key, value|
      values = value.is_a?(Array) ? value.map {|x| CGI.escape(x) }.join(',') : CGI.escape(value)
      filters << "#{key}%3A#{values}" # %3A => :
    end
    options_string << "filter=#{filters.join('%20')}" unless filters.empty? # %20 => &amp;

    return "?#{options_string.join('&')}"
  end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
pivotal-tracker-0.2.0 lib/pivotal-tracker.rb
pivotal-tracker-0.1.3 lib/pivotal-tracker.rb
pivotal-tracker-0.1.2 lib/pivotal-tracker.rb
pivotal-tracker-0.1.1 lib/pivotal-tracker.rb
pivotal-tracker-0.1.0.1 lib/pivotal-tracker.rb
pivotal-tracker-0.1.0 lib/pivotal-tracker.rb
pivotal-tracker-0.0.9.1 lib/pivotal-tracker.rb