Sha256: 904c2819e97c2db1507a03ed7ce0db6491d0b9c5b1793d0840529f7a64f1804c

Contents?: true

Size: 1.14 KB

Versions: 2

Compression:

Stored size: 1.14 KB

Contents

# encoding: utf-8
module Wice
  module Columns #:nodoc:
    module CommonJsDateDatetimeConditionsGeneratorMixin #:nodoc:

      def generate_conditions(table_alias, opts)   #:nodoc:

        datetime = @column_type == :datetime || @column_type == :timestamp

        conditions = [[]]
        if opts[:fr]
          conditions[0] << " #{@column_wrapper.alias_or_table_name(table_alias)}.#{@column_wrapper.name} >= ? "
          date = opts[:fr].to_date
          if datetime
            date = date.to_datetime
          end
          conditions << date
        end

        if opts[:to]
          op = '<='
          date = opts[:to].to_date
          if @column_type == :bootstrap_datepicker
            date = opts[:to].to_date + 1.day
            op = '<'
          elsif datetime
            date = (date + 1).to_datetime
            op = '<'
          end
          conditions[0] << " #{@column_wrapper.alias_or_table_name(table_alias)}.#{@column_wrapper.name} #{op} ? "
          conditions << date
        end

        return false if conditions.size == 1

        conditions[0] = conditions[0].join(' and ')
        conditions
      end

    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
wice_grid_ms-3.6.1 lib/wice/columns/common_js_date_datetime_conditions_generator_mixin.rb
wice_grid_ms-3.6.0 lib/wice/columns/common_js_date_datetime_conditions_generator_mixin.rb