google_calendar_api_v2 0.1.2 → 0.1.3
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.
|
@@ -9,18 +9,35 @@ module GoogleCalendarApiV2
|
|
|
9
9
|
end
|
|
10
10
|
|
|
11
11
|
def find(calendar_token, url = nil, redirect_count = 0)
|
|
12
|
-
url ||= "/calendar/feeds/default/allcalendars/full/#{calendar_token}?alt=jsonc"
|
|
12
|
+
url ||= "https://www.google.com/calendar/feeds/default/allcalendars/full/#{calendar_token}?alt=jsonc"
|
|
13
13
|
response = @connection.get url, Client::HEADERS
|
|
14
14
|
|
|
15
15
|
raise 'Redirection Loop' if redirect_count > 3
|
|
16
16
|
|
|
17
17
|
if success? response
|
|
18
|
-
|
|
18
|
+
item = JSON.parse(response.body)['data']
|
|
19
|
+
Response::Calendar.new(item, @connection)
|
|
19
20
|
elsif redirect? response
|
|
20
21
|
find(calendar_token, response['location'], redirect_count += 1)
|
|
21
22
|
end
|
|
22
23
|
end
|
|
23
24
|
|
|
25
|
+
def all(url = nil, redirect_count = 0)
|
|
26
|
+
url ||= "https://www.google.com/calendar/feeds/default/allcalendars/full?alt=jsonc"
|
|
27
|
+
response = @connection.get url, Client::HEADERS
|
|
28
|
+
|
|
29
|
+
if success? response
|
|
30
|
+
# Response::Event.new(response, @connection, @calendar)
|
|
31
|
+
if items = JSON.parse(response.body)['data']['items']
|
|
32
|
+
items.map {|item| Response::Calendar.new(item, @connection, @calendar) }
|
|
33
|
+
else
|
|
34
|
+
[]
|
|
35
|
+
end
|
|
36
|
+
elsif redirect? response
|
|
37
|
+
all(response['location'], redirect_count += 1)
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
|
|
24
41
|
def create(params = {}, url = nil, redirect_count = 0)
|
|
25
42
|
url ||= '/calendar/feeds/default/owncalendars/full?alt=jsonc'
|
|
26
43
|
response = @connection.post url,
|
|
@@ -34,7 +51,8 @@ module GoogleCalendarApiV2
|
|
|
34
51
|
raise 'Redirection Loop' if redirect_count > 3
|
|
35
52
|
|
|
36
53
|
if success? response
|
|
37
|
-
|
|
54
|
+
item = JSON.parse(response.body)['data']
|
|
55
|
+
Response::Calendar.new(item, @connection)
|
|
38
56
|
elsif redirect?(response)
|
|
39
57
|
create(params, response['location'], redirect_count += 1)
|
|
40
58
|
end
|
|
@@ -16,12 +16,29 @@ module GoogleCalendarApiV2
|
|
|
16
16
|
raise 'Redirection Loop' if redirect_count > 3
|
|
17
17
|
|
|
18
18
|
if success? response
|
|
19
|
-
|
|
19
|
+
item = JSON.parse(response.body)['data']
|
|
20
|
+
Response::Event.new(item, @connection, @calendar)
|
|
20
21
|
elsif redirect? response
|
|
21
22
|
find(event_token, response['location'], redirect_count += 1)
|
|
22
23
|
end
|
|
23
24
|
end
|
|
24
25
|
|
|
26
|
+
def all(url = nil, redirect_count = 0)
|
|
27
|
+
url ||= "https://www.google.com/calendar/feeds/#{@calendar.token}/private/full?alt=jsonc&futureevents=false"
|
|
28
|
+
response = @connection.get url, Client::HEADERS
|
|
29
|
+
|
|
30
|
+
if success? response
|
|
31
|
+
# Response::Event.new(response, @connection, @calendar)
|
|
32
|
+
if items = JSON.parse(response.body)['data']['items']
|
|
33
|
+
items.map {|item| Response::Event.new(item, @connection, @calendar) }
|
|
34
|
+
else
|
|
35
|
+
[]
|
|
36
|
+
end
|
|
37
|
+
elsif redirect? response
|
|
38
|
+
all(response['location'], redirect_count += 1)
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
25
42
|
def create(params = {}, url = nil, redirect_count = 0)
|
|
26
43
|
url ||= "/calendar/feeds/#{@calendar.token}/private/full?alt=jsonc"
|
|
27
44
|
|
|
@@ -36,7 +53,8 @@ module GoogleCalendarApiV2
|
|
|
36
53
|
raise 'Redirection Loop' if redirect_count > 3
|
|
37
54
|
|
|
38
55
|
if success? response
|
|
39
|
-
|
|
56
|
+
item = JSON.parse(response.body)['data']
|
|
57
|
+
Response::Event.new(item, @connection, @calendar)
|
|
40
58
|
elsif redirect? response
|
|
41
59
|
create(params, response['location'], redirect_count += 1)
|
|
42
60
|
else
|
|
@@ -5,9 +5,9 @@ module GoogleCalendarApiV2
|
|
|
5
5
|
module Base
|
|
6
6
|
attr_reader :response, :attributes
|
|
7
7
|
|
|
8
|
-
def initialize(
|
|
8
|
+
def initialize(item, connection, parent = nil)
|
|
9
9
|
@response, @connection = response, connection
|
|
10
|
-
@attributes =
|
|
10
|
+
@attributes = item
|
|
11
11
|
end
|
|
12
12
|
|
|
13
13
|
def update_attributes(attributes)
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: google_calendar_api_v2
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.3
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,11 +9,11 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2012-
|
|
12
|
+
date: 2012-03-19 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: oauth
|
|
16
|
-
requirement: &
|
|
16
|
+
requirement: &70111195491300 !ruby/object:Gem::Requirement
|
|
17
17
|
none: false
|
|
18
18
|
requirements:
|
|
19
19
|
- - ! '>='
|
|
@@ -21,7 +21,7 @@ dependencies:
|
|
|
21
21
|
version: '0'
|
|
22
22
|
type: :runtime
|
|
23
23
|
prerelease: false
|
|
24
|
-
version_requirements: *
|
|
24
|
+
version_requirements: *70111195491300
|
|
25
25
|
description:
|
|
26
26
|
email: unixcharles@gmail.com
|
|
27
27
|
executables: []
|