google_calendar 0.5 → 0.5.1

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.
@@ -1,5 +1,5 @@
1
1
  #
2
- # Uncomment the LOAD_PATH lines if you want to run against the
2
+ # Uncomment the LOAD_PATH lines if you want to run against the
3
3
  # local version of the gem.
4
4
  #
5
5
  # $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), 'lib'))
@@ -9,7 +9,7 @@ require 'rubygems'
9
9
  require 'google_calendar'
10
10
 
11
11
  # Create an instance of the calendar.
12
- cal = Google::Calendar.new(:client_id => YOUR_CLIENT_ID,
12
+ cal = Google::Calendar.new(:client_id => YOUR_CLIENT_ID,
13
13
  :client_secret => YOUR_SECRET,
14
14
  :calendar => YOUR_CALENDAR_ID,
15
15
  :redirect_url => "urn:ietf:wg:oauth:2.0:oob" # this is what Google uses for 'applications'
@@ -47,6 +47,14 @@ event = cal.create_event do |e|
47
47
  e.title = 'A Cool Event'
48
48
  e.start_time = Time.now
49
49
  e.end_time = Time.now + (60 * 60) # seconds * min
50
+ e.extended_properties = {
51
+ 'private' => {
52
+ 'private_prop' => 'private_val'
53
+ },
54
+ 'shared' => {
55
+ 'shared_prop' => 'shared_val'
56
+ }
57
+ }
50
58
  end
51
59
 
52
60
  puts event
@@ -59,8 +67,13 @@ end
59
67
 
60
68
  puts event
61
69
 
70
+ # Find through the custom property
71
+ event = cal.find_events_by_extended_properties({'private' => { 'private_prop' => 'private_val'}})
72
+
73
+ puts event
74
+
62
75
  # All events
63
76
  puts cal.events
64
77
 
65
78
  # Query events
66
- puts cal.find_events('your search string')
79
+ puts cal.find_events('some query here')
@@ -0,0 +1,9 @@
1
+ {
2
+ "kind": "calendar#event",
3
+ "etag": "\"2864417954210000\"",
4
+ "id": "5hskl88u70fdekmted80rkjut4_20150701T010000Z",
5
+ "status": "cancelled",
6
+ "recurringEventId": "5hskl88u70fdekmted80rkjut4_R20150527T010000",
7
+ "originalStartTime": {"dateTime": "2015-07-01T10:00:00+09:00"}
8
+ }
9
+
@@ -1,31 +1,36 @@
1
1
  {
2
- "status": "confirmed",
3
- "kind": "calendar#event",
2
+ "status": "confirmed",
3
+ "kind": "calendar#event",
4
4
  "end": {
5
5
  "dateTime": "2014-11-16T21:17:31-08:00"
6
- },
7
- "description": "A New Event",
8
- "created": "2014-11-17T03:19:37.000Z",
9
- "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
6
+ },
7
+ "description": "A New Event",
8
+ "created": "2014-11-17T03:19:37.000Z",
9
+ "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
10
10
  "reminders": {
11
11
  "useDefault": true
12
- },
13
- "htmlLink": "https://www.google.com/calendar/event?eid=aslkjhdfasod89f7aspdfghsdlkfghsdlkjghsdfgposdr7gpsdorigh",
14
- "sequence": 0,
15
- "updated": "2014-11-17T03:19:37.944Z",
16
- "summary": "New Event",
12
+ },
13
+ "htmlLink": "https://www.google.com/calendar/event?eid=aslkjhdfasod89f7aspdfghsdlkfghsdlkjghsdfgposdr7gpsdorigh",
14
+ "sequence": 0,
15
+ "updated": "2014-11-17T03:19:37.944Z",
16
+ "summary": "New Event",
17
17
  "start": {
18
18
  "dateTime": "2014-11-16T20:17:31-08:00"
19
- },
20
- "etag": "\"123456728900000\"",
19
+ },
20
+ "etag": "\"123456728900000\"",
21
21
  "organizer": {
22
- "self": true,
23
- "displayName": "Some Person",
22
+ "self": true,
23
+ "displayName": "Some Person",
24
24
  "email": "klei8jnelo09nflqehnvfzipgs@group.calendar.google.com"
25
- },
25
+ },
26
26
  "creator": {
27
- "displayName": "Some Person",
27
+ "displayName": "Some Person",
28
28
  "email": "some.person@gmail.com"
29
- },
30
- "id": "fhru34kt6ikmr20knd2456l08n"
29
+ },
30
+ "id": "fhru34kt6ikmr20knd2456l08n",
31
+ "extendedProperties": {
32
+ "shared": {
33
+ "key": "value"
34
+ }
35
+ }
31
36
  }
@@ -1,117 +1,132 @@
1
1
  {
2
- "nextPageToken": "CkkKO183NTM0Mmdobzc0cDNhYmE0ODUyajZiOWs2bDBqMmJhMTZsMjNjYmExOHAyajhoOXA3NG80YWRoaDZrGAEggICA7NHLrqgTGg0IABIAGIjyiZnV_cEC",
3
- "kind": "calendar#events",
4
- "defaultReminders": [],
5
- "description": "My Personal Events Calenda",
2
+ "nextPageToken": "CkkKO183NTM0Mmdobzc0cDNhYmE0ODUyajZiOWs2bDBqMmJhMTZsMjNjYmExOHAyajhoOXA3NG80YWRoaDZrGAEggICA7NHLrqgTGg0IABIAGIjyiZnV_cEC",
3
+ "kind": "calendar#events",
4
+ "defaultReminders": [],
5
+ "description": "My Personal Events Calenda",
6
6
  "items": [
7
7
  {
8
- "status": "confirmed",
9
- "kind": "calendar#event",
8
+ "status": "confirmed",
9
+ "kind": "calendar#event",
10
10
  "end": {
11
- "timeZone": "America/Los_Angeles",
11
+ "timeZone": "America/Los_Angeles",
12
12
  "dateTime": "2011-10-03T10:30:00-07:00"
13
- },
14
- "created": "2011-04-04T23:52:57.000Z",
15
- "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
13
+ },
14
+ "created": "2011-04-04T23:52:57.000Z",
15
+ "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
16
16
  "reminders": {
17
17
  "useDefault": true
18
- },
19
- "htmlLink": "https://www.google.com/calendar/event?eid=HikHg9bQzIk2dWtpdTRwM3Zpazd0cHMwcjRfMjAxMTEwMDNUMTYzMDAwWiBncWViMGk2djczN2tmdTVtZDBmM2V1a2psZ0Bn",
20
- "sequence": 2,
21
- "updated": "2012-01-09T19:39:49.000Z",
22
- "summary": "Staff Meeting",
18
+ },
19
+ "htmlLink": "https://www.google.com/calendar/event?eid=HikHg9bQzIk2dWtpdTRwM3Zpazd0cHMwcjRfMjAxMTEwMDNUMTYzMDAwWiBncWViMGk2djczN2tmdTVtZDBmM2V1a2psZ0Bn",
20
+ "sequence": 2,
21
+ "updated": "2012-01-09T19:39:49.000Z",
22
+ "summary": "Staff Meeting",
23
23
  "recurrence": [
24
24
  "RRULE:FREQ=WEEKLY;WKST=SU;UNTIL=20120109T075959Z;BYDAY=MO"
25
- ],
25
+ ],
26
26
  "start": {
27
- "timeZone": "America/Los_Angeles",
27
+ "timeZone": "America/Los_Angeles",
28
28
  "dateTime": "2011-10-03T09:30:00-07:00"
29
- },
30
- "etag": "\"2652275978000000\"",
29
+ },
30
+ "etag": "\"2652275978000000\"",
31
31
  "organizer": {
32
- "self": true,
33
- "displayName": "Some Person",
32
+ "self": true,
33
+ "displayName": "Some Person",
34
34
  "email": "klei8jnelo09nflqehnvfzipgs@group.calendar.google.com"
35
- },
35
+ },
36
36
  "creator": {
37
- "displayName": "Some Person",
37
+ "displayName": "Some Person",
38
38
  "email": "some.person@gmail.com"
39
- },
40
- "id": "fhru34kt6ikmr20knd2456l08n"
41
- },
39
+ },
40
+ "id": "fhru34kt6ikmr20knd2456l08n",
41
+ "extendedProperties": {
42
+ "shared": {
43
+ "key": "value"
44
+ }
45
+ }
46
+ },
42
47
  {
43
- "status": "confirmed",
44
- "kind": "calendar#event",
48
+ "status": "confirmed",
49
+ "kind": "calendar#event",
45
50
  "end": {
46
- "timeZone": "America/Los_Angeles",
51
+ "timeZone": "America/Los_Angeles",
47
52
  "dateTime": "2011-10-03T11:00:00-07:00"
48
- },
49
- "created": "2010-06-01T03:53:00.000Z",
50
- "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
53
+ },
54
+ "created": "2010-06-01T03:53:00.000Z",
55
+ "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
51
56
  "reminders": {
52
57
  "useDefault": true
53
- },
54
- "htmlLink": "https://www.google.com/calendar/event?eidi1wegp0jHmAFucjlhMXY0c2RqMjBpYXNlNmNfMjAxMTEwMDNUMTczMDAwWiBncWViMGk2djczN2tmdTVtZDBmM2V1a2psZ0Bn",
55
- "sequence": 2,
56
- "updated": "2012-01-13T18:24:01.000Z",
57
- "summary": "Skype Meeting",
58
+ },
59
+ "htmlLink": "https://www.google.com/calendar/event?eidi1wegp0jHmAFucjlhMXY0c2RqMjBpYXNlNmNfMjAxMTEwMDNUMTczMDAwWiBncWViMGk2djczN2tmdTVtZDBmM2V1a2psZ0Bn",
60
+ "sequence": 2,
61
+ "updated": "2012-01-13T18:24:01.000Z",
62
+ "summary": "Skype Meeting",
58
63
  "recurrence": [
59
64
  "RRULE:FREQ=WEEKLY;UNTIL=20120109T183000Z"
60
- ],
65
+ ],
61
66
  "start": {
62
- "timeZone": "America/Los_Angeles",
67
+ "timeZone": "America/Los_Angeles",
63
68
  "dateTime": "2011-10-03T10:30:00-07:00"
64
- },
65
- "etag": "\"2652958082000000\"",
69
+ },
70
+ "etag": "\"2652958082000000\"",
66
71
  "organizer": {
67
- "self": true,
68
- "displayName": "Some Person",
72
+ "self": true,
73
+ "displayName": "Some Person",
69
74
  "email": "some.person@gmail.com"
70
- },
75
+ },
71
76
  "creator": {
72
- "displayName": "Some Person",
77
+ "displayName": "Some Person",
73
78
  "email": "some.person@gmail.com"
74
- },
75
- "id": "fhru34kt6ikmr20knd2456l08n"
76
- },
79
+ },
80
+ "id": "fhru34kt6ikmr20knd2456l08n",
81
+ "extendedProperties": {
82
+ "shared": {
83
+ "key": "value"
84
+ }
85
+ }
86
+ },
77
87
  {
78
- "status": "confirmed",
79
- "kind": "calendar#event",
88
+ "status": "confirmed",
89
+ "kind": "calendar#event",
80
90
  "end": {
81
- "timeZone": "America/Los_Angeles",
91
+ "timeZone": "America/Los_Angeles",
82
92
  "dateTime": "2012-01-09T10:15:00-08:00"
83
- },
84
- "created": "2012-01-09T19:39:50.000Z",
93
+ },
94
+ "created": "2012-01-09T19:39:50.000Z",
85
95
  "reminders": {
86
96
  "useDefault": true
87
- },
88
- "htmlLink": "https://www.google.com/calendar/event?eid=uIf5JKmaPdhvNzRwM2FiYTQ4NTJqNmI5azZsMGoyYmExNmwyM2NiYTE4cDJqOGg5cDc0bzRhZGhoNmtfMjAxMjAxMDlUMTcxNTAwWiBncWViMGk2djczN2tmdTVtZDBmM2V1a2psZ0Bn",
89
- "sequence": 3,
90
- "updated": "2012-01-23T17:38:31.000Z",
91
- "summary": "Sales Staff Meeting",
97
+ },
98
+ "htmlLink": "https://www.google.com/calendar/event?eid=uIf5JKmaPdhvNzRwM2FiYTQ4NTJqNmI5azZsMGoyYmExNmwyM2NiYTE4cDJqOGg5cDc0bzRhZGhoNmtfMjAxMjAxMDlUMTcxNTAwWiBncWViMGk2djczN2tmdTVtZDBmM2V1a2psZ0Bn",
99
+ "sequence": 3,
100
+ "updated": "2012-01-23T17:38:31.000Z",
101
+ "summary": "Sales Staff Meeting",
92
102
  "recurrence": [
93
103
  "RRULE:FREQ=WEEKLY;WKST=SU;UNTIL=20120123T171459Z;BYDAY=MO"
94
- ],
104
+ ],
95
105
  "start": {
96
- "timeZone": "America/Los_Angeles",
106
+ "timeZone": "America/Los_Angeles",
97
107
  "dateTime": "2012-01-09T09:15:00-08:00"
98
- },
99
- "etag": "\"2654680622000000\"",
108
+ },
109
+ "etag": "\"2654680622000000\"",
100
110
  "organizer": {
101
- "self": true,
102
- "displayName": "Some Person",
111
+ "self": true,
112
+ "displayName": "Some Person",
103
113
  "email": "some.person@gmail.com"
104
- },
114
+ },
105
115
  "creator": {
106
- "displayName": "Some Person",
116
+ "displayName": "Some Person",
107
117
  "email": "some.person@gmail.com"
108
- },
109
- "id": "_75342gho74p3aba4852j6b9k6l0j2ba16l23cba18p2j8h9p74o4adhh6k"
118
+ },
119
+ "id": "_75342gho74p3aba4852j6b9k6l0j2ba16l23cba18p2j8h9p74o4adhh6k",
120
+ "extendedProperties": {
121
+ "shared": {
122
+ "key": "value"
123
+ }
124
+ }
110
125
  }
111
- ],
112
- "updated": "2014-11-15T22:32:46.965Z",
113
- "summary": "My Events Calendar",
114
- "etag": "\"1234567890123000\"",
115
- "timeZone": "America/Los_Angeles",
126
+ ],
127
+ "updated": "2014-11-15T22:32:46.965Z",
128
+ "summary": "My Events Calendar",
129
+ "etag": "\"1234567890123000\"",
130
+ "timeZone": "America/Los_Angeles",
116
131
  "accessRole": "owner"
117
132
  }
@@ -1,31 +1,36 @@
1
1
  {
2
- "status": "confirmed",
3
- "kind": "calendar#event",
2
+ "status": "confirmed",
3
+ "kind": "calendar#event",
4
4
  "end": {
5
5
  "date": "2008-09-24T11:00:00-07:00"
6
- },
7
- "description": "Test Event",
8
- "created": "2008-09-18T21:17:11.000Z",
9
- "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
6
+ },
7
+ "description": "Test Event",
8
+ "created": "2008-09-18T21:17:11.000Z",
9
+ "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
10
10
  "reminders": {
11
11
  "useDefault": true
12
- },
13
- "htmlLink": "https://www.google.com/calendar/event?eid=hJo0SgXn9qMwOHJjYWJpNnBhNTQ5dHRqbGsgZ3FlYjBpNnY3MzdrZnU1bWQwZjNldWtqbGdAZw",
14
- "sequence": 1,
15
- "updated": "2008-10-24T23:08:09.010Z",
16
- "summary": "This is a test event",
12
+ },
13
+ "htmlLink": "https://www.google.com/calendar/event?eid=hJo0SgXn9qMwOHJjYWJpNnBhNTQ5dHRqbGsgZ3FlYjBpNnY3MzdrZnU1bWQwZjNldWtqbGdAZw",
14
+ "sequence": 1,
15
+ "updated": "2008-10-24T23:08:09.010Z",
16
+ "summary": "This is a test event",
17
17
  "start": {
18
18
  "date": "2008-09-24T10:30:00-07:00"
19
- },
20
- "etag": "\"2449779378020000\"",
19
+ },
20
+ "etag": "\"2449779378020000\"",
21
21
  "organizer": {
22
- "self": true,
23
- "displayName": "Some Person",
22
+ "self": true,
23
+ "displayName": "Some Person",
24
24
  "email": "some.person@gmail.com"
25
- },
25
+ },
26
26
  "creator": {
27
- "displayName": "Some Person",
27
+ "displayName": "Some Person",
28
28
  "email": "some.person@gmail.com"
29
- },
30
- "id": "fhru34kt6ikmr20knd2456l10n"
29
+ },
30
+ "id": "fhru34kt6ikmr20knd2456l10n",
31
+ "extendedProperties": {
32
+ "shared": {
33
+ "key": "value"
34
+ }
35
+ }
31
36
  }
@@ -1,31 +1,36 @@
1
1
  {
2
- "status": "confirmed",
3
- "kind": "calendar#event",
2
+ "status": "confirmed",
3
+ "kind": "calendar#event",
4
4
  "end": {
5
5
  "dateTime": "2008-09-24T11:00:00-07:00"
6
- },
7
- "description": "Test Event",
8
- "created": "2008-09-18T21:17:11.000Z",
9
- "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
6
+ },
7
+ "description": "Test Event",
8
+ "created": "2008-09-18T21:17:11.000Z",
9
+ "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
10
10
  "reminders": {
11
11
  "useDefault": true
12
- },
13
- "htmlLink": "https://www.google.com/calendar/event?eid=hJo0SgXn9qMwOHJjYWJpNnBhNTQ5dHRqbGsgZ3FlYjBpNnY3MzdrZnU1bWQwZjNldWtqbGdAZw",
14
- "sequence": 1,
15
- "updated": "2008-10-24T23:08:09.010Z",
16
- "summary": "This is a test event",
12
+ },
13
+ "htmlLink": "https://www.google.com/calendar/event?eid=hJo0SgXn9qMwOHJjYWJpNnBhNTQ5dHRqbGsgZ3FlYjBpNnY3MzdrZnU1bWQwZjNldWtqbGdAZw",
14
+ "sequence": 1,
15
+ "updated": "2008-10-24T23:08:09.010Z",
16
+ "summary": "This is a test event",
17
17
  "start": {
18
18
  "dateTime": "2008-09-24T10:30:00-07:00"
19
- },
20
- "etag": "\"2449779378020000\"",
19
+ },
20
+ "etag": "\"2449779378020000\"",
21
21
  "organizer": {
22
- "self": true,
23
- "displayName": "Some Person",
22
+ "self": true,
23
+ "displayName": "Some Person",
24
24
  "email": "some.person@gmail.com"
25
- },
25
+ },
26
26
  "creator": {
27
- "displayName": "Some Person",
27
+ "displayName": "Some Person",
28
28
  "email": "some.person@gmail.com"
29
- },
30
- "id": "fhru34kt6ikmr20knd2456l08n"
29
+ },
30
+ "id": "fhru34kt6ikmr20knd2456l08n",
31
+ "extendedProperties": {
32
+ "shared": {
33
+ "key": "value"
34
+ }
35
+ }
31
36
  }
@@ -1,31 +1,36 @@
1
1
  {
2
- "status": "confirmed",
3
- "kind": "calendar#event",
2
+ "status": "confirmed",
3
+ "kind": "calendar#event",
4
4
  "end": {
5
5
  "dateTimes": "2008-09-24T11:00:00-07:00"
6
- },
7
- "description": "Test Event",
8
- "created": "2008-09-18T21:17:11.000Z",
9
- "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
6
+ },
7
+ "description": "Test Event",
8
+ "created": "2008-09-18T21:17:11.000Z",
9
+ "iCalUID": "fhru34kt6ikmr20knd2456l08n@google.com",
10
10
  "reminders": {
11
11
  "useDefault": true
12
- },
13
- "htmlLink": "https://www.google.com/calendar/event?eid=hJo0SgXn9qMwOHJjYWJpNnBhNTQ5dHRqbGsgZ3FlYjBpNnY3MzdrZnU1bWQwZjNldWtqbGdAZw",
14
- "sequence": 1,
15
- "updated": "2008-10-24T23:08:09.010Z",
16
- "summary": "This is a test event",
12
+ },
13
+ "htmlLink": "https://www.google.com/calendar/event?eid=hJo0SgXn9qMwOHJjYWJpNnBhNTQ5dHRqbGsgZ3FlYjBpNnY3MzdrZnU1bWQwZjNldWtqbGdAZw",
14
+ "sequence": 1,
15
+ "updated": "2008-10-24T23:08:09.010Z",
16
+ "summary": "This is a test event",
17
17
  "start": {
18
18
  "dateTimes": "2008-09-24T10:30:00-07:00"
19
- },
20
- "etag": "\"2449779378020000\"",
19
+ },
20
+ "etag": "\"2449779378020000\"",
21
21
  "organizer": {
22
- "self": true,
23
- "displayName": "Some Person",
22
+ "self": true,
23
+ "displayName": "Some Person",
24
24
  "email": "some.person@gmail.com"
25
- },
25
+ },
26
26
  "creator": {
27
- "displayName": "Some Person",
27
+ "displayName": "Some Person",
28
28
  "email": "some.person@gmail.com"
29
- },
30
- "id": "fhru34kt6ikmr20knd2456l12n"
29
+ },
30
+ "id": "fhru34kt6ikmr20knd2456l12n",
31
+ "extendedProperties": {
32
+ "shared": {
33
+ "key": "value"
34
+ }
35
+ }
31
36
  }