seat_geek 0.10.4 → 0.10.5
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.
- checksums.yaml +4 -4
- data/README.md +2 -1
- data/lib/seat_geek/build_query.rb +14 -47
- data/lib/seat_geek/query/attendee_count.rb +13 -0
- data/lib/seat_geek/query/city.rb +13 -0
- data/lib/seat_geek/query/event_type.rb +13 -0
- data/lib/seat_geek/query/state.rb +13 -0
- data/lib/seat_geek/query/travel_dates.rb +14 -0
- data/lib/seat_geek/version.rb +1 -1
- data/lib/seat_geek.rb +7 -0
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fd7c9487bb6d6881ac7fde52a8e4dc2b4bcd0016
|
4
|
+
data.tar.gz: 0f0742be1cc00024f17366e055710c34ba35f210
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d86fd4f5db4fc276a1446713929507924485065a106e7cdb35b194d37956c986daad5287b4febccf6fc69a9683106efcd53ef60f410000c804078f4bad727aa
|
7
|
+
data.tar.gz: a4660b63e91fb8dea4651f42ff34ab6580bd12415d9f6c5079c3d02a7f3f1af10e836e0be1eb6eaa21822e46ff4e30b04cc72598fab448375810aad156f08427
|
data/README.md
CHANGED
@@ -24,7 +24,8 @@ SeatGeek.get_events()
|
|
24
24
|
Accepts 1 parameter
|
25
25
|
|
26
26
|
params = { travel_dates: {arrive: '2016-03-15', depart: '2016-03-19'},
|
27
|
-
state: 'ny',
|
27
|
+
state: 'ny', #either state or city
|
28
|
+
city: 'new-york-city', #either state or city
|
28
29
|
attendee_count: num,
|
29
30
|
event_type: 'taxonomie',
|
30
31
|
seat_geek_partner_id: 1234,
|
@@ -5,56 +5,23 @@ module SeatGeek
|
|
5
5
|
if !base_url.match(/\?/)
|
6
6
|
query = "?"
|
7
7
|
end
|
8
|
-
if options[:travel_dates]
|
9
|
-
query = query + travel_dates_query(options[:travel_dates])
|
10
|
-
end
|
11
|
-
if options[:state]
|
12
|
-
query = query + location_query(state: options[:state])
|
13
|
-
end
|
14
|
-
if options[:city]
|
15
|
-
query = query + location_query(city: options[:city])
|
16
|
-
end
|
17
|
-
if options[:attendee_count]
|
18
|
-
query = query + attendee_count_query(options[:attendee_count])
|
19
|
-
end
|
20
|
-
if options[:event_type]
|
21
|
-
query = query + taxonomy_query(options[:event_type])
|
22
|
-
end
|
23
|
-
if options[:taxonomies]
|
24
|
-
query = query + taxonomies
|
25
|
-
end
|
26
|
-
base_url + query
|
27
|
-
end
|
28
8
|
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
"&venue.state=#{state}"
|
43
|
-
elsif city
|
44
|
-
"&venue.city=#{city}"
|
9
|
+
# 'http://api.seatgeek.com/2/events?datetime_utc.gte=2012-04-01&datetime_utc.lte=2012-04-30'
|
10
|
+
# 'http://api.seatgeek.com/2/events?venue.state=NY'
|
11
|
+
# 'http://api.seatgeek.com/2/events?venue.city=new-york'
|
12
|
+
# http://api.seatgeek.com/2/events?listing_count.gt=0
|
13
|
+
# 'http://api.seatgeek.com/2/events?taxonomies.name=sports'
|
14
|
+
query_klass = {travel_dates: SeatGeek::Query::TravelDates,
|
15
|
+
attendee_count: SeatGeek::Query::AttendeeCount,
|
16
|
+
event_type: SeatGeek::Query::EventType,
|
17
|
+
state: SeatGeek::Query::State,
|
18
|
+
city: SeatGeek::Query::City,
|
19
|
+
}
|
20
|
+
options.keys.each do |name|
|
21
|
+
query = query + query_klass[name].new(options[name]).query if query_klass.keys.include?(name)
|
45
22
|
end
|
46
|
-
end
|
47
23
|
|
48
|
-
|
49
|
-
def self.attendee_count_query(count)
|
50
|
-
"&listing_count.gt=#{count}"
|
51
|
-
end
|
52
|
-
|
53
|
-
# Sporting Events
|
54
|
-
# $ curl 'http://api.seatgeek.com/2/events?taxonomies.name=sports'
|
55
|
-
def self.taxonomy_query(type)
|
56
|
-
"&taxonomies.name=#{type}"
|
24
|
+
base_url + query
|
57
25
|
end
|
58
|
-
|
59
26
|
end
|
60
27
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module SeatGeek
|
2
|
+
module Query
|
3
|
+
class TravelDates
|
4
|
+
def initialize(travel_dates)
|
5
|
+
@arrive = travel_dates.fetch(:arrive) { return }
|
6
|
+
@depart = travel_dates.fetch(:depart) { return }
|
7
|
+
end
|
8
|
+
|
9
|
+
def query
|
10
|
+
"&datetime_utc.gte=#{@arrive}&datetime_utc.lte=#{@depart}"
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/lib/seat_geek/version.rb
CHANGED
data/lib/seat_geek.rb
CHANGED
@@ -2,7 +2,14 @@ require 'typhoeus'
|
|
2
2
|
require 'oj'
|
3
3
|
|
4
4
|
require "seat_geek/version"
|
5
|
+
|
5
6
|
require "seat_geek/build_query"
|
7
|
+
require "seat_geek/query/travel_dates"
|
8
|
+
require "seat_geek/query/attendee_count"
|
9
|
+
require "seat_geek/query/event_type"
|
10
|
+
require "seat_geek/query/state"
|
11
|
+
require "seat_geek/query/city"
|
12
|
+
|
6
13
|
require "seat_geek/taxonomies/tree"
|
7
14
|
require "seat_geek/taxonomies/sports"
|
8
15
|
require "seat_geek/taxonomies/concert"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: seat_geek
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.
|
4
|
+
version: 0.10.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Moon
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -144,6 +144,11 @@ files:
|
|
144
144
|
- lib/seat_geek/Taxonomies/theater.rb
|
145
145
|
- lib/seat_geek/Taxonomies/tree.rb
|
146
146
|
- lib/seat_geek/build_query.rb
|
147
|
+
- lib/seat_geek/query/attendee_count.rb
|
148
|
+
- lib/seat_geek/query/city.rb
|
149
|
+
- lib/seat_geek/query/event_type.rb
|
150
|
+
- lib/seat_geek/query/state.rb
|
151
|
+
- lib/seat_geek/query/travel_dates.rb
|
147
152
|
- lib/seat_geek/version.rb
|
148
153
|
- seat_geek.gemspec
|
149
154
|
homepage: https://github.com/jmoon90/seat_geek
|