Sha256: c0f54530d1cffb18561700712a5c9b90ab32668aad26f53fda16f28dc7ac358c

Contents?: true

Size: 1.21 KB

Versions: 4

Compression:

Stored size: 1.21 KB

Contents

class Clndr
  module Helpers
      include ActionView::Helpers::UrlHelper

      # find calendar and call .view with options
      def show_calendar(scope,*args)
        options = {}
        args.map{|x| options.merge! x}
        Clndr.get_calendar(scope.to_sym).view(options)
      end

      # generate links for calendar
      def next_month_link(scope,name,*args,&block)
        navigate_link scope,name,'forward', *args, &block
      end

      def previous_month_link(scope,name,*args,&block)
        navigate_link scope,name,'back', *args, &block
      end

      def next_year_link(scope,name,*args,&block)
        navigate_link scope,name,'nextYear', *args, &block
      end

      def previous_year_link(scope,name,*args,&block)
        navigate_link scope,name,'previousYear', *args, &block
      end

      def template_variable(variable)
        "<%= #{variable} %>".html_safe
      end

      private

      def navigate_link(scope,name,jsmethod,*args,&block)
        args.push(:onclick => "#{Clndr.get_calendar(scope.to_sym).name}.#{jsmethod}(#{'{withCallbacks: true}' if block_given?}); return false")
        options = {}
        args.map{|x| options.merge! x}
        link_to(name, '#', options )
      end

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
clndr-rails-1.4.7.2 lib/clndr-rails/helpers.rb
clndr-rails-1.4.7.1 lib/clndr-rails/helpers.rb
clndr-rails-1.4.6.1.beta lib/clndr-rails/helpers.rb
clndr-rails-1.2.10.1 lib/clndr-rails/helpers.rb