Non event_calendar

What am I missing here, trying to get the event_calendar plugin working
with my existing app. Have installed the plugin, which I guess is a good
start, then this…

class Booking < ActiveRecord::Base
has_event_calendar :start_at_field => ‘arrival_date’, :end_at_field =>
‘departure_date’

Route…
map.availability_calendar ‘/availability_calendar/:year/:month’,
:controller => ‘properties’,
:action => ‘availability_calendar’,
:requirements => {:year => /\d{4}/, :month
=> /\d{1,2}/},
:year => nil,
:month => nil

Action in controller…
def availability_calendar
@month = (params[:month] || Time.zone.now.month).to_i
@year = (params[:year] || Time.zone.now.year).to_i
@shown_month = Date.civil(@year, @month)
@event_strips = Booking.event_strips_for_month(@shown_month)
end

View …
foo
<%= event_calendar %>

Result…
undefined local variable or method `event_calendar’ for
#ActionView::Base:0x102e77220

Interestingly if I change this…

class Booking < ActiveRecord::Base
has_event_calendar :start_at_field => ‘arrival_date’, :end_at_field =>
‘departure_date’

to simply

has_event_calendar

I get this error…

Mysql::Error: Unknown column ‘end_at’ in ‘where clause’: SELECT * FROM
bookings WHERE ((‘2010-10-30 23:00:00’ <= end_at) AND (start_at<
‘2010-12-05 00:00:00’)) ORDER BY start_at ASC

Which suggests the plugin is working it just doesn’t like my customised
start and end syntax?

Hmm, thinking out load here - I just created a fresh test app with just
the plugin and it worked.

dates are all of type DATETIME.

My dates of of type DATE - maybe that’s the problem.

Ignore me.

I needed a helper like this…
All good - :-), it looks Great.

module CalendarHelper
def month_link(month_date)
link_to(I18n.localize(month_date, :format => “%B”), {:month =>
month_date.month, :year => month_date.year})
end

custom options for this calendar

def event_calendar_opts
{
:year => @year,
:month => @month,
:event_strips => @event_strips,
:month_name_text => I18n.localize(@shown_month, :format => “%B
%Y”),
:previous_month_text => “<< " +
month_link(@shown_month.last_month),
:next_month_text => month_link(@shown_month.next_month) + " >>”
}
end

def event_calendar
# args is an argument hash containing :event, :day, and :options
calendar event_calendar_opts do |args|
event = args[:event]
%(#{h(event.name)})
end
end
end

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs