google_calendar 0.5 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
  }