zendesk-api 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Rakefile CHANGED
@@ -2,13 +2,14 @@ require 'rubygems'
2
2
  require 'rake'
3
3
  require 'echoe'
4
4
 
5
- Echoe.new('zendesk-api', '0.3.1') do |p|
5
+ Echoe.new('zendesk-api', '0.3.2') do |p|
6
6
  p.description = "RubyGem wrapper for REST API to http://zendesk.com"
7
7
  p.author = "Peter Ericson"
8
8
  p.url = "http://github.com/pgericson/zendesk-api"
9
9
  p.email = "pg.ericson@gmail.com"
10
10
  p.ignore_pattern = ["tmp/*", "script/*"]
11
11
  p.development_dependencies = []
12
+ p.runtime_dependencies = ["crack >=0.1.8", "activesupport >=2.3"]
12
13
  end
13
14
  # how to build the new gem ( I can't remember so here it is for all time)
14
15
  # rake build_gemspec
@@ -1,6 +1,11 @@
1
1
  require 'rubygems'
2
2
  require 'curb'
3
- require 'active_resource'
3
+ require 'crack'
4
+ gem 'activesupport'
5
+ require 'active_support'
6
+ require 'active_support/version'
7
+ # need to pull in the pieces we want with Rails 3
8
+ require 'active_support/core_ext' if ActiveSupport::VERSION::MAJOR == 3
4
9
 
5
10
  module Zendesk
6
11
  class Error < StandardError; end
@@ -8,6 +13,7 @@ module Zendesk
8
13
  end
9
14
 
10
15
  require 'zendesk/user'
16
+ require 'zendesk/user_identity'
11
17
  require 'zendesk/organization'
12
18
  require 'zendesk/group'
13
19
  require 'zendesk/ticket'
@@ -56,6 +56,9 @@ module Zendesk
56
56
  if body.empty? or body[:list]
57
57
  curl.url = curl.url + params_list(body[:list]) if body[:list]
58
58
  curl.perform
59
+ elsif body[:post]
60
+ curl.headers = "Content-Type: application/xml"
61
+ curl.http_post
59
62
  elsif body[:create]
60
63
  curl.headers = "Content-Type: application/xml"
61
64
  curl.http_post(string_body(body))
@@ -72,20 +75,23 @@ module Zendesk
72
75
  if curl.body_str == "<error>Couldn't authenticate you</error>"
73
76
  return "string" #raise CouldNotAuthenticateYou
74
77
  end
75
- Response.new(curl)
78
+ Response.new(curl, format)
76
79
  end
77
80
 
78
81
  class Response
79
82
 
80
- attr_reader :status, :body, :headers_raw, :headers, :curl, :url
83
+ attr_reader :status, :body, :headers_raw, :headers, :curl, :url, :data
81
84
 
82
- def initialize(curl)
85
+ def initialize(curl, format)
86
+ @format=format
83
87
  @curl = curl
84
88
  @url = curl.url
85
89
  @status = curl.response_code
86
90
  @body = curl.body_str
87
91
  @headers_raw = curl.header_str
88
92
  parse_headers
93
+ # parse the data coming back
94
+ @data = Crack::XML.parse(@body || "") if @format == "xml"
89
95
  end
90
96
 
91
97
  def parse_headers
@@ -104,6 +110,7 @@ module Zendesk
104
110
  end
105
111
 
106
112
  include Zendesk::User
113
+ include Zendesk::UserIdentity
107
114
  include Zendesk::Organization
108
115
  include Zendesk::Group
109
116
  include Zendesk::Ticket
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{zendesk-api}
5
- s.version = "0.3.1"
5
+ s.version = "0.3.2"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
- s.authors = ["Peter Ericson"]
9
- s.date = %q{2010-10-05}
8
+ s.authors = ["Peter Glerup Ericson"]
9
+ s.date = %q{2010-12-13}
10
10
  s.description = %q{RubyGem wrapper for REST API to http://zendesk.com}
11
11
  s.email = %q{pg.ericson@gmail.com}
12
12
  s.extra_rdoc_files = ["README.markdown", "lib/console.rb", "lib/zendesk-api.rb", "lib/zendesk.rb", "lib/zendesk/attachment.rb", "lib/zendesk/entry.rb", "lib/zendesk/forum.rb", "lib/zendesk/group.rb", "lib/zendesk/main.rb", "lib/zendesk/organization.rb", "lib/zendesk/search.rb", "lib/zendesk/tag.rb", "lib/zendesk/ticket.rb", "lib/zendesk/user.rb"]
@@ -23,8 +23,14 @@ Gem::Specification.new do |s|
23
23
  s.specification_version = 3
24
24
 
25
25
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
26
+ s.add_runtime_dependency(%q<crack>, [">= 0.1.8"])
27
+ s.add_runtime_dependency(%q<activesupport>, [">= 2.3"])
26
28
  else
29
+ s.add_dependency(%q<crack>, [">= 0.1.8"])
30
+ s.add_dependency(%q<activesupport>, [">= 2.3"])
27
31
  end
28
32
  else
33
+ s.add_dependency(%q<crack>, [">= 0.1.8"])
34
+ s.add_dependency(%q<activesupport>, [">= 2.3"])
29
35
  end
30
36
  end
metadata CHANGED
@@ -1,24 +1,54 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zendesk-api
3
3
  version: !ruby/object:Gem::Version
4
- hash: 17
4
+ hash: 23
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 3
9
- - 1
10
- version: 0.3.1
9
+ - 2
10
+ version: 0.3.2
11
11
  platform: ruby
12
12
  authors:
13
- - Peter Ericson
13
+ - Peter Glerup Ericson
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-10-05 00:00:00 +02:00
18
+ date: 2010-12-13 00:00:00 +01:00
19
19
  default_executable:
20
- dependencies: []
21
-
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: crack
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 11
30
+ segments:
31
+ - 0
32
+ - 1
33
+ - 8
34
+ version: 0.1.8
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: activesupport
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 5
46
+ segments:
47
+ - 2
48
+ - 3
49
+ version: "2.3"
50
+ type: :runtime
51
+ version_requirements: *id002
22
52
  description: RubyGem wrapper for REST API to http://zendesk.com
23
53
  email: pg.ericson@gmail.com
24
54
  executables: []