Module: TimeWrapper::TimeAttribute::ClassMethods
- Defined in:
- lib/time_wrapper/time_attribute.rb
Instance Method Summary collapse
- #get_time_wrapper_attribute(attribute) ⇒ Object
- #set_time_wrapper_attribute(attribute, value) ⇒ Object
- #validate_time_wrapper_attribute(attribute) ⇒ Object
Instance Method Details
#get_time_wrapper_attribute(attribute) ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/time_wrapper/time_attribute.rb', line 33 def get_time_wrapper_attribute(attribute) if instance_variable_get("@#{attribute}_time_wrapper_validation") instance_variable_get("@#{attribute}_wrong_value") else Time.current.change({hour: self[attribute].hour, min: self[attribute].min}) if self[attribute] end end |
#set_time_wrapper_attribute(attribute, value) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/time_wrapper/time_attribute.rb', line 20 def set_time_wrapper_attribute(attribute,value) begin if value.kind_of? Time self[attribute] = value.utc else self[attribute] = Time.zone.parse(value) end rescue ArgumentError, NoMethodError instance_variable_set("@#{attribute}_time_wrapper_validation", true) instance_variable_set("@#{attribute}_wrong_value", value) end end |
#validate_time_wrapper_attribute(attribute) ⇒ Object
41 42 43 |
# File 'lib/time_wrapper/time_attribute.rb', line 41 def validate_time_wrapper_attribute(attribute) errors.add(attribute,:wrong_time_format) unless send(attribute).blank? if instance_variable_get("@#{attribute}_time_wrapper_validation") end |