Commit graph

7 commits

Author SHA1 Message Date
Asish Kumar
c5e84221c2 Make iCalendar feed routes return calendar data
Both iCalendar routes were unusable:

* `/conferences/.../schedule.ics` raised
  `NoMethodError: undefined method 'icalendar_proposals'` because the
  `ConferenceHelper#icalendar_proposals` helper isn't auto-included in
  controllers; the action crashed before rendering.

* `/calendar.ics` silently redirected to `/`. The controller goes
  through `load_and_authorize_resource`, which authorises `:calendar`
  on `Conference` and is rejected for anonymous visitors because no
  ability grants it — CanCan's `AccessDenied` rescue redirects to
  root.

The helper is invoked through the controller `helpers` proxy so it
works in both contexts, and the calendar action is opted out of
resource loading and explicitly marked as not requiring authorization
since it serves a public feed across conferences. The helper is also
hardened so that proposals missing a room, difficulty level, track,
event type or scheduled time produce a valid event instead of
crashing the whole feed.
2026-05-14 11:02:49 +05:30
Sasi Olin
56838b6eb0 Don't set venue related values without a venue 2021-03-07 10:19:10 +01:00
Sasi Olin
d540092bfc
Add icalendar files (fixes #2147) 2021-03-06 21:18:39 +01:00
James Mason
6d31dfeef4 Add frozen_string_literal magic comment
re: https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Style/FrozenStringLiteralComment
2018-05-09 06:54:26 -07:00
kostino
69de418ccd Add call for booths in cfp section in conference splashpage(conferences#show),modified after the design changes 2018-03-27 07:51:06 -07:00
James Mason
fa55224163 Break up the one-query-of-doom
The single query was producing a tremendously large ActiveRecord allocation.

While this isn't nearly as cool as one query, it's still a significant
reduction in SQL trips, and now has the bonus of only loading what is
actually going to be displayed.
2017-12-22 10:48:55 -08:00
James Mason
27f6d8ad73 Let's get serious about linting, folks. 2017-12-22 10:48:55 -08:00