Как я могу передать параметр помощнику календаря событий?

Я использую плагин event_calendar с рельсами 2.3.8. У меня есть таблица событий со столбцами имени, места проведения и тренера. Я хочу раскрасить события в зависимости от тренера и места проведения. Я мог бы раскрасить его тренером. Но теперь я хочу передать параметр помощнику календаря событий, учитывая, является ли это тренером или местом проведения. Как мне передать этот параметр? Кто-нибудь работал с этим плагином? плиз помогите....


person Rosh    schedule 19.09.2011    source источник


Ответы (1)


Если вы посмотрите README.rdoc, вы получите

  <%= event_calendar %>


==Default Options

The default options for the calendar are:

  defaults = {
    :year => Time.zone.now.year,
    :month => Time.zone.now.month,
    :abbrev => true,
    :first_day_of_week => 0, # See note below when setting this
    :show_today => true,
    :month_name_text => Time.zone.now.strftime("%B %Y"),
    :previous_month_text => nil,
    :next_month_text => nil,
    :event_strips => [],

    # it would be nice to have these in the CSS file
    # but they are needed to perform height calculations
    :width => nil,
    :height => 500, 
    :day_names_height => 18,
    :day_nums_height => 18,
    :event_height => 18,
    :event_margin => 1,
    :event_padding_top => 1,

    :use_all_day => false,
    :use_javascript => true,
    :link_to_day_action => false
  }

Я беру следующие два параметра в своем календаре и переопределяю вспомогательный метод плагина в

<%= event_calendar(user.format, outbound) %>

приложение/помощники/calendar_helper.rb

  def event_calendar_opts(display_format, outbound)
    {
      :year => @year,
      :month => @month,
      :abbrev => nil,
      :event_strips => @event_strips,
      :display_properties => (display_format==4)? 4 : 3,
      :outbound => outbound,
      :month_name_text => I18n.localize(@shown_month, :format => "%B %Y"),
      :previous_month_text => month_link(@shown_month.last_month),
      :next_month_text => next_month_link(@shown_month.next_month)    }
  end

  def event_calendar(display_format, outbound)
    # args is an argument hash containing :event, :day, and :options
    index = 0
    calendar event_calendar_opts(display_format, outbound) do |args|
      html << some_html
      html
    end
  end
person Salil    schedule 19.09.2011
comment
Могу ли я передать параметр помощнику поставщика\плагинов\событий_календаря\библиотеки\событий_календаря\календаря, как указано выше? Я пытался его пройти. Но есть ошибки. - person Rosh; 20.09.2011
comment
@Rosh:- Да, вы можете передать параметр вспомогательному методу вашего плагина, используя описанный выше метод. В моем примере вы можете получить параметр в помощнике плагина следующим образом: options[:display_properties]. Один важный момент: всякий раз, когда вы меняете свой плагин, перезагружайте наш сервер. - person Salil; 20.09.2011