Move icalendar_proposals to the application helper
One of the controllers didn't have access to the conference helper
This commit is contained in:
parent
50e876dd6f
commit
a3cc5fbd2a
2 changed files with 29 additions and 29 deletions
|
|
@ -166,4 +166,33 @@ module ApplicationHelper
|
||||||
object.picture.large.url
|
object.picture.large.url
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# adds events to icalendar for proposals in a conference
|
||||||
|
def icalendar_proposals(calendar, proposals, conference)
|
||||||
|
proposals.each do |proposal|
|
||||||
|
calendar.event do |e|
|
||||||
|
e.dtstart = proposal.time
|
||||||
|
e.dtend = proposal.time + (proposal.event_type.length * 60)
|
||||||
|
e.duration = "PT#{proposal.event_type.length}M"
|
||||||
|
e.created = proposal.created_at
|
||||||
|
e.last_modified = proposal.updated_at
|
||||||
|
e.summary = proposal.title
|
||||||
|
e.description = proposal.abstract
|
||||||
|
e.uid = proposal.guid
|
||||||
|
e.url = conference_program_proposal_url(conference.short_title, proposal.id)
|
||||||
|
v = conference.venue
|
||||||
|
if v
|
||||||
|
e.geo = v.latitude, v.longitude if v.latitude && v.longitude
|
||||||
|
location = ''
|
||||||
|
location += "#{proposal.room.name} - " if proposal.room.name
|
||||||
|
location += " - #{v.street}, " if v.street
|
||||||
|
location += "#{v.postalcode} #{v.city}, " if v.postalcode && v.city
|
||||||
|
location += "#{v.country_name}, " if v.country_name
|
||||||
|
e.location = location
|
||||||
|
end
|
||||||
|
e.categories = conference.title, "Difficulty: #{proposal.difficulty_level.title}", "Track: #{proposal.track.name}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
calendar
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -21,33 +21,4 @@ module ConferenceHelper
|
||||||
'%20Sponsorship'
|
'%20Sponsorship'
|
||||||
].join
|
].join
|
||||||
end
|
end
|
||||||
|
|
||||||
# adds events to icalendar for proposals in a conference
|
|
||||||
def icalendar_proposals(calendar, proposals, conference)
|
|
||||||
proposals.each do |proposal|
|
|
||||||
calendar.event do |e|
|
|
||||||
e.dtstart = proposal.time
|
|
||||||
e.dtend = proposal.time + proposal.event_type.length * 60
|
|
||||||
e.duration = "PT#{proposal.event_type.length}M"
|
|
||||||
e.created = proposal.created_at
|
|
||||||
e.last_modified = proposal.updated_at
|
|
||||||
e.summary = proposal.title
|
|
||||||
e.description = proposal.abstract
|
|
||||||
e.uid = proposal.guid
|
|
||||||
e.url = conference_program_proposal_url(conference.short_title, proposal.id)
|
|
||||||
v = conference.venue
|
|
||||||
if v
|
|
||||||
e.geo = v.latitude, v.longitude if v.latitude && v.longitude
|
|
||||||
location = ''
|
|
||||||
location += "#{proposal.room.name} - " if proposal.room.name
|
|
||||||
location += " - #{v.street}, " if v.street
|
|
||||||
location += "#{v.postalcode} #{v.city}, " if v.postalcode && v.city
|
|
||||||
location += "#{v.country_name}, " if v.country_name
|
|
||||||
e.location = location
|
|
||||||
end
|
|
||||||
e.categories = conference.title, "Difficulty: #{proposal.difficulty_level.title}", "Track: #{proposal.track.name}"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
calendar
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue