class CalendarDateSelect module IncludesHelper def calendar_date_select_stylesheets(options = {}) options.assert_valid_keys(:style, :format, :locale) style = options[:style] cds_css_file = style ? "calendar_date_select/#{style}" : "calendar_date_select/default" return cds_css_file end def calendar_date_select_javascripts(options = {}) options.assert_valid_keys(:style, :format, :locale) style = options[:style] locale = options[:locale] cds_css_file = style ? "calendar_date_select/#{style}" : "calendar_date_select/default" output = [] output << "calendar_date_select/calendar_date_select" output << "calendar_date_select/locale/#{locale}" if locale output << CalendarDateSelect.javascript_format_include if CalendarDateSelect.javascript_format_include return output end def calendar_date_select_includes(*args) return "" if @cds_already_included @cds_already_included=true options = (Hash === args.last) ? args.pop : {} options.assert_valid_keys(:style, :format, :locale) options[:style] ||= args.shift js = javascript_include_tag(*calendar_date_select_javascripts(options)) css = stylesheet_link_tag(*calendar_date_select_stylesheets(options)) "#{js}\n#{css}\n" end end end