open_conference_ware 1.0.0.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (471) hide show
  1. data.tar.gz.sig +0 -0
  2. data/.autotest +14 -0
  3. data/.coveralls.yml +1 -0
  4. data/.gitignore +21 -0
  5. data/.rspec +1 -0
  6. data/.travis.yml +18 -0
  7. data/CHANGES.md +280 -0
  8. data/CONTRIBUTORS.markdown +17 -0
  9. data/Gemfile +21 -0
  10. data/Gemfile.lock +296 -0
  11. data/Guardfile +24 -0
  12. data/LICENSE.txt +23 -0
  13. data/README.markdown +173 -0
  14. data/Rakefile +27 -0
  15. data/TODO.txt +22 -0
  16. data/app/assets/images/open_conference_ware/accept.png +0 -0
  17. data/app/assets/images/open_conference_ware/arrow-left.png +0 -0
  18. data/app/assets/images/open_conference_ware/arrow-out.png +0 -0
  19. data/app/assets/images/open_conference_ware/arrow-right.png +0 -0
  20. data/app/assets/images/open_conference_ware/arrow-up.png +0 -0
  21. data/app/assets/images/open_conference_ware/arrow_refresh.png +0 -0
  22. data/app/assets/images/open_conference_ware/comment.png +0 -0
  23. data/app/assets/images/open_conference_ware/comment_edit.png +0 -0
  24. data/app/assets/images/open_conference_ware/delete.png +0 -0
  25. data/app/assets/images/open_conference_ware/disk.png +0 -0
  26. data/app/assets/images/open_conference_ware/document-blank.png +0 -0
  27. data/app/assets/images/open_conference_ware/document.png +0 -0
  28. data/app/assets/images/open_conference_ware/edit.png +0 -0
  29. data/app/assets/images/open_conference_ware/extras/001_01.png +0 -0
  30. data/app/assets/images/open_conference_ware/extras/001_05.png +0 -0
  31. data/app/assets/images/open_conference_ware/extras/001_05x16.png +0 -0
  32. data/app/assets/images/open_conference_ware/extras/001_21.png +0 -0
  33. data/app/assets/images/open_conference_ware/extras/001_23.png +0 -0
  34. data/app/assets/images/open_conference_ware/extras/001_24.png +0 -0
  35. data/app/assets/images/open_conference_ware/extras/001_29.png +0 -0
  36. data/app/assets/images/open_conference_ware/extras/01.png +0 -0
  37. data/app/assets/images/open_conference_ware/extras/05.png +0 -0
  38. data/app/assets/images/open_conference_ware/extras/06.png +0 -0
  39. data/app/assets/images/open_conference_ware/extras/1.png +0 -0
  40. data/app/assets/images/open_conference_ware/extras/14.png +0 -0
  41. data/app/assets/images/open_conference_ware/extras/16.png +0 -0
  42. data/app/assets/images/open_conference_ware/extras/2.png +0 -0
  43. data/app/assets/images/open_conference_ware/extras/21.png +0 -0
  44. data/app/assets/images/open_conference_ware/extras/28.png +0 -0
  45. data/app/assets/images/open_conference_ware/extras/3.png +0 -0
  46. data/app/assets/images/open_conference_ware/extras/31.png +0 -0
  47. data/app/assets/images/open_conference_ware/extras/32.png +0 -0
  48. data/app/assets/images/open_conference_ware/extras/35.png +0 -0
  49. data/app/assets/images/open_conference_ware/extras/36.png +0 -0
  50. data/app/assets/images/open_conference_ware/extras/4.png +0 -0
  51. data/app/assets/images/open_conference_ware/extras/44.png +0 -0
  52. data/app/assets/images/open_conference_ware/extras/45.png +0 -0
  53. data/app/assets/images/open_conference_ware/extras/46.png +0 -0
  54. data/app/assets/images/open_conference_ware/extras/cancel.png +0 -0
  55. data/app/assets/images/open_conference_ware/extras/cancelx16.png +0 -0
  56. data/app/assets/images/open_conference_ware/extras/icon.trashcan.gif +0 -0
  57. data/app/assets/images/open_conference_ware/favorite.png +0 -0
  58. data/app/assets/images/open_conference_ware/feed.png +0 -0
  59. data/app/assets/images/open_conference_ware/heart.png +0 -0
  60. data/app/assets/images/open_conference_ware/house.png +0 -0
  61. data/app/assets/images/open_conference_ware/ignite_portland_header3_clear.png +0 -0
  62. data/app/assets/images/open_conference_ware/ignite_portland_header3_clear_cropped.png +0 -0
  63. data/app/assets/images/open_conference_ware/jquery.wysiwyg.gif +0 -0
  64. data/app/assets/images/open_conference_ware/lock.png +0 -0
  65. data/app/assets/images/open_conference_ware/new_window.gif +0 -0
  66. data/app/assets/images/open_conference_ware/openid-icon.gif +0 -0
  67. data/app/assets/images/open_conference_ware/pencil.png +0 -0
  68. data/app/assets/images/open_conference_ware/plus.png +0 -0
  69. data/app/assets/images/open_conference_ware/quote.png +0 -0
  70. data/app/assets/images/open_conference_ware/rails.png +0 -0
  71. data/app/assets/images/open_conference_ware/redx.png +0 -0
  72. data/app/assets/images/open_conference_ware/reset-fff.png +0 -0
  73. data/app/assets/images/open_conference_ware/spinner-big.gif +0 -0
  74. data/app/assets/images/open_conference_ware/spinner.gif +0 -0
  75. data/app/assets/images/open_conference_ware/star.png +0 -0
  76. data/app/assets/images/open_conference_ware/tag_blue.png +0 -0
  77. data/app/assets/images/open_conference_ware/time.png +0 -0
  78. data/app/assets/javascripts/open_conference_ware/application.js +18 -0
  79. data/app/assets/javascripts/open_conference_ware/base.js +15 -0
  80. data/app/assets/javascripts/open_conference_ware/favorites.js +76 -0
  81. data/app/assets/javascripts/open_conference_ware/ie.js +2 -0
  82. data/app/assets/javascripts/open_conference_ware/menu.js +47 -0
  83. data/app/assets/javascripts/open_conference_ware/persona.js +10 -0
  84. data/app/assets/javascripts/open_conference_ware/proposals.js +208 -0
  85. data/app/assets/javascripts/open_conference_ware/schedule.js +20 -0
  86. data/app/assets/javascripts/open_conference_ware/spinner.js +11 -0
  87. data/app/assets/javascripts/open_conference_ware/util.js +23 -0
  88. data/app/assets/stylesheets/open_conference_ware/application.css +8 -0
  89. data/app/assets/stylesheets/open_conference_ware/common.css.scss +491 -0
  90. data/app/assets/stylesheets/open_conference_ware/custom.css.scss +1033 -0
  91. data/app/assets/stylesheets/open_conference_ware/scaffold.css +54 -0
  92. data/app/controllers/open_conference_ware/application_controller.rb +488 -0
  93. data/app/controllers/open_conference_ware/authentications_controller.rb +42 -0
  94. data/app/controllers/open_conference_ware/comments_controller.rb +86 -0
  95. data/app/controllers/open_conference_ware/events_controller.rb +36 -0
  96. data/app/controllers/open_conference_ware/manage/events_controller.rb +157 -0
  97. data/app/controllers/open_conference_ware/manage/snippets_controller.rb +110 -0
  98. data/app/controllers/open_conference_ware/proposals_controller.rb +521 -0
  99. data/app/controllers/open_conference_ware/rooms_controller.rb +130 -0
  100. data/app/controllers/open_conference_ware/schedule_items_controller.rb +128 -0
  101. data/app/controllers/open_conference_ware/selector_votes_controller.rb +71 -0
  102. data/app/controllers/open_conference_ware/session_types_controller.rb +123 -0
  103. data/app/controllers/open_conference_ware/tracks_controller.rb +118 -0
  104. data/app/controllers/open_conference_ware/user_favorites_controller.rb +68 -0
  105. data/app/controllers/open_conference_ware/users_controller.rb +120 -0
  106. data/app/helpers/open_conference_ware/application_helper.rb +167 -0
  107. data/app/helpers/open_conference_ware/authentications_helper.rb +25 -0
  108. data/app/helpers/open_conference_ware/cache_if_helper.rb +13 -0
  109. data/app/helpers/open_conference_ware/display_link_to_helper.rb +25 -0
  110. data/app/helpers/open_conference_ware/display_textile_for_helper.rb +11 -0
  111. data/app/helpers/open_conference_ware/field_annotation_helper.rb +11 -0
  112. data/app/helpers/open_conference_ware/focus_helper.rb +16 -0
  113. data/app/helpers/open_conference_ware/localcss_helper.rb +10 -0
  114. data/app/helpers/open_conference_ware/page_title_helper.rb +17 -0
  115. data/app/helpers/open_conference_ware/proposals_helper.rb +54 -0
  116. data/app/helpers/open_conference_ware/rooms_helper.rb +5 -0
  117. data/app/helpers/open_conference_ware/scroll_to_helper.rb +15 -0
  118. data/app/helpers/open_conference_ware/session_types_helper.rb +5 -0
  119. data/app/helpers/open_conference_ware/snippets_helper.rb +36 -0
  120. data/app/helpers/open_conference_ware/time_range_helper.rb +198 -0
  121. data/app/helpers/open_conference_ware/tracks_helper.rb +9 -0
  122. data/app/helpers/open_conference_ware/user_favorites_helper.rb +15 -0
  123. data/app/mailers/open_conference_ware/speaker_mailer.rb +51 -0
  124. data/app/mixins/open_conference_ware/breadcrumbs_mixin.rb +76 -0
  125. data/app/mixins/open_conference_ware/cache_lookups_mixin.rb +128 -0
  126. data/app/mixins/open_conference_ware/faux_routes_mixin.rb +83 -0
  127. data/app/mixins/open_conference_ware/normalize_url_mixin.rb +40 -0
  128. data/app/mixins/open_conference_ware/public_attributes_mixin.rb +62 -0
  129. data/app/mixins/open_conference_ware/schedule_overlaps_mixin.rb +12 -0
  130. data/app/mixins/open_conference_ware/settings_checkers_mixin.rb +50 -0
  131. data/app/mixins/open_conference_ware/simple_slug_mixin.rb +26 -0
  132. data/app/models/open_conference_ware/authentication.rb +47 -0
  133. data/app/models/open_conference_ware/base.rb +6 -0
  134. data/app/models/open_conference_ware/comment.rb +26 -0
  135. data/app/models/open_conference_ware/event.rb +227 -0
  136. data/app/models/open_conference_ware/proposal.rb +625 -0
  137. data/app/models/open_conference_ware/room.rb +42 -0
  138. data/app/models/open_conference_ware/schedule.rb +216 -0
  139. data/app/models/open_conference_ware/schedule_item.rb +55 -0
  140. data/app/models/open_conference_ware/selector_vote.rb +22 -0
  141. data/app/models/open_conference_ware/session_type.rb +33 -0
  142. data/app/models/open_conference_ware/snippet.rb +58 -0
  143. data/app/models/open_conference_ware/track.rb +51 -0
  144. data/app/models/open_conference_ware/user.rb +262 -0
  145. data/app/models/open_conference_ware/user_favorite.rb +42 -0
  146. data/app/observers/open_conference_ware/cache_watcher.rb +42 -0
  147. data/app/views/layouts/open_conference_ware/_header.html.erb +106 -0
  148. data/app/views/layouts/open_conference_ware/application.atom.erb +1 -0
  149. data/app/views/layouts/open_conference_ware/application.html.erb +126 -0
  150. data/app/views/layouts/open_conference_ware/scaffold.html.erb +21 -0
  151. data/app/views/open_conference_ware/404.html.erb +8 -0
  152. data/app/views/open_conference_ware/422.html.erb +11 -0
  153. data/app/views/open_conference_ware/500.html.erb +11 -0
  154. data/app/views/open_conference_ware/_email_link.html.erb +24 -0
  155. data/app/views/open_conference_ware/_google_analytics.html.erb +9 -0
  156. data/app/views/open_conference_ware/authentications/_developer.html.erb +7 -0
  157. data/app/views/open_conference_ware/authentications/_openid.html.erb +11 -0
  158. data/app/views/open_conference_ware/authentications/_persona.html.erb +17 -0
  159. data/app/views/open_conference_ware/authentications/sign_in.html.erb +12 -0
  160. data/app/views/open_conference_ware/comments/_list.html.erb +31 -0
  161. data/app/views/open_conference_ware/comments/index.atom.builder +25 -0
  162. data/app/views/open_conference_ware/comments/index.html.erb +3 -0
  163. data/app/views/open_conference_ware/events/index.html.erb +9 -0
  164. data/app/views/open_conference_ware/events/show.html.erb +0 -0
  165. data/app/views/open_conference_ware/events/speakers.html.erb +7 -0
  166. data/app/views/open_conference_ware/manage/events/_form.html.erb +107 -0
  167. data/app/views/open_conference_ware/manage/events/edit.html.erb +3 -0
  168. data/app/views/open_conference_ware/manage/events/index.html.erb +41 -0
  169. data/app/views/open_conference_ware/manage/events/new.html.erb +3 -0
  170. data/app/views/open_conference_ware/manage/events/proposals.html.erb +133 -0
  171. data/app/views/open_conference_ware/manage/events/show.html.erb +181 -0
  172. data/app/views/open_conference_ware/manage/snippets/_form.html.erb +30 -0
  173. data/app/views/open_conference_ware/manage/snippets/edit.html.erb +3 -0
  174. data/app/views/open_conference_ware/manage/snippets/index.html.erb +34 -0
  175. data/app/views/open_conference_ware/manage/snippets/new.html.erb +3 -0
  176. data/app/views/open_conference_ware/manage/snippets/show.html.erb +32 -0
  177. data/app/views/open_conference_ware/proposals/_admin_controls.html.erb +33 -0
  178. data/app/views/open_conference_ware/proposals/_form.html.erb +381 -0
  179. data/app/views/open_conference_ware/proposals/_list.html.erb +164 -0
  180. data/app/views/open_conference_ware/proposals/_list_concise.html.erb +93 -0
  181. data/app/views/open_conference_ware/proposals/_manage_speakers.html.erb +30 -0
  182. data/app/views/open_conference_ware/proposals/_room_control.html.erb +21 -0
  183. data/app/views/open_conference_ware/proposals/_schedule_block.html.erb +8 -0
  184. data/app/views/open_conference_ware/proposals/_schedule_control.html.erb +13 -0
  185. data/app/views/open_conference_ware/proposals/_search_speakers.html.erb +20 -0
  186. data/app/views/open_conference_ware/proposals/_sub_list.html.erb +65 -0
  187. data/app/views/open_conference_ware/proposals/_sub_list_for_kind.html.erb +31 -0
  188. data/app/views/open_conference_ware/proposals/_transition_control.html.erb +16 -0
  189. data/app/views/open_conference_ware/proposals/create.html.erb +29 -0
  190. data/app/views/open_conference_ware/proposals/edit.html.erb +7 -0
  191. data/app/views/open_conference_ware/proposals/index.atom.builder +63 -0
  192. data/app/views/open_conference_ware/proposals/index.html.erb +46 -0
  193. data/app/views/open_conference_ware/proposals/new.html.erb +3 -0
  194. data/app/views/open_conference_ware/proposals/schedule.html.erb +108 -0
  195. data/app/views/open_conference_ware/proposals/sessions_index_terse.html.erb +22 -0
  196. data/app/views/open_conference_ware/proposals/show.html.erb +316 -0
  197. data/app/views/open_conference_ware/proposals/stats.html.erb +72 -0
  198. data/app/views/open_conference_ware/rooms/_form.html.erb +36 -0
  199. data/app/views/open_conference_ware/rooms/edit.html.erb +3 -0
  200. data/app/views/open_conference_ware/rooms/index.html.erb +13 -0
  201. data/app/views/open_conference_ware/rooms/new.html.erb +3 -0
  202. data/app/views/open_conference_ware/rooms/show.html.erb +27 -0
  203. data/app/views/open_conference_ware/schedule_items/_form.html.erb +35 -0
  204. data/app/views/open_conference_ware/schedule_items/edit.html.erb +3 -0
  205. data/app/views/open_conference_ware/schedule_items/index.html.erb +31 -0
  206. data/app/views/open_conference_ware/schedule_items/new.html.erb +3 -0
  207. data/app/views/open_conference_ware/schedule_items/show.html.erb +30 -0
  208. data/app/views/open_conference_ware/selector_votes/index.html.erb +81 -0
  209. data/app/views/open_conference_ware/session_types/_form.html.erb +23 -0
  210. data/app/views/open_conference_ware/session_types/edit.html.erb +3 -0
  211. data/app/views/open_conference_ware/session_types/index.html.erb +18 -0
  212. data/app/views/open_conference_ware/session_types/new.html.erb +3 -0
  213. data/app/views/open_conference_ware/session_types/show.html.erb +14 -0
  214. data/app/views/open_conference_ware/speaker_mailer/speaker_email.text.erb +14 -0
  215. data/app/views/open_conference_ware/tracks/_colors.css.erb +7 -0
  216. data/app/views/open_conference_ware/tracks/_form.html.erb +36 -0
  217. data/app/views/open_conference_ware/tracks/edit.html.erb +3 -0
  218. data/app/views/open_conference_ware/tracks/index.html.erb +25 -0
  219. data/app/views/open_conference_ware/tracks/new.html.erb +3 -0
  220. data/app/views/open_conference_ware/tracks/show.html.erb +19 -0
  221. data/app/views/open_conference_ware/user_favorites/index.html.erb +12 -0
  222. data/app/views/open_conference_ware/users/_account_box.html.erb +10 -0
  223. data/app/views/open_conference_ware/users/_block.html.erb +80 -0
  224. data/app/views/open_conference_ware/users/_list.html.erb +17 -0
  225. data/app/views/open_conference_ware/users/edit.html.erb +73 -0
  226. data/app/views/open_conference_ware/users/index.html.erb +28 -0
  227. data/app/views/open_conference_ware/users/new.html.erb +7 -0
  228. data/app/views/open_conference_ware/users/proposals.html.erb +24 -0
  229. data/app/views/open_conference_ware/users/show.html.erb +5 -0
  230. data/app/views/open_conference_ware/welcome/test.html.haml +8 -0
  231. data/bin/rails +8 -0
  232. data/ci/Gemfile.ci +13 -0
  233. data/ci/copy_database_config.rb +6 -0
  234. data/ci/database.mysql.yml +5 -0
  235. data/ci/database.postgresql.yml +4 -0
  236. data/ci/database.sqlite.yml +5 -0
  237. data/config/initializers/acts_as_taggable_on.rb +2 -0
  238. data/config/initializers/date_time_formats.rb +9 -0
  239. data/config/routes.rb +74 -0
  240. data/db/migrate/20131203235128_create_open_conference_ware_authentications.rb +14 -0
  241. data/db/migrate/20131203235216_create_open_conference_ware_comments.rb +14 -0
  242. data/db/migrate/20131203235418_create_open_conference_ware_events.rb +27 -0
  243. data/db/migrate/20131203235524_create_open_conference_ware_proposals.rb +36 -0
  244. data/db/migrate/20131203235723_create_open_conference_ware_rooms.rb +20 -0
  245. data/db/migrate/20131203235831_create_open_conference_ware_schedule_items.rb +18 -0
  246. data/db/migrate/20131203235910_create_open_conference_ware_selector_votes.rb +10 -0
  247. data/db/migrate/20131203235934_create_open_conference_ware_session_types.rb +14 -0
  248. data/db/migrate/20131204000008_create_open_conference_ware_snippets.rb +15 -0
  249. data/db/migrate/20131204000048_create_open_conference_ware_taggings.rb +16 -0
  250. data/db/migrate/20131204000129_create_open_conference_ware_tags.rb +7 -0
  251. data/db/migrate/20131204000147_create_open_conference_ware_tracks.rb +15 -0
  252. data/db/migrate/20131204000230_create_open_conference_ware_user_favorites.rb +10 -0
  253. data/db/migrate/20131204000251_create_open_conference_ware_users.rb +24 -0
  254. data/db/migrate/20131204000355_create_proposals_users_join_table.rb +8 -0
  255. data/db/seeds.rb +31 -0
  256. data/features/comment_create.feature +9 -0
  257. data/features/comment_destroy.feature +22 -0
  258. data/features/comment_new.feature +22 -0
  259. data/features/step_definitions/authentication_steps.rb +22 -0
  260. data/features/step_definitions/comment_create_steps.rb +5 -0
  261. data/features/step_definitions/comment_destroy_steps.rb +13 -0
  262. data/features/step_definitions/comment_new_steps.rb +41 -0
  263. data/features/step_definitions/notification_steps.rb +3 -0
  264. data/features/step_definitions/web_steps.rb +263 -0
  265. data/features/support/env.rb +58 -0
  266. data/features/support/helpers.rb +17 -0
  267. data/features/support/paths.rb +35 -0
  268. data/gem-public_cert.pem +22 -0
  269. data/lib/defer_proxy.rb +127 -0
  270. data/lib/ext/color_rgb_serializer_fix.rb +18 -0
  271. data/lib/ext/string_possessiveize.rb +7 -0
  272. data/lib/ext/vpim_icalendar_extra_properties.rb +25 -0
  273. data/lib/generators/open_conference_ware/install/USAGE +12 -0
  274. data/lib/generators/open_conference_ware/install/install_generator.rb +35 -0
  275. data/lib/generators/open_conference_ware/install/templates/config_initializer.rb +110 -0
  276. data/lib/generators/open_conference_ware/install/templates/omniauth_initializer.rb +33 -0
  277. data/lib/open_conference_ware.rb +156 -0
  278. data/lib/open_conference_ware/dependencies.rb +38 -0
  279. data/lib/open_conference_ware/engine.rb +38 -0
  280. data/lib/open_conference_ware/omni_auth_builder.rb +8 -0
  281. data/lib/open_conference_ware/version.rb +3 -0
  282. data/lib/rwikibot_page_drone.rb +70 -0
  283. data/lib/tasks/.gitkeep +0 -0
  284. data/lib/tasks/audio.rake +53 -0
  285. data/lib/tasks/cucumber.rake +65 -0
  286. data/lib/tasks/export.rake +170 -0
  287. data/lib/tasks/mediawiki.rake +96 -0
  288. data/lib/tasks/open_conference_ware_tasks.rake +16 -0
  289. data/lib/tasks/schedule.rake +103 -0
  290. data/lib/tasks/snippets.rake +23 -0
  291. data/open_conference_ware.gemspec +67 -0
  292. data/original_graphics/favorite.psd +0 -0
  293. data/spec/controllers/open_conference_ware/application_controller_spec.rb +309 -0
  294. data/spec/controllers/open_conference_ware/authentications_controller_spec.rb +87 -0
  295. data/spec/controllers/open_conference_ware/comments_controller_spec.rb +146 -0
  296. data/spec/controllers/open_conference_ware/events_controller_spec.rb +102 -0
  297. data/spec/controllers/open_conference_ware/manage_events_controller_spec.rb +103 -0
  298. data/spec/controllers/open_conference_ware/proposals_controller_spec.rb +1273 -0
  299. data/spec/controllers/open_conference_ware/rooms_controller_spec.rb +190 -0
  300. data/spec/controllers/open_conference_ware/selector_votes_controller_spec.rb +263 -0
  301. data/spec/controllers/open_conference_ware/session_types_controller_spec.rb +190 -0
  302. data/spec/controllers/open_conference_ware/sessions_routing_spec.rb +13 -0
  303. data/spec/controllers/open_conference_ware/tracks_controller_spec.rb +190 -0
  304. data/spec/controllers/open_conference_ware/user_favorites_controller_spec.rb +127 -0
  305. data/spec/controllers/open_conference_ware/users_controller_spec.rb +166 -0
  306. data/spec/dummy/README.rdoc +28 -0
  307. data/spec/dummy/Rakefile +6 -0
  308. data/spec/dummy/app/assets/images/.keep +0 -0
  309. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  310. data/spec/dummy/app/assets/stylesheets/application.css +13 -0
  311. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  312. data/spec/dummy/app/controllers/concerns/.keep +0 -0
  313. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  314. data/spec/dummy/app/mailers/.keep +0 -0
  315. data/spec/dummy/app/models/.keep +0 -0
  316. data/spec/dummy/app/models/concerns/.keep +0 -0
  317. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  318. data/spec/dummy/bin/bundle +3 -0
  319. data/spec/dummy/bin/rails +4 -0
  320. data/spec/dummy/bin/rake +4 -0
  321. data/spec/dummy/config.ru +4 -0
  322. data/spec/dummy/config/application.rb +30 -0
  323. data/spec/dummy/config/boot.rb +5 -0
  324. data/spec/dummy/config/database.yml +25 -0
  325. data/spec/dummy/config/environment.rb +5 -0
  326. data/spec/dummy/config/environments/development.rb +29 -0
  327. data/spec/dummy/config/environments/production.rb +80 -0
  328. data/spec/dummy/config/environments/test.rb +36 -0
  329. data/spec/dummy/config/initializers/01_open_conference_ware.rb +110 -0
  330. data/spec/dummy/config/initializers/02_omniauth.rb +17 -0
  331. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  332. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  333. data/spec/dummy/config/initializers/inflections.rb +16 -0
  334. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  335. data/spec/dummy/config/initializers/secret_token.rb +12 -0
  336. data/spec/dummy/config/initializers/session_store.rb +3 -0
  337. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  338. data/spec/dummy/config/locales/en.yml +23 -0
  339. data/spec/dummy/config/routes.rb +3 -0
  340. data/spec/dummy/db/schema.rb +219 -0
  341. data/spec/dummy/db/seeds.rb +10 -0
  342. data/spec/dummy/lib/assets/.keep +0 -0
  343. data/spec/dummy/log/.keep +0 -0
  344. data/spec/dummy/public/404.html +58 -0
  345. data/spec/dummy/public/422.html +58 -0
  346. data/spec/dummy/public/500.html +57 -0
  347. data/spec/dummy/public/favicon.ico +0 -0
  348. data/spec/factories/authentication_factory.rb +16 -0
  349. data/spec/factories/common_factory.rb +4 -0
  350. data/spec/factories/event_factory.rb +26 -0
  351. data/spec/factories/proposal_factory.rb +57 -0
  352. data/spec/factories/proposal_user_factory.rb +7 -0
  353. data/spec/factories/room_factory.rb +11 -0
  354. data/spec/factories/schedule_item_factory.rb +13 -0
  355. data/spec/factories/session_types_factory.rb +10 -0
  356. data/spec/factories/snippet_factory.rb +7 -0
  357. data/spec/factories/track_factory.rb +12 -0
  358. data/spec/factories/user_factory.rb +22 -0
  359. data/spec/factories/user_favorite_factory.rb +7 -0
  360. data/spec/features/sign_in_spec.rb +11 -0
  361. data/spec/features/snippets_spec.rb +38 -0
  362. data/spec/fixtures/open_conference_ware_comments.yml +27 -0
  363. data/spec/fixtures/open_conference_ware_events.yml +56 -0
  364. data/spec/fixtures/open_conference_ware_proposals.yml +256 -0
  365. data/spec/fixtures/open_conference_ware_rooms.yml +13 -0
  366. data/spec/fixtures/open_conference_ware_schedule_items.yml +23 -0
  367. data/spec/fixtures/open_conference_ware_session_types.yml +19 -0
  368. data/spec/fixtures/open_conference_ware_snippets.yml +62 -0
  369. data/spec/fixtures/open_conference_ware_tracks.yml +65 -0
  370. data/spec/fixtures/open_conference_ware_user_favorites.yml +7 -0
  371. data/spec/fixtures/open_conference_ware_users.yml +87 -0
  372. data/spec/helpers/open_conference_ware/application_helper_spec.rb +58 -0
  373. data/spec/helpers/open_conference_ware/authentications_helper_spec.rb +15 -0
  374. data/spec/helpers/open_conference_ware/display_link_to_helper_spec.rb +52 -0
  375. data/spec/helpers/open_conference_ware/proposals_helper_spec.rb +32 -0
  376. data/spec/helpers/open_conference_ware/rooms_helper_spec.rb +11 -0
  377. data/spec/helpers/open_conference_ware/session_types_helper_spec.rb +15 -0
  378. data/spec/helpers/open_conference_ware/time_range_helper_spec.rb +56 -0
  379. data/spec/helpers/open_conference_ware/tracks_helper_spec.rb +11 -0
  380. data/spec/helpers/open_conference_ware/user_favorites_helper_spec.rb +11 -0
  381. data/spec/integration/open_conference_ware/cache_lookups_mixin_spec.rb +122 -0
  382. data/spec/mixins/open_conference_ware/normalize_url_mixin_spec.rb +65 -0
  383. data/spec/models/open_conference_ware/authentication_spec.rb +67 -0
  384. data/spec/models/open_conference_ware/event_spec.rb +211 -0
  385. data/spec/models/open_conference_ware/proposal_spec.rb +606 -0
  386. data/spec/models/open_conference_ware/room_spec.rb +14 -0
  387. data/spec/models/open_conference_ware/schedule_item_spec.rb +12 -0
  388. data/spec/models/open_conference_ware/schedule_spec.rb +358 -0
  389. data/spec/models/open_conference_ware/selector_vote_spec.rb +12 -0
  390. data/spec/models/open_conference_ware/session_type_spec.rb +15 -0
  391. data/spec/models/open_conference_ware/snippet_spec.rb +13 -0
  392. data/spec/models/open_conference_ware/speaker_mailer_spec.rb +91 -0
  393. data/spec/models/open_conference_ware/track_spec.rb +36 -0
  394. data/spec/models/open_conference_ware/user_favorite_spec.rb +41 -0
  395. data/spec/models/open_conference_ware/user_spec.rb +77 -0
  396. data/spec/ocw_config.rb +76 -0
  397. data/spec/rcov.opts +2 -0
  398. data/spec/spec.opts +3 -0
  399. data/spec/spec_helper.rb +55 -0
  400. data/spec/spec_helper_customizations.rb +125 -0
  401. data/spec/support/add_all_helpers_to_view.rb +24 -0
  402. data/spec/support/authenticated_test_helper.rb +27 -0
  403. data/spec/support/fixture_shortcuts.rb +18 -0
  404. data/spec/support/omniauth.rb +34 -0
  405. data/spec/support/valid_params_extraction.rb +15 -0
  406. data/spec/views/open_conference_ware/proposals/_room_control.html.erb_spec.rb +23 -0
  407. data/spec/views/open_conference_ware/proposals/_transition_control.html.erb_spec.rb +14 -0
  408. data/spec/views/open_conference_ware/proposals/show.html.erb_spec.rb +128 -0
  409. data/spec/views/open_conference_ware/rooms/index.html.erb_spec.rb +19 -0
  410. data/spec/views/open_conference_ware/rooms/show.html.erb_spec.rb +15 -0
  411. data/spec/views/open_conference_ware/selector_votes/index.html.erb_spec.rb +41 -0
  412. data/spec/views/open_conference_ware/session_types/edit.html.erb_spec.rb +25 -0
  413. data/spec/views/open_conference_ware/session_types/index.html.erb_spec.rb +19 -0
  414. data/spec/views/open_conference_ware/session_types/new.html.erb_spec.rb +24 -0
  415. data/spec/views/open_conference_ware/session_types/show.html.erb_spec.rb +18 -0
  416. data/spec/views/open_conference_ware/tracks/edit.html.erb_spec.rb +25 -0
  417. data/spec/views/open_conference_ware/tracks/index.html.erb_spec.rb +56 -0
  418. data/spec/views/open_conference_ware/tracks/new.html.erb_spec.rb +26 -0
  419. data/spec/views/open_conference_ware/tracks/show.html.erb_spec.rb +23 -0
  420. data/spec/views/open_conference_ware/user_favorites/index.html.erb_spec.rb +29 -0
  421. data/spec/views/open_conference_ware/users/index_spec.rb +24 -0
  422. data/util/add_id3_tags_to_mp3.rb +57 -0
  423. data/util/schedule_demo.rb +36 -0
  424. data/util/seed_schedule.rb +61 -0
  425. data/util/sessions_to_lanyrd.rb +166 -0
  426. data/util/transfer_schedule_items.rb +25 -0
  427. data/util/update_proposal_status_from_voting_spreadsheet.rb +26 -0
  428. data/util/user_favorites_contention_report.rb +42 -0
  429. data/util/user_favorites_contention_report.sh +9 -0
  430. data/vendor/assets/fonts/glyphicons-halflings-regular.eot +0 -0
  431. data/vendor/assets/fonts/glyphicons-halflings-regular.svg +228 -0
  432. data/vendor/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  433. data/vendor/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  434. data/vendor/assets/images/farbtastic/marker.png +0 -0
  435. data/vendor/assets/images/farbtastic/mask.png +0 -0
  436. data/vendor/assets/images/farbtastic/wheel.png +0 -0
  437. data/vendor/assets/images/idselector/aol.ico +0 -0
  438. data/vendor/assets/images/idselector/arrow.gif +0 -0
  439. data/vendor/assets/images/idselector/arrow_white_back.png +0 -0
  440. data/vendor/assets/images/idselector/arrow_white_forward.png +0 -0
  441. data/vendor/assets/images/idselector/blogger.ico +0 -0
  442. data/vendor/assets/images/idselector/claimid.ico +0 -0
  443. data/vendor/assets/images/idselector/flickr.ico +0 -0
  444. data/vendor/assets/images/idselector/google.ico +0 -0
  445. data/vendor/assets/images/idselector/lj.ico +0 -0
  446. data/vendor/assets/images/idselector/myopenid.ico +0 -0
  447. data/vendor/assets/images/idselector/openid.ico +0 -0
  448. data/vendor/assets/images/idselector/technorati.ico +0 -0
  449. data/vendor/assets/images/idselector/verisign.ico +0 -0
  450. data/vendor/assets/images/idselector/vidoop2.ico +0 -0
  451. data/vendor/assets/images/idselector/vox.ico +0 -0
  452. data/vendor/assets/images/idselector/yahoo.ico +0 -0
  453. data/vendor/assets/javascripts/audiojs/audio.min.js +23 -0
  454. data/vendor/assets/javascripts/audiojs/audiojs.swf +0 -0
  455. data/vendor/assets/javascripts/audiojs/player-graphics.gif +0 -0
  456. data/vendor/assets/javascripts/bootstrap.js +1999 -0
  457. data/vendor/assets/javascripts/farbtastic.js +329 -0
  458. data/vendor/assets/javascripts/html5shiv.js +8 -0
  459. data/vendor/assets/javascripts/idselector.js +538 -0
  460. data/vendor/assets/javascripts/idselector~original.js +532 -0
  461. data/vendor/assets/javascripts/jquery-migrate-1.2.1.js +521 -0
  462. data/vendor/assets/javascripts/jquery.localScroll.js +106 -0
  463. data/vendor/assets/javascripts/jquery.scrollTo.js +174 -0
  464. data/vendor/assets/javascripts/respond.min.js +6 -0
  465. data/vendor/assets/stylesheets/bootstrap-theme.css +384 -0
  466. data/vendor/assets/stylesheets/bootstrap.css +6805 -0
  467. data/vendor/assets/stylesheets/farbtastic.css.scss +38 -0
  468. data/vendor/assets/stylesheets/persona-buttons.css +229 -0
  469. data/vendor/assets/stylesheets/reset-fonts-grids.css +7 -0
  470. metadata +1174 -0
  471. metadata.gz.sig +0 -0
@@ -0,0 +1,27 @@
1
+ # == Schema Information
2
+ #
3
+ # Table name: comments
4
+ #
5
+ # id :integer not null, primary key
6
+ # name :string(255)
7
+ # email :string(255)
8
+ # message :text
9
+ # proposal_id :integer
10
+ # created_at :datetime
11
+ # updated_at :datetime
12
+ #
13
+
14
+ aaron_aardvarks_suck:
15
+ email: i@hate.you
16
+ message: "I find aardvarks morally offensive."
17
+ proposal: aaron_aardvarks
18
+
19
+ clio_chupacabras_fbi:
20
+ email: big_brother@fbi.gov
21
+ message: "Pay no attention, everything is under control."
22
+ proposal: clio_chupacabras
23
+
24
+ clio_chupacabras_cia:
25
+ email: the_man@cia.gov
26
+ message: "Please get in touch. We are here to help."
27
+ proposal: clio_chupacabras
@@ -0,0 +1,56 @@
1
+ # == Schema Information
2
+ #
3
+ # Table name: events
4
+ #
5
+ # id :integer not null, primary key
6
+ # title :string(255)
7
+ # deadline :datetime
8
+ # open_text :text
9
+ # closed_text :text
10
+ # created_at :datetime
11
+ # updated_at :datetime
12
+ # proposal_status_published :boolean default(FALSE), not null
13
+ # session_text :text
14
+ # tracks_text :text
15
+ # start_date :datetime
16
+ # end_date :datetime
17
+ # accept_proposal_comments_after_deadline :boolean default(FALSE)
18
+ # slug :string(255)
19
+ # schedule_published :boolean default(FALSE)
20
+ # parent_id :integer
21
+ # proposal_titles_locked :boolean default(FALSE)
22
+ # accept_selector_votes :boolean default(FALSE)
23
+ # show_proposal_confirmation_controls :boolean default(FALSE)
24
+ #
25
+
26
+ # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
27
+
28
+ closed:
29
+ id: 1975
30
+ title: "Old Event"
31
+ deadline: <%= (Time.now - 2.year).to_s(:db) %>
32
+ start_date: <%= (Time.now - 2.year + 1.week).to_s(:db) %>
33
+ end_date: <%= (Time.now - 2.year + 2.weeks).to_s(:db) %>
34
+ open_text: |
35
+ Old Event is the premier event for all things antiquated. We're now accepting proposals, submit yours today!
36
+ closed_text: |
37
+ Old Event is the premier event for all things antiquated. We're no-longer accepting proposals, better luck next time.
38
+ slug: closed
39
+ schedule_published: true
40
+ proposal_status_published: true
41
+ show_proposal_confirmation_controls: true
42
+
43
+ open:
44
+ id: 2009
45
+ title: Current Event
46
+ deadline: <%= (Time.now + 1.year).to_s(:db) %>
47
+ start_date: <%= (Time.now - 1.year + 1.week).to_s(:db) %>
48
+ end_date: <%= (Time.now - 1.year + 2.weeks).to_s(:db) %>
49
+ open_text: |
50
+ Current Event is the premier event for all things shiny. We're now accepting proposals, submit yours today!
51
+ closed_text: |
52
+ Current Event is the premier event for all things shiny. We're no-longer accepting proposals, better luck next time.
53
+ slug: open
54
+ schedule_published: true
55
+ proposal_status_published: true
56
+ show_proposal_confirmation_controls: true
@@ -0,0 +1,256 @@
1
+ # == Schema Information
2
+ #
3
+ # Table name: proposals
4
+ #
5
+ # id :integer not null, primary key
6
+ # user_id :integer
7
+ # presenter :string(255)
8
+ # affiliation :string(255)
9
+ # email :string(255)
10
+ # website :string(255)
11
+ # biography :text
12
+ # title :string(255)
13
+ # description :text
14
+ # agreement :boolean default(TRUE)
15
+ # created_at :datetime
16
+ # updated_at :datetime
17
+ # event_id :integer
18
+ # submitted_at :datetime
19
+ # note_to_organizers :text
20
+ # excerpt :text
21
+ # track_id :integer
22
+ # session_type_id :integer
23
+ # status :string(255) default("proposed"), not null
24
+ # room_id :integer
25
+ # start_time :datetime
26
+ # audio_url :string(255)
27
+ # speaking_experience :text
28
+ # audience_level :string(255)
29
+ # notified_at :datetime
30
+ #
31
+
32
+ # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
33
+
34
+ quentin_widgets:
35
+ users: quentin
36
+ presenter: Quentin
37
+ affiliation: QuentinCO
38
+ email: quentin@quentinco.co.uk
39
+ website: http://quentinco.co.uk/~quentin/
40
+ biography: Quentin is.
41
+ agreement: true
42
+ #IK# event: open
43
+ event_id: 2009
44
+ track: chemistry
45
+ session_type: long_form
46
+ status: proposed
47
+ submitted_at: <%= Time.now.to_s(:db) %>
48
+ speaking_experience: My speaking experience rules.
49
+ audience_level: a
50
+ title: My favorite widgets.
51
+ excerpt: |
52
+ A widget is a placeholder name for an object or, more specifically, a mechanical or other manufactured device. It is an abstract unit of production.
53
+ description: |
54
+ Widgets rock.
55
+
56
+ "Widget" is frequently used in texts and speech, especially in the context of economics, to indicate a hypothetical "any-product." Companies in such texts will frequently be given names such as "ABC Widgets" or "Acme Widget Corp." to indicate that the particular business of the hypothetical company is not relevant to the topic of discussion.
57
+
58
+ The term appeared in the 1985 Rodney Dangerfield feature film comedy Back to School, in a college economics classroom scene in which the professor uses the term to describe a hypothetical company whose product is irrelevant to the discussion.
59
+
60
+ aaron_aardvarks:
61
+ users: aaron
62
+ presenter: Aaron
63
+ affiliation: "Aaron's Aardvarks"
64
+ email: aaron@aardvarks.au
65
+ website: http://aardvarks.au/
66
+ biography: Aaron has Aardvarks.
67
+ agreement: true
68
+ #IK# event: open
69
+ event_id: 2009
70
+ track: cooking
71
+ session_type: long_form
72
+ status: proposed
73
+ submitted_at: <%= Time.now.to_s(:db) %>
74
+ speaking_experience: I have vast academic speaking experience on the scholarly topic of aardvarks.
75
+ audience_level: a
76
+ title: My favorite Aardvarks.
77
+ excerpt: |
78
+ The Aardvark (Orycteropus afer) (afer: from Africa) is a medium-sized, burrowing, nocturnal mammal native to Africa.
79
+ description: |
80
+ Aardvarks are awesome.
81
+
82
+ It is sometimes called "antbear", "anteater", "Cape anteater" (after the Cape of Good Hope), "earth hog" or "earth pig". The name comes from the Afrikaans/Dutch for "earth pig" (aarde earth, varken pig), because early settlers from Europe thought it resembled a domesticated pig. However, the aardvark is not closely related to the pig; rather, it is the sole recent representative of the obscure mammalian order Tubulidentata, in which it is usually considered to form a single variable species of the genus Orycteropus, coextensive with the family Orycteropodidae. Nor is the aardvark closely related to the South American anteater, despite sharing some characteristics and a superficial resemblance.[3] The closest living relatives of the aardvark are the elephant shrews, along with the sirenians, hyraxes, tenrecs, and elephants.
83
+
84
+ One of the most distinctive characteristics of the Tubulidentata is (as the name implies) their teeth. Instead of having a pulp cavity, each tooth has a cluster of thin, upright, parallel tubes of vasodentin (a modified form of dentine), with individual pulp canals, held together by cementum. The teeth have no enamel coating and are worn away and regrow continuously. The aardvark is born with conventional incisors and canines at the front of the jaw, which fall out and are not replaced.
85
+
86
+ Genetically speaking, the aardvark is a living fossil, as its chromosomes are highly conserved, reflecting much of the early eutherian arrangement before the divergence of the major modern taxa.
87
+
88
+ clio_chupacabras:
89
+ users: clio
90
+ presenter: Clio
91
+ email: clio@i_want_to_believe.com
92
+ biography: "They walk amongst us."
93
+ agreement: true
94
+ #IK# event: closed
95
+ event_id: 1975
96
+ track: cooking
97
+ session_type: short_form
98
+ status: rejected
99
+ submitted_at: <%= (Time.now - 1.year).to_s(:db) %>
100
+ speaking_experience: I am a respected cryptozoologist on the world speaking circuit.
101
+ audience_level: a
102
+ title: "Chupacabras and you"
103
+ excerpt: |
104
+ The Chupacabra, also called el Chupacabras (pronunciation: /tʃupa'kabɾas/, from the Spanish words chupar, meaning "to suck", and cabra, meaning "goat"; literally "goat sucker") is a legendary cryptid rumored to inhabit parts of the Americas.
105
+ description: |
106
+ "I see it - coming here - hell-wind - titan blur - black wings - Yog-Sothoth save me - the three-lobed burning eye ..."
107
+
108
+ It is associated more recently with sightings of an allegedly unknown animal in Puerto Rico (where these sightings were first reported), Mexico, and the United States, especially in the latter's Latin American communities.[1] The name comes from the animal's reported habit of attacking and drinking the blood of livestock, especially goats. Physical descriptions of the creature vary. Eyewitness sightings have been claimed as early as 1990 in Puerto Rico, and have since been reported as far north as Maine, and as far south as Chile. It is supposedly a heavy creature, the size of a small bear, with a row of spines reaching from the neck to the base of the tail. Biologists and wildlife management officials view the Chupacabra as a contemporary legend.
109
+
110
+ The first reported attacks occurred in March 1995 in Puerto Rico.[3] In this attack, eight sheep were discovered dead, each with three puncture wounds in the chest area and completely drained of blood.[3] In 1975, similar killings in the small town of Moca, were attributed to El Vampiro de Moca (The Vampire of Moca).[4] Initially it was suspected that the killings were committed by a Satanic cult; later more killings were reported around the island, and many farms reported loss of animal life. Each of the animals had their bodies bled dry through a series of small circular incisions.
111
+
112
+ Puerto Rican comedian and entrepreneur Silverio Pérez is credited with coining the term "chupacabras" soon after the first incidents were reported in the press.[5] Shortly after the first reported incidents in Puerto Rico, other animal deaths were reported in other countries, such as the Dominican Republic, Argentina, Bolivia, Chile, Colombia, Honduras, El Salvador, Nicaragua, Panama, Peru, Brazil, the United States, and Mexico.[3]
113
+
114
+ postgresql_session:
115
+ users: quentin
116
+ event_id: 2009
117
+ track: cooking
118
+ submitted_at: <%= Time.now.to_s(:db) %>
119
+ start_time: <%= Time.parse('2009-06-17 10:00am UTC').to_s(:db) %>
120
+ speaking_experience: "I know PostgreSQL stuff."
121
+ audience_level: a
122
+ title: "PostgreSQL Session"
123
+ excerpt: "Let's talk about PostgreSQL"
124
+ description: "Details about PostgreSQL session"
125
+ status: confirmed
126
+ session_type: long_form
127
+ room: morrison
128
+
129
+ drizzle_session:
130
+ users: aaron
131
+ event_id: 2009
132
+ track: cooking
133
+ submitted_at: <%= Time.now.to_s(:db) %>
134
+ start_time: <%= Time.parse('2009-06-17 10:00am UTC').to_s(:db) %>
135
+ speaking_experience: "I know Drizzle stuff."
136
+ audience_level: a
137
+ title: "Drizzle Session"
138
+ excerpt: "Let's talk about Drizzle"
139
+ description: "Details about Drizzle session"
140
+ status: confirmed
141
+ session_type: short_form
142
+ room: burnside
143
+
144
+ mysql_session:
145
+ users: gustavus
146
+ event_id: 2009
147
+ track: cooking
148
+ submitted_at: <%= Time.now.to_s(:db) %>
149
+ start_time: <%= Time.parse('2009-06-17 11:00am UTC').to_s(:db) %>
150
+ speaking_experience: "I know MySQL stuff."
151
+ audience_level: a
152
+ title: "MySQL Session"
153
+ excerpt: "Let's talk about MySQL"
154
+ description: "Details about MySQL session"
155
+ status: confirmed
156
+ session_type: short_form
157
+ room: burnside
158
+
159
+ sqlite_session:
160
+ users: clio
161
+ event_id: 2009
162
+ track: cooking
163
+ submitted_at: <%= Time.now.to_s(:db) %>
164
+ start_time: <%= Time.parse('2009-06-17 11:00am UTC').to_s(:db) %>
165
+ audience_level: a
166
+ title: "SQLite Session"
167
+ speaking_experience: "I know SQLite stuff."
168
+ excerpt: "Let's talk about SQLite"
169
+ description: "Details about SQLite session"
170
+ status: confirmed
171
+ session_type: short_form
172
+ room: burnside
173
+
174
+ rakudo_session:
175
+ event_id: 2009
176
+ track: cooking
177
+ submitted_at: <%= Time.now.to_s(:db) %>
178
+ start_time: <%= Time.parse('2009-06-17 12:00pm UTC').to_s(:db) %>
179
+ speaking_experience: "I AM A PONY!!1!"
180
+ audience_level: a
181
+ title: "Rakudo Session"
182
+ excerpt: "PERL 6 IS COMING SOON!!!1!"
183
+ description: "ROLES! GIMME A PONY OPERATOR! WORLD DOMINATION! LOL!"
184
+ status: confirmed
185
+ session_type: short_form
186
+ room: burnside
187
+
188
+ cloud_session:
189
+ event_id: 2009
190
+ track: hacks
191
+ submitted_at: <%= Time.now.to_s(:db) %>
192
+ start_time: <%= Time.parse('2009-06-18 12:00pm UTC').to_s(:db) %>
193
+ speaking_experience: "I know everything there is about stratocumulus clouds."
194
+ audience_level: a
195
+ title: "The Cloud is Falling!"
196
+ excerpt: "They told me to put all of my data in the cloud, now it's falling on me."
197
+ description: "None of the other animals believe me."
198
+ status: confirmed
199
+ session_type: short_form
200
+ room: burnside
201
+
202
+ business_session:
203
+ event_id: 2009
204
+ track: hacks
205
+ submitted_at: <%= Time.now.to_s(:db) %>
206
+ start_time: <%= Time.parse('2009-06-18 12:00pm UTC').to_s(:db) %>
207
+ speaking_experience: "I own you."
208
+ audience_level: a
209
+ title: "Give us money."
210
+ excerpt: "$ pls."
211
+ description: "3. Profit"
212
+ status: confirmed
213
+ session_type: short_form
214
+ room: burnside
215
+
216
+ sql_server_session:
217
+ event_id: 2009
218
+ track: business
219
+ submitted_at: <%= Time.now.to_s(:db) %>
220
+ start_time: <%= Time.parse('2009-06-17 10:00am UTC').to_s(:db) %>
221
+ speaking_experience: "Microsoft owns me."
222
+ audience_level: a
223
+ title: "SQL Server Session"
224
+ excerpt: "A brief talk about SQL server."
225
+ description: "none"
226
+ status: confirmed
227
+ session_type: shorter_form
228
+ room: burnside
229
+
230
+ couchdb_session:
231
+ event_id: 2009
232
+ track: hacks
233
+ submitted_at: <%= Time.now.to_s(:db) %>
234
+ start_time: <%= Time.parse('2009-06-17 10:30am UTC').to_s(:db) %>
235
+ speaking_experience: "I write all my code using curl."
236
+ audience_level: a
237
+ title: "CouchDB Session"
238
+ excerpt: "A brief talk about CouchDB."
239
+ description: "Hopefully without porn."
240
+ status: confirmed
241
+ session_type: shorter_form
242
+ room: burnside
243
+
244
+ bigtable_session:
245
+ event_id: 2009
246
+ track: hacks
247
+ submitted_at: <%= Time.now.to_s(:db) %>
248
+ start_time: <%= Time.parse('2009-06-17 11:00am UTC').to_s(:db) %>
249
+ speaking_experience: "My table is bigger than yours."
250
+ audience_level: a
251
+ title: "BigTable Session"
252
+ excerpt: "Big table, short talk."
253
+ description: "This table is bigger than you are."
254
+ status: confirmed
255
+ session_type: shorter_form
256
+ room: burnside
@@ -0,0 +1,13 @@
1
+ # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
2
+
3
+ ballroom:
4
+ name: "Ballroom"
5
+ description: "It's a room, for balls"
6
+
7
+ burnside:
8
+ name: "Burnside"
9
+ description: "It's a room, under construction"
10
+
11
+ morrison:
12
+ name: "Morrison"
13
+ description: "It's a room with a funny walkway"
@@ -0,0 +1,23 @@
1
+ # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
2
+
3
+ opening:
4
+ event_id: 2009
5
+ title: 'Opening'
6
+ excerpt: 'Yay, welcome!'
7
+ description: 'Is there tea?'
8
+ start_time: <%= Time.zone.parse('2009-06-17 09:00am').to_s(:db) %>
9
+ # Note that this has no :duration
10
+
11
+ coffee_break:
12
+ event_id: 2009
13
+ title: 'Coffee Break'
14
+ excerpt: 'Yay, coffee!'
15
+ description: 'Is there tea?'
16
+ start_time: <%= Time.zone.parse('2009-06-17 09:45am').to_s(:db) %>
17
+ duration: 15
18
+
19
+ unscheduled:
20
+ event_id: 2009
21
+ title: 'Unschedule schedule item'
22
+ excerpt: 'When do I start? No one knows.'
23
+ description: 'When do I end? No one knows.'
@@ -0,0 +1,19 @@
1
+ # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
2
+
3
+ short_form:
4
+ event_id: 2009
5
+ title: "Short-Form - 45 minutes"
6
+ duration: 45
7
+ description: "A set of lightning talks, a one-or-more person presentation, a panel, or something else covering specific, concise material."
8
+
9
+ long_form:
10
+ event_id: 2009
11
+ title: "Long-Form - 1 hour, 45 minutes"
12
+ duration: 105
13
+ description: "We're especially interested in seeing interactive approaches: tutorials, guided discussions, or other hands-on explorations."
14
+
15
+ shorter_form:
16
+ event_id: 2009
17
+ title: "Shorter-Form - 15 minutes"
18
+ duration: 15
19
+ description: "It's short. Really short."
@@ -0,0 +1,62 @@
1
+ # == Schema Information
2
+ #
3
+ # Table name: snippets
4
+ #
5
+ # id :integer not null, primary key
6
+ # slug :string(255) not null
7
+ # description :text default(""), not null
8
+ # content :text
9
+ # value :integer
10
+ # public :boolean default(TRUE)
11
+ # created_at :datetime
12
+ # updated_at :datetime
13
+ #
14
+
15
+ a:
16
+ slug: proposals_form_text
17
+ description: "Proposal: form text"
18
+ content: 'If you had five minutes to talk to Portland what would you say? What if you only got 20 slides and they rotated automatically after 15 seconds? Launch a web site? Teach a hack? Talk about recent learnings, successes, failures? Fill out the form below to submit your talk. We are looking for talks that will inspire and teach, not recruiting or product pitches.'
19
+
20
+ d:
21
+ slug: proposals_not_accepted_error
22
+ description: 'Proposals: error shown when not accepting proposals'
23
+ content: 'Sorry, we are no longer accepting submissions.'
24
+
25
+ <% openid_common_text = %{OpenID account (<a onclick='window.open(this.href);return false;' href='http://openid.net/what/'>what is OpenID?</a>) so you can create proposals and come back later to edit them. If you need an OpenID account, you can <a onclick='window.open(this.href);return false;' href='http://openid.net/get/'>get a free account</a> in about a minute.} %>
26
+
27
+ e:
28
+ slug: login_openid_text
29
+ description: "OpenID login: form text"
30
+ content: "Sign in with your <%= openid_common_text %>"
31
+
32
+ f:
33
+ slug: proposals_openid_text
34
+ description: "Proposals: OpenID text"
35
+ content: "<b>Optional:</b> To be able to edit your proposal later, please login first with an <%= openid_common_text %>"
36
+
37
+ g:
38
+ slug: tracks_index_intro
39
+ description: "An introduction for the tracks index."
40
+ content: "<p>In order to create a conference that promotes cross-pollination as well as providing space for in-depth discussion, we’ve split the tracks into the following five areas:</p>"
41
+
42
+ h:
43
+ slug: proposals_acceptance_email_text
44
+ description: "Text of the email notifying speakers that their proposal was accepted"
45
+ content: |
46
+ <p><strong>Congratulations!</strong> Your talk was accepted<br>%SPEAKER_NAMES%<br>%PROPOSAL_TITLE%<br>%START_TIME%<br>
47
+ %TRACK%<br>%AUDIENCE_LEVEL%<br>%FORMAT%<br>Click here: %PROPOSAL_URL% %SPEAKER_CONFIRM_URL% %SPEAKER_DECLINE_URL%</p>
48
+
49
+ i:
50
+ slug: proposals_acceptance_email_subject
51
+ description: "Subject of the email notifying speakers that their proposal was accepted"
52
+ content: "Your talk was accepted"
53
+
54
+ j:
55
+ slug: proposals_rejected_email_text
56
+ description: "Text of the email notifying speakers that their proposal was rejected"
57
+ content: "<p>Sorry</p>"
58
+
59
+ k:
60
+ slug: proposals_rejected_email_subject
61
+ description: "Subject of the email notifying speakers that their proposal was rejected"
62
+ content: "Your talk was not accepted"