Class: RailsAdmin::AbstractModel::StatementBuilder::FilteringDuration

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_admin/abstract_model.rb

Instance Method Summary collapse

Constructor Details

#initialize(operator, value) ⇒ FilteringDuration

Returns a new instance of FilteringDuration.



215
216
217
218
# File 'lib/rails_admin/abstract_model.rb', line 215

def initialize(operator, value)
  @value = value
  @operator = operator
end

Instance Method Details

#betweenObject



248
249
250
# File 'lib/rails_admin/abstract_model.rb', line 248

def between
  [@value[1], @value[2]]
end

#defaultObject



252
253
254
# File 'lib/rails_admin/abstract_model.rb', line 252

def default
  [default_date, default_date]
end

#get_durationObject



220
221
222
223
224
225
226
227
228
229
# File 'lib/rails_admin/abstract_model.rb', line 220

def get_duration
  case @operator
  when 'between'   then between
  when 'today'     then today
  when 'yesterday' then yesterday
  when 'this_week' then this_week
  when 'last_week' then last_week
  else default
  end
end

#last_weekObject



243
244
245
246
# File 'lib/rails_admin/abstract_model.rb', line 243

def last_week
  [1.week.ago.to_date.beginning_of_week,
   1.week.ago.to_date.end_of_week]
end

#this_weekObject



239
240
241
# File 'lib/rails_admin/abstract_model.rb', line 239

def this_week
  [Date.today.beginning_of_week, Date.today.end_of_week]
end

#todayObject



231
232
233
# File 'lib/rails_admin/abstract_model.rb', line 231

def today
  [Date.today, Date.today]
end

#yesterdayObject



235
236
237
# File 'lib/rails_admin/abstract_model.rb', line 235

def yesterday
  [Date.yesterday, Date.yesterday]
end