social_stream-events 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (145) hide show
  1. data/GPL Affero license +663 -0
  2. data/Gemfile +9 -0
  3. data/README.rdoc +6 -0
  4. data/Rakefile +29 -0
  5. data/app/assets/images/btn/btn_certificate.png +0 -0
  6. data/app/assets/images/btn/btn_certificates.png +0 -0
  7. data/app/assets/images/btn/btn_edit.png +0 -0
  8. data/app/assets/images/btn/btn_embebed.png +0 -0
  9. data/app/assets/images/btn/btn_event.png +0 -0
  10. data/app/assets/images/btn/btn_outline.png +0 -0
  11. data/app/assets/images/btn/event.png +0 -0
  12. data/app/assets/images/btn/flyer.png +0 -0
  13. data/app/assets/images/btn/keynote.png +0 -0
  14. data/app/assets/images/btn/live.png +0 -0
  15. data/app/assets/images/btn/time.png +0 -0
  16. data/app/assets/images/btn/trash.png +0 -0
  17. data/app/assets/images/icons/IconsByGlyphish.txt +1 -0
  18. data/app/assets/images/icons/down.png +0 -0
  19. data/app/assets/images/icons/search.png +0 -0
  20. data/app/assets/images/icons/up.png +0 -0
  21. data/app/assets/images/logos/actor/event.png +0 -0
  22. data/app/assets/images/logos/contact/event.png +0 -0
  23. data/app/assets/images/logos/original/event.png +0 -0
  24. data/app/assets/images/logos/profile/event.png +0 -0
  25. data/app/assets/images/logos/representation/event.png +0 -0
  26. data/app/assets/images/tab_bottom.png +0 -0
  27. data/app/assets/javascripts/schedule.js +123 -0
  28. data/app/assets/javascripts/settings.js +20 -0
  29. data/app/assets/javascripts/social_stream-events.js +5 -0
  30. data/app/assets/stylesheets/activities.css +4 -0
  31. data/app/assets/stylesheets/fullcalendar.css +621 -0
  32. data/app/assets/stylesheets/fullcalendar.print.css +61 -0
  33. data/app/assets/stylesheets/settings.css +4 -0
  34. data/app/assets/stylesheets/social_stream-events.css +262 -0
  35. data/app/assets/stylesheets/tie.css +4 -0
  36. data/app/assets/stylesheets/users.css +4 -0
  37. data/app/controllers/activities_controller.rb +42 -0
  38. data/app/controllers/agendas_controller.rb +54 -0
  39. data/app/controllers/calendar_events_controller.rb +157 -0
  40. data/app/controllers/events_controller.rb +85 -0
  41. data/app/controllers/sessions_controller.rb +133 -0
  42. data/app/controllers/settings_controller.rb +70 -0
  43. data/app/helpers/event_helper.rb +12 -0
  44. data/app/models/agenda.rb +55 -0
  45. data/app/models/calendar_event.rb +191 -0
  46. data/app/models/calendar_event_series.rb +126 -0
  47. data/app/models/event.rb +131 -0
  48. data/app/models/session.rb +22 -0
  49. data/app/views/activities/_activity.html.erb +5 -0
  50. data/app/views/activities/_child.html.erb +18 -0
  51. data/app/views/activities/_comments.html.erb +3 -0
  52. data/app/views/activities/_index.html.erb +95 -0
  53. data/app/views/activities/_new.html.erb +29 -0
  54. data/app/views/activities/_options.html.erb +15 -0
  55. data/app/views/activities/_root.html.erb +37 -0
  56. data/app/views/activities/_wall.html.erb +5 -0
  57. data/app/views/activities/_walls.html.erb +34 -0
  58. data/app/views/activities/documents.js.erb +1 -0
  59. data/app/views/activities/index.js.erb +1 -0
  60. data/app/views/agendas/_agenda.html.erb +1 -0
  61. data/app/views/agendas/_edit.html.erb +136 -0
  62. data/app/views/agendas/_schedule.html.erb +19 -0
  63. data/app/views/agendas/_show.html.erb +81 -0
  64. data/app/views/agendas/_show_day.html.erb +6 -0
  65. data/app/views/agendas/edit.html.erb +24 -0
  66. data/app/views/agendas/event.html.erb +1 -0
  67. data/app/views/agendas/index.html.erb +0 -0
  68. data/app/views/agendas/show.html.erb +25 -0
  69. data/app/views/calendar_events/_calendar.html.erb +0 -0
  70. data/app/views/calendar_events/_edit_form.html.erb +58 -0
  71. data/app/views/calendar_events/_form.html.erb +65 -0
  72. data/app/views/calendar_events/available.html.erb +81 -0
  73. data/app/views/calendar_events/create.js.erb +18 -0
  74. data/app/views/calendar_events/edit.js.erb +1 -0
  75. data/app/views/calendar_events/index.html.erb +162 -0
  76. data/app/views/calendar_events/move.js.erb +0 -0
  77. data/app/views/calendar_events/new.js.erb +9 -0
  78. data/app/views/calendar_events/resize.js.erb +0 -0
  79. data/app/views/calendar_events/schedule.html.erb +143 -0
  80. data/app/views/documents/_mediawall.html.erb +111 -0
  81. data/app/views/events/_event.html.erb +10 -0
  82. data/app/views/events/_fields.html.erb +5 -0
  83. data/app/views/events/_form.html.erb +12 -0
  84. data/app/views/events/_jquery.html.erb +125 -0
  85. data/app/views/events/_manage.html.erb +35 -0
  86. data/app/views/events/_new.html.erb +2 -0
  87. data/app/views/events/_sessions_edit.html.erb +46 -0
  88. data/app/views/events/_sidebar_cloud.html.erb +27 -0
  89. data/app/views/events/_sidebar_index.html.erb +1 -0
  90. data/app/views/events/_sidebar_show.html.erb +5 -0
  91. data/app/views/events/agendas.html +1 -0
  92. data/app/views/events/edit.html.erb +12 -0
  93. data/app/views/events/index.html.erb +30 -0
  94. data/app/views/events/manage.html.erb +69 -0
  95. data/app/views/events/manage.js.erb +1 -0
  96. data/app/views/events/show.html.erb +34 -0
  97. data/app/views/kaminari/_first_page.html.erb +11 -0
  98. data/app/views/kaminari/_gap.html.erb +8 -0
  99. data/app/views/kaminari/_last_page.html.erb +11 -0
  100. data/app/views/kaminari/_next_page.html.erb +11 -0
  101. data/app/views/kaminari/_page.html.erb +12 -0
  102. data/app/views/kaminari/_paginator.html.erb +23 -0
  103. data/app/views/kaminari/_prev_page.html.erb +11 -0
  104. data/app/views/profiles/_outline.html.erb +81 -0
  105. data/app/views/profiles/_profile.html.erb +40 -0
  106. data/app/views/sessions/_form.html.erb +41 -0
  107. data/app/views/sessions/_new.html.erb +63 -0
  108. data/app/views/sessions/_session.html.erb +1 -0
  109. data/app/views/sessions/_show.html.erb +27 -0
  110. data/app/views/sessions/create.html.erb +3 -0
  111. data/app/views/sessions/create.js.erb +1 -0
  112. data/app/views/sessions/destroy.js.erb +2 -0
  113. data/app/views/sessions/edit.html.erb +27 -0
  114. data/app/views/sessions/index.html.erb +1 -0
  115. data/app/views/sessions/index.js.erb +1 -0
  116. data/app/views/sessions/new.html.erb +27 -0
  117. data/app/views/settings/_contacto.html.erb +24 -0
  118. data/app/views/settings/_header.html.erb +8 -0
  119. data/app/views/settings/_index.html.erb +16 -0
  120. data/app/views/settings/_manage.html.erb +25 -0
  121. data/app/views/settings/_settings.html.erb +49 -0
  122. data/app/views/settings/delete_relation.js.erb +3 -0
  123. data/app/views/settings/index.html.erb +38 -0
  124. data/app/views/settings/manage.html.erb +31 -0
  125. data/app/views/settings/show.html.erb +15 -0
  126. data/app/views/settings/update_relation.js.erb +1 -0
  127. data/app/views/toolbar/_home.html.erb +11 -0
  128. data/app/views/toolbar/_logo.html.erb +23 -0
  129. data/app/views/toolbar/_organizer.html.erb +25 -0
  130. data/app/views/toolbar/_profile.html.erb +21 -0
  131. data/app/views/toolbar/_sponsor.html.erb +18 -0
  132. data/app/views/toolbar/_suscribed.html.erb +17 -0
  133. data/app/views/users/_index.html.erb +33 -0
  134. data/app/views/users/index.html.erb +46 -0
  135. data/config/locales/en.yml +97 -0
  136. data/config/routes.rb +46 -0
  137. data/db/20110615143707_create_social_stream_events.rb +54 -0
  138. data/lib/generators/social_stream/events/install_generator.rb +24 -0
  139. data/lib/social_stream-events.rb +15 -0
  140. data/lib/social_stream/events/engine.rb +8 -0
  141. data/lib/social_stream/migrations/events.rb +25 -0
  142. data/social_stream-events.gemspec +22 -0
  143. data/vendor/assets/javascripts/fullcalendar.js +5208 -0
  144. data/vendor/assets/javascripts/gcal.js +112 -0
  145. metadata +272 -0
@@ -0,0 +1,112 @@
1
+ /*
2
+ * FullCalendar v1.5.1 Google Calendar Plugin
3
+ *
4
+ * Copyright (c) 2011 Adam Shaw
5
+ * Dual licensed under the MIT and GPL licenses, located in
6
+ * MIT-LICENSE.txt and GPL-LICENSE.txt respectively.
7
+ *
8
+ * Date: Sat Apr 9 14:09:51 2011 -0700
9
+ *
10
+ */
11
+
12
+ (function($) {
13
+
14
+
15
+ var fc = $.fullCalendar;
16
+ var formatDate = fc.formatDate;
17
+ var parseISO8601 = fc.parseISO8601;
18
+ var addDays = fc.addDays;
19
+ var applyAll = fc.applyAll;
20
+
21
+
22
+ fc.sourceNormalizers.push(function(sourceOptions) {
23
+ if (sourceOptions.dataType == 'gcal' ||
24
+ sourceOptions.dataType === undefined &&
25
+ (sourceOptions.url || '').match(/^(http|https):\/\/www.google.com\/calendar\/feeds\//)) {
26
+ sourceOptions.dataType = 'gcal';
27
+ if (sourceOptions.editable === undefined) {
28
+ sourceOptions.editable = false;
29
+ }
30
+ }
31
+ });
32
+
33
+
34
+ fc.sourceFetchers.push(function(sourceOptions, start, end) {
35
+ if (sourceOptions.dataType == 'gcal') {
36
+ return transformOptions(sourceOptions, start, end);
37
+ }
38
+ });
39
+
40
+
41
+ function transformOptions(sourceOptions, start, end) {
42
+
43
+ var success = sourceOptions.success;
44
+ var data = $.extend({}, sourceOptions.data || {}, {
45
+ 'start-min': formatDate(start, 'u'),
46
+ 'start-max': formatDate(end, 'u'),
47
+ 'singleevents': true,
48
+ 'max-results': 9999
49
+ });
50
+
51
+ var ctz = sourceOptions.currentTimezone;
52
+ if (ctz) {
53
+ data.ctz = ctz = ctz.replace(' ', '_');
54
+ }
55
+
56
+ return $.extend({}, sourceOptions, {
57
+ url: sourceOptions.url.replace(/\/basic$/, '/full') + '?alt=json-in-script&callback=?',
58
+ dataType: 'jsonp',
59
+ data: data,
60
+ startParam: false,
61
+ endParam: false,
62
+ success: function(data) {
63
+ var events = [];
64
+ if (data.feed.entry) {
65
+ $.each(data.feed.entry, function(i, entry) {
66
+ var startStr = entry['gd$when'][0]['startTime'];
67
+ var start = parseISO8601(startStr, true);
68
+ var end = parseISO8601(entry['gd$when'][0]['endTime'], true);
69
+ var allDay = startStr.indexOf('T') == -1;
70
+ var url;
71
+ $.each(entry.link, function(i, link) {
72
+ if (link.type == 'text/html') {
73
+ url = link.href;
74
+ if (ctz) {
75
+ url += (url.indexOf('?') == -1 ? '?' : '&') + 'ctz=' + ctz;
76
+ }
77
+ }
78
+ });
79
+ if (allDay) {
80
+ addDays(end, -1); // make inclusive
81
+ }
82
+ events.push({
83
+ id: entry['gCal$uid']['value'],
84
+ title: entry['title']['$t'],
85
+ url: url,
86
+ start: start,
87
+ end: end,
88
+ allDay: allDay,
89
+ location: entry['gd$where'][0]['valueString'],
90
+ description: entry['content']['$t']
91
+ });
92
+ });
93
+ }
94
+ var args = [events].concat(Array.prototype.slice.call(arguments, 1));
95
+ var res = applyAll(success, this, args);
96
+ if ($.isArray(res)) {
97
+ return res;
98
+ }
99
+ return events;
100
+ }
101
+ });
102
+
103
+ }
104
+
105
+
106
+ // legacy
107
+ fc.gcalFeed = function(url, sourceOptions) {
108
+ return $.extend({}, sourceOptions, { url: url, dataType: 'gcal' });
109
+ };
110
+
111
+
112
+ })(jQuery);
metadata ADDED
@@ -0,0 +1,272 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: social_stream-events
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 0.0.1
6
+ platform: ruby
7
+ authors:
8
+ - Diego Carrera
9
+ - GING - DIT - UPM
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+
14
+ date: 2011-09-06 00:00:00 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: social_stream-base
18
+ requirement: &id001 !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ~>
22
+ - !ruby/object:Gem::Version
23
+ version: 0.7.10
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
28
+ name: sqlite3-ruby
29
+ requirement: &id002 !ruby/object:Gem::Requirement
30
+ none: false
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: "0"
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: *id002
38
+ - !ruby/object:Gem::Dependency
39
+ name: rspec-rails
40
+ requirement: &id003 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 2.6.0
46
+ type: :development
47
+ prerelease: false
48
+ version_requirements: *id003
49
+ - !ruby/object:Gem::Dependency
50
+ name: factory_girl
51
+ requirement: &id004 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ~>
55
+ - !ruby/object:Gem::Version
56
+ version: 1.3.2
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: *id004
60
+ - !ruby/object:Gem::Dependency
61
+ name: forgery
62
+ requirement: &id005 !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ~>
66
+ - !ruby/object:Gem::Version
67
+ version: 0.3.6
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: *id005
71
+ - !ruby/object:Gem::Dependency
72
+ name: capybara
73
+ requirement: &id006 !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ~>
77
+ - !ruby/object:Gem::Version
78
+ version: 0.3.9
79
+ type: :development
80
+ prerelease: false
81
+ version_requirements: *id006
82
+ description: |-
83
+ Social Stream is a Ruby on Rails engine providing your application with social networking features and activity streams.
84
+
85
+ This gem allow you to add events and videoconferences as new social stream activity.
86
+ email: social-stream.dit.upm.es
87
+ executables: []
88
+
89
+ extensions: []
90
+
91
+ extra_rdoc_files: []
92
+
93
+ files:
94
+ - GPL Affero license
95
+ - Gemfile
96
+ - README.rdoc
97
+ - Rakefile
98
+ - app/assets/images/btn/btn_certificate.png
99
+ - app/assets/images/btn/btn_certificates.png
100
+ - app/assets/images/btn/btn_edit.png
101
+ - app/assets/images/btn/btn_embebed.png
102
+ - app/assets/images/btn/btn_event.png
103
+ - app/assets/images/btn/btn_outline.png
104
+ - app/assets/images/btn/event.png
105
+ - app/assets/images/btn/flyer.png
106
+ - app/assets/images/btn/keynote.png
107
+ - app/assets/images/btn/live.png
108
+ - app/assets/images/btn/time.png
109
+ - app/assets/images/btn/trash.png
110
+ - app/assets/images/icons/IconsByGlyphish.txt
111
+ - app/assets/images/icons/down.png
112
+ - app/assets/images/icons/search.png
113
+ - app/assets/images/icons/up.png
114
+ - app/assets/images/logos/actor/event.png
115
+ - app/assets/images/logos/contact/event.png
116
+ - app/assets/images/logos/original/event.png
117
+ - app/assets/images/logos/profile/event.png
118
+ - app/assets/images/logos/representation/event.png
119
+ - app/assets/images/tab_bottom.png
120
+ - app/assets/javascripts/schedule.js
121
+ - app/assets/javascripts/settings.js
122
+ - app/assets/javascripts/social_stream-events.js
123
+ - app/assets/stylesheets/activities.css
124
+ - app/assets/stylesheets/fullcalendar.css
125
+ - app/assets/stylesheets/fullcalendar.print.css
126
+ - app/assets/stylesheets/settings.css
127
+ - app/assets/stylesheets/social_stream-events.css
128
+ - app/assets/stylesheets/tie.css
129
+ - app/assets/stylesheets/users.css
130
+ - app/controllers/activities_controller.rb
131
+ - app/controllers/agendas_controller.rb
132
+ - app/controllers/calendar_events_controller.rb
133
+ - app/controllers/events_controller.rb
134
+ - app/controllers/sessions_controller.rb
135
+ - app/controllers/settings_controller.rb
136
+ - app/helpers/event_helper.rb
137
+ - app/models/agenda.rb
138
+ - app/models/calendar_event.rb
139
+ - app/models/calendar_event_series.rb
140
+ - app/models/event.rb
141
+ - app/models/session.rb
142
+ - app/views/activities/_activity.html.erb
143
+ - app/views/activities/_child.html.erb
144
+ - app/views/activities/_comments.html.erb
145
+ - app/views/activities/_index.html.erb
146
+ - app/views/activities/_new.html.erb
147
+ - app/views/activities/_options.html.erb
148
+ - app/views/activities/_root.html.erb
149
+ - app/views/activities/_wall.html.erb
150
+ - app/views/activities/_walls.html.erb
151
+ - app/views/activities/documents.js.erb
152
+ - app/views/activities/index.js.erb
153
+ - app/views/agendas/_agenda.html.erb
154
+ - app/views/agendas/_edit.html.erb
155
+ - app/views/agendas/_schedule.html.erb
156
+ - app/views/agendas/_show.html.erb
157
+ - app/views/agendas/_show_day.html.erb
158
+ - app/views/agendas/edit.html.erb
159
+ - app/views/agendas/event.html.erb
160
+ - app/views/agendas/index.html.erb
161
+ - app/views/agendas/show.html.erb
162
+ - app/views/calendar_events/_calendar.html.erb
163
+ - app/views/calendar_events/_edit_form.html.erb
164
+ - app/views/calendar_events/_form.html.erb
165
+ - app/views/calendar_events/available.html.erb
166
+ - app/views/calendar_events/create.js.erb
167
+ - app/views/calendar_events/edit.js.erb
168
+ - app/views/calendar_events/index.html.erb
169
+ - app/views/calendar_events/move.js.erb
170
+ - app/views/calendar_events/new.js.erb
171
+ - app/views/calendar_events/resize.js.erb
172
+ - app/views/calendar_events/schedule.html.erb
173
+ - app/views/documents/_mediawall.html.erb
174
+ - app/views/events/_event.html.erb
175
+ - app/views/events/_fields.html.erb
176
+ - app/views/events/_form.html.erb
177
+ - app/views/events/_jquery.html.erb
178
+ - app/views/events/_manage.html.erb
179
+ - app/views/events/_new.html.erb
180
+ - app/views/events/_sessions_edit.html.erb
181
+ - app/views/events/_sidebar_cloud.html.erb
182
+ - app/views/events/_sidebar_index.html.erb
183
+ - app/views/events/_sidebar_show.html.erb
184
+ - app/views/events/agendas.html
185
+ - app/views/events/edit.html.erb
186
+ - app/views/events/index.html.erb
187
+ - app/views/events/manage.html.erb
188
+ - app/views/events/manage.js.erb
189
+ - app/views/events/show.html.erb
190
+ - app/views/kaminari/_first_page.html.erb
191
+ - app/views/kaminari/_gap.html.erb
192
+ - app/views/kaminari/_last_page.html.erb
193
+ - app/views/kaminari/_next_page.html.erb
194
+ - app/views/kaminari/_page.html.erb
195
+ - app/views/kaminari/_paginator.html.erb
196
+ - app/views/kaminari/_prev_page.html.erb
197
+ - app/views/profiles/_outline.html.erb
198
+ - app/views/profiles/_profile.html.erb
199
+ - app/views/sessions/_form.html.erb
200
+ - app/views/sessions/_new.html.erb
201
+ - app/views/sessions/_session.html.erb
202
+ - app/views/sessions/_show.html.erb
203
+ - app/views/sessions/create.html.erb
204
+ - app/views/sessions/create.js.erb
205
+ - app/views/sessions/destroy.js.erb
206
+ - app/views/sessions/edit.html.erb
207
+ - app/views/sessions/index.html.erb
208
+ - app/views/sessions/index.js.erb
209
+ - app/views/sessions/new.html.erb
210
+ - app/views/settings/_contacto.html.erb
211
+ - app/views/settings/_header.html.erb
212
+ - app/views/settings/_index.html.erb
213
+ - app/views/settings/_manage.html.erb
214
+ - app/views/settings/_settings.html.erb
215
+ - app/views/settings/delete_relation.js.erb
216
+ - app/views/settings/index.html.erb
217
+ - app/views/settings/manage.html.erb
218
+ - app/views/settings/show.html.erb
219
+ - app/views/settings/update_relation.js.erb
220
+ - app/views/toolbar/_home.html.erb
221
+ - app/views/toolbar/_logo.html.erb
222
+ - app/views/toolbar/_organizer.html.erb
223
+ - app/views/toolbar/_profile.html.erb
224
+ - app/views/toolbar/_sponsor.html.erb
225
+ - app/views/toolbar/_suscribed.html.erb
226
+ - app/views/users/_index.html.erb
227
+ - app/views/users/index.html.erb
228
+ - config/locales/en.yml
229
+ - config/routes.rb
230
+ - db/20110615143707_create_social_stream_events.rb
231
+ - lib/generators/social_stream/events/install_generator.rb
232
+ - lib/social_stream-events.rb
233
+ - lib/social_stream/events/engine.rb
234
+ - lib/social_stream/migrations/events.rb
235
+ - social_stream-events.gemspec
236
+ - vendor/assets/javascripts/fullcalendar.js
237
+ - vendor/assets/javascripts/gcal.js
238
+ homepage: http://github.com/ging/social_stream-events
239
+ licenses: []
240
+
241
+ post_install_message:
242
+ rdoc_options: []
243
+
244
+ require_paths:
245
+ - lib
246
+ required_ruby_version: !ruby/object:Gem::Requirement
247
+ none: false
248
+ requirements:
249
+ - - ">="
250
+ - !ruby/object:Gem::Version
251
+ hash: -990818511
252
+ segments:
253
+ - 0
254
+ version: "0"
255
+ required_rubygems_version: !ruby/object:Gem::Requirement
256
+ none: false
257
+ requirements:
258
+ - - ">="
259
+ - !ruby/object:Gem::Version
260
+ hash: -990818511
261
+ segments:
262
+ - 0
263
+ version: "0"
264
+ requirements: []
265
+
266
+ rubyforge_project:
267
+ rubygems_version: 1.8.7
268
+ signing_key:
269
+ specification_version: 3
270
+ summary: Events and Video conferences capabilities for Social Stream, the core for building social network websites
271
+ test_files: []
272
+