quickbase 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -33,6 +33,8 @@ or, in your Gemfile
33
33
 
34
34
  quickbase = Quickbase::Connection.new(:apptoken => "apptoken", :dbid => "dbid")
35
35
 
36
+ quickbase.api.do_query(:query => "{'1'.XEX.'123'}", :clist => "1.2", :friendly => "Name.Email", :slist => "1")
37
+
36
38
  quickbase.api.add_record({:name => "John Smith", "6" => "New York City"})
37
39
 
38
40
  quickbase.api.edit_record(6, {:city => "Washington"})
data/lib/classes/api.rb CHANGED
@@ -10,6 +10,8 @@ module Quickbase
10
10
  def do_query(params)
11
11
  params.merge!({:fmt => "structured"})
12
12
  clist = params[:clist].to_s.split(".")
13
+ friendly = params[:friendly].to_s.split(".")
14
+ keys = friendly.empty? ? clist : friendly.map(&:to_sym)
13
15
  response = connection.http.post("API_DoQuery", Quickbase::Helper.hash_to_xml(params))
14
16
  array_of_records = response.find("//record[@type='array']/record")
15
17
  records = array_of_records.empty? ? response.find("//record") : array_of_records
@@ -18,7 +20,9 @@ module Quickbase
18
20
  records.map{|record|
19
21
  array_of_fields = record.find("f[@type='array']/f")
20
22
  fields = array_of_fields.empty? ? record.find("f") : array_of_fields
21
- Hash[fields.to_enum(:each_with_index).collect{|field,index| Hash[clist[index],field.content] }.map(&:flatten)]
23
+ Hash[fields.to_enum(:each_with_index).collect{|field,index|
24
+ Hash[keys[index],field.content]
25
+ }.map(&:flatten)]
22
26
  }
23
27
  end
24
28
 
data/quickbase.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = %q{quickbase}
3
- s.version = "0.0.1"
3
+ s.version = "0.0.2"
4
4
 
5
5
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
6
6
  s.authors = ["Artem Kalinchuk"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quickbase
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-09-19 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: libxml-ruby
16
- requirement: &4708360 !ruby/object:Gem::Requirement
16
+ requirement: &9277530 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *4708360
24
+ version_requirements: *9277530
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: httparty
27
- requirement: &4707830 !ruby/object:Gem::Requirement
27
+ requirement: &9277250 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *4707830
35
+ version_requirements: *9277250
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: activesupport
38
- requirement: &4707380 !ruby/object:Gem::Requirement
38
+ requirement: &9276910 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *4707380
46
+ version_requirements: *9276910
47
47
  description: The Quickbase Gem provides integration access to the Intuit Quickbase
48
48
  API.
49
49
  email: artem9@gmail.com