class BootstrapFormExtensions::Scheduler::Serializer
Attributes
default_selection[R]
to_format[R]
Public Class Methods
new(to_format, default_selection)
click to toggle source
# File lib/bootstrap_form_extensions/scheduler.rb, line 42 def initialize to_format, default_selection @to_format = to_format @default_selection = default_selection end
Public Instance Methods
dump(value_from_user)
click to toggle source
# File lib/bootstrap_form_extensions/scheduler.rb, line 54 def dump value_from_user value_from_user = JSON.parse value_from_user rescue [] if value_from_user.is_a? String value_from_user = [] unless value_from_user.is_a? Array value_from_user = parse_schedule_array value_from_user value_from_user = value_from_user.to_yaml if to_format == :yaml value_from_user end
load(value_from_db)
click to toggle source
# File lib/bootstrap_form_extensions/scheduler.rb, line 47 def load value_from_db value_from_db = YAML.load(value_from_db.to_s || '') if to_format == :yaml value_from_db = [] if value_from_db.blank? value_from_db = parse_schedule_array value_from_db unless value_from_db[6].try(:[], 23).present? value_from_db end
Private Instance Methods
parse_schedule_array(value)
click to toggle source
# File lib/bootstrap_form_extensions/scheduler.rb, line 64 def parse_schedule_array value Array.new(7) { |i| Array.new(24) { |j| (value[i][j].nil? && default_selection) || true?(value[i][j]) rescue default_selection } } end