Merge 3b1f7e5a00 into 4b6895f31d
This commit is contained in:
commit
3a15af4a18
6 changed files with 48 additions and 1 deletions
|
|
@ -3,7 +3,8 @@
|
|||
class ConferencesController < ApplicationController
|
||||
protect_from_forgery with: :null_session
|
||||
before_action :respond_to_options
|
||||
load_and_authorize_resource find_by: :short_title, except: :show
|
||||
load_and_authorize_resource find_by: :short_title, except: [:show, :feed]
|
||||
skip_authorization_check only: :feed
|
||||
|
||||
def index
|
||||
@current = Conference.upcoming.reorder(start_date: :asc)
|
||||
|
|
@ -108,6 +109,13 @@ class ConferencesController < ApplicationController
|
|||
end
|
||||
end
|
||||
|
||||
def feed
|
||||
@conferences = Conference.order(created_at: :desc)
|
||||
respond_to do |format|
|
||||
format.rss { render layout: false }
|
||||
end
|
||||
end
|
||||
|
||||
def code_of_conduct; end
|
||||
|
||||
private
|
||||
|
|
|
|||
18
app/views/conferences/feed.rss.builder
Normal file
18
app/views/conferences/feed.rss.builder
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
xml.instruct! :xml, version: "1.0"
|
||||
xml.rss version: "2.0" do
|
||||
xml.channel do
|
||||
xml.title "#{ENV.fetch('OSEM_NAME', 'OSEM')} - Conferences"
|
||||
xml.description "Conferences from #{ENV.fetch('OSEM_NAME', 'OSEM')}"
|
||||
xml.link conferences_url
|
||||
|
||||
@conferences.each do |conference|
|
||||
xml.item do
|
||||
xml.title conference.title
|
||||
xml.description conference.description
|
||||
xml.pubDate conference.created_at.to_fs(:rfc822)
|
||||
xml.link conference_url(conference.short_title)
|
||||
xml.guid conference_url(conference.short_title)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -23,6 +23,9 @@
|
|||
%span.btn-group
|
||||
= link_to("Days only", calendar_url(protocol: 'webcal', format: 'ics'), class: 'btn btn-default')
|
||||
= link_to("Detailed", calendar_url(protocol: 'webcal', format: 'ics', full: true), class: 'btn btn-default')
|
||||
%p
|
||||
Subscribe to the RSS feed:
|
||||
= link_to("RSS Feed", feed_url(format: :rss), class: 'btn btn-default')
|
||||
|
||||
-content_for :script_body do
|
||||
:javascript
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
%meta{content: '', name: 'author'}
|
||||
= stylesheet_link_tag "application", media: 'all'
|
||||
= javascript_include_tag "application"
|
||||
= auto_discovery_link_tag(:rss, feed_url(format: :rss), title: "#{ENV.fetch('OSEM_NAME', 'OSEM')} Conferences RSS Feed")
|
||||
|
||||
= csrf_meta_tags
|
||||
= content_for(:script_head)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue