Meilleure génération rss
This commit is contained in:
parent
b5fd79e4e0
commit
e90e4d9f0c
4
Gemfile
4
Gemfile
@ -1,8 +1,8 @@
|
||||
source 'https://rubygems.org'
|
||||
|
||||
gem 'rails', '~> 4.1.0.rc1'
|
||||
gem 'rails'
|
||||
# Use SCSS for stylesheets
|
||||
gem 'sass-rails', '~> 4.0.1'
|
||||
gem 'sass-rails'
|
||||
|
||||
# Use Uglifier as compressor for JavaScript assets
|
||||
gem 'uglifier'
|
||||
|
34
Gemfile.lock
34
Gemfile.lock
@ -60,8 +60,8 @@ GEM
|
||||
arel (5.0.1.20140414130214)
|
||||
ast (2.0.0)
|
||||
bcrypt (3.1.7)
|
||||
bourbon (3.2.3)
|
||||
sass (~> 3.2)
|
||||
bourbon (4.0.2)
|
||||
sass (~> 3.3)
|
||||
thor
|
||||
brakeman (2.6.1)
|
||||
erubis (~> 2.6)
|
||||
@ -86,10 +86,18 @@ GEM
|
||||
coffee-script-source
|
||||
execjs
|
||||
coffee-script-source (1.7.1)
|
||||
compass (0.12.7)
|
||||
compass (1.0.0)
|
||||
chunky_png (~> 1.2)
|
||||
fssm (>= 0.2.7)
|
||||
sass (~> 3.2.19)
|
||||
compass-core (~> 1.0.0)
|
||||
compass-import-once (~> 1.0.5)
|
||||
rb-fsevent (>= 0.9.3)
|
||||
rb-inotify (>= 0.9)
|
||||
sass (>= 3.3.13, < 3.5)
|
||||
compass-core (1.0.0)
|
||||
multi_json (~> 1.0)
|
||||
sass (>= 3.3.0, < 3.5)
|
||||
compass-import-once (1.0.5)
|
||||
sass (>= 3.2, < 3.5)
|
||||
compass-rails (2.0.0)
|
||||
compass (>= 0.12.2)
|
||||
devise (3.3.0)
|
||||
@ -115,7 +123,6 @@ GEM
|
||||
formatador (0.2.5)
|
||||
formtastic (2.3.0.rc4)
|
||||
actionpack (>= 3.0)
|
||||
fssm (0.2.10)
|
||||
guard (2.6.1)
|
||||
formatador (>= 0.2.4)
|
||||
listen (~> 2.7)
|
||||
@ -196,7 +203,7 @@ GEM
|
||||
activerecord (>= 3.0)
|
||||
polyglot (0.3.5)
|
||||
powerpack (0.0.9)
|
||||
pry (0.10.0)
|
||||
pry (0.10.1)
|
||||
coderay (~> 1.1.0)
|
||||
method_source (~> 0.8.1)
|
||||
slop (~> 3.4)
|
||||
@ -251,11 +258,10 @@ GEM
|
||||
sexp_processor (~> 4.0)
|
||||
ruby_parser (3.5.0)
|
||||
sexp_processor (~> 4.1)
|
||||
sass (3.2.19)
|
||||
sass-rails (4.0.2)
|
||||
sass (3.3.14)
|
||||
sass-rails (4.0.1)
|
||||
railties (>= 4.0.0, < 5.0)
|
||||
sass (~> 3.2.0)
|
||||
sprockets (~> 2.8, <= 2.11.0)
|
||||
sass (>= 3.1.10)
|
||||
sprockets-rails (~> 2.0.0)
|
||||
sdoc (0.4.1)
|
||||
json (~> 1.7, >= 1.7.7)
|
||||
@ -270,7 +276,7 @@ GEM
|
||||
tilt (>= 1.3.3, < 2.1)
|
||||
slop (3.6.0)
|
||||
spring (1.1.3)
|
||||
sprockets (2.11.0)
|
||||
sprockets (2.12.1)
|
||||
hike (~> 1.2)
|
||||
multi_json (~> 1.0)
|
||||
rack (~> 1.0)
|
||||
@ -339,10 +345,10 @@ DEPENDENCIES
|
||||
modernizr-rails
|
||||
mysql2
|
||||
quiet_assets
|
||||
rails (~> 4.1.0.rc1)
|
||||
rails
|
||||
rails-i18n
|
||||
redcarpet
|
||||
sass-rails (~> 4.0.1)
|
||||
sass-rails
|
||||
sdoc (~> 0.4.0)
|
||||
select2-rails
|
||||
simple_calendar
|
||||
|
@ -1,34 +1,50 @@
|
||||
xml.instruct!
|
||||
|
||||
xml.rdf :RDF, 'xmlns:rdf' => "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
|
||||
'xmlns' => "http://purl.org/rss/1.0/", 'xmlns:dc' => "http://purl.org/dc/elements/1.1/",
|
||||
'xmlns:sy' => "http://purl.org/rss/1.0/modules/syndication/",
|
||||
'xmlns:admin' => "http://webns.net/mvcb/", 'xmlns:cc' => "http://web.resource.org/cc/",
|
||||
'xmlns:content' => "http://purl.org/rss/1.0/modules/content/",
|
||||
'xmlns:georss' => "http://www.georss.org/georss" do
|
||||
xml.rdf :RDF,
|
||||
'xmlns:rdf' => 'http://www.w3.org/1999/02/22-rdf-syntax-ns#',
|
||||
'xmlns' => 'http://purl.org/rss/1.0/',
|
||||
'xmlns:dc' => 'http://purl.org/dc/elements/1.1/',
|
||||
'xmlns:sy' => 'http://purl.org/rss/1.0/modules/syndication/',
|
||||
'xmlns:admin' => 'http://webns.net/mvcb/',
|
||||
'xmlns:cc' => 'http://web.resource.org/cc/',
|
||||
'xmlns:content' => 'http://purl.org/rss/1.0/modules/content/',
|
||||
'xmlns:georss' => 'http://www.georss.org/georss' do
|
||||
xml.channel 'rdf:about' => root_url do
|
||||
xml.title "Agenda du Libre [ #{params[:region].present? && params[:region] != 'all' ? Region.find(params[:region]).name : t('.all_regions')} ]"
|
||||
xml.description 'Agenda des événements autour du Logiciel Libre'
|
||||
xml.link 'http://www.agendadulibre.org'
|
||||
title = t 'layouts.application.title'
|
||||
if params[:region].present? && params[:region] != 'all'
|
||||
region = Region.find(params[:region]).name
|
||||
title += " [#{region}]"
|
||||
end
|
||||
xml.title title
|
||||
xml.description t 'layouts.application.subtitle'
|
||||
xml.link root_url
|
||||
xml.dc :language, 'fr'
|
||||
xml.dc :creator, 'AgendaDuLibre.org'
|
||||
xml.dc :creator, root_url
|
||||
|
||||
xml.items do
|
||||
xml.rdf :Seq do
|
||||
for event in @events
|
||||
@events.each do |event|
|
||||
xml.rdf :li, 'rdf:resource' => event_url(event)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
for event in @events
|
||||
@events.each do |event|
|
||||
xml.item 'rdf:about' => event_url(event) do
|
||||
xml.title "#{event.city}: #{event.title}, le #{l event.start_time.to_date, format: :long}"
|
||||
title = event.city
|
||||
title += ": #{event.title}"
|
||||
xml.title title + ", le #{l event.start_time.to_date, format: :long}"
|
||||
xml.link event_url event
|
||||
xml.dc :identifier, "#{event.id}@agendadulibre.org"
|
||||
domain = root_url.gsub(/www/, '').gsub(/http.?:../, '').gsub(/:.*/, '')
|
||||
xml.dc :identifier, "#{event.id}@#{domain}"
|
||||
xml.dc :date, event.start_time.iso8601
|
||||
xml.georss :point, "#{event.related_city.latitude} #{event.related_city.longitude}" rescue nil
|
||||
if event.related_city && event.related_city.latitude &&
|
||||
event.related_city.longitude
|
||||
xml.georss :point,
|
||||
"#{event.related_city.latitude}
|
||||
#{event.related_city.longitude}"
|
||||
end
|
||||
|
||||
@event = event
|
||||
content = render file: '/events/show.html', locals: { rss: true }
|
||||
|
Loading…
Reference in New Issue
Block a user