From 49bdcdcffcea560d2cecf10b42a5b404fd7a5d38 Mon Sep 17 00:00:00 2001 From: Marnen Laibow-Koser Date: Thu, 11 Dec 2008 13:51:06 -0500 Subject: [PATCH] Move event date from helper into partial. [#10] --- app/helpers/events_helper.rb | 14 -------------- app/views/events/_event.html.haml | 2 +- spec/helpers/events_helper_spec.rb | 4 ---- spec/views/events/_event.html.haml_spec.rb | 8 ++++++-- 4 files changed, 7 insertions(+), 21 deletions(-) diff --git a/app/helpers/events_helper.rb b/app/helpers/events_helper.rb index 3ec96786..3b77921e 100644 --- a/app/helpers/events_helper.rb +++ b/app/helpers/events_helper.rb @@ -10,20 +10,6 @@ def attendance_status(event, user) end end - # Generates an HTML date element for #Event, including hCalendar[http://microformats.org/wiki/hcalendar] annotation. - # - # Usage: - # - # @event.date = today - # - # date_element(@event) # -> something like '24 Sep 2008' - def date_element(event) - # generate a microformat HTML date element - ical_date = h event.date.to_formatted_s(:ical) - full_date = h event.date.to_formatted_s(:rfc822) - content_tag :abbr, full_date, :class => :dtstart, :title => ical_date - end - # Generates a delete link for #Event. def delete_link(event) link_to h(_("delete")), url_for(:controller => 'events', :action => 'delete', :id => event.id), :class => :delete diff --git a/app/views/events/_event.html.haml b/app/views/events/_event.html.haml index 2d838f85..19929ab0 100644 --- a/app/views/events/_event.html.haml +++ b/app/views/events/_event.html.haml @@ -13,7 +13,7 @@ = delete_link(event) %td %span.uid&= ical_uid(event) - = date_element(event) + = render :partial => 'date', :locals => {:event => event} - if User.current_user.calendars.size > 1 %td.calendar &= event.calendar diff --git a/spec/helpers/events_helper_spec.rb b/spec/helpers/events_helper_spec.rb index a8ed68d7..31911670 100644 --- a/spec/helpers/events_helper_spec.rb +++ b/spec/helpers/events_helper_spec.rb @@ -29,10 +29,6 @@ helper.map_link(@event).should be_a_kind_of(String) end - it "should generate a microformat HTML date element as a String" do - @event.date = Time.now # arbitrary value - helper.date_element(@event).should be_a_kind_of(String) - end =begin #Delete this example and add some real ones or delete this file it "should include the EventsHelper" do diff --git a/spec/views/events/_event.html.haml_spec.rb b/spec/views/events/_event.html.haml_spec.rb index f217e57f..8cd2841e 100644 --- a/spec/views/events/_event.html.haml_spec.rb +++ b/spec/views/events/_event.html.haml_spec.rb @@ -128,10 +128,14 @@ response.should have_tag("#event_#{@event.id} a.ical[href=" << url << "]") end - it "should show a date for the event in RFC 822 format, wrapped in an of class 'dtstart' with ical-style date as the title" do + it "should show a date for the event, wrapped in an of class 'dtstart' with ical-style date as the title" do render_view date = @event.date - response.should have_tag("#event_#{@event.id} abbr.dtstart[title=" << date.to_formatted_s(:ical) << "]", date.to_formatted_s(:rfc822)) + response.should have_tag("#event_#{@event.id} abbr.dtstart[title=" << date.to_formatted_s(:ical) << "]") do |tag| + date.to_formatted_s(:rfc822).split(' ').each do |s| + tag.should have_tag('*', %r{#{s}}) + end + end end it "should have an element of class 'uid' for each event, containing an iCal unique ID for the event" do