diff options
author | Tomasz Maczukin <tomasz@maczukin.pl> | 2018-04-04 22:31:56 +0300 |
---|---|---|
committer | Tomasz Maczukin <tomasz@maczukin.pl> | 2018-04-04 22:31:56 +0300 |
commit | a52e3edd1a1869c2656193c95f8f2e8fd3bc8fa2 (patch) | |
tree | 4191e0b5149eb277c3236c2dacccfff4e5e39c8c /app/models/concerns/chronic_duration_attribute.rb | |
parent | 909c277e56e2773bab8368b6fdd3871a4c9c53f3 (diff) |
Specify default value for Project#build_timeout
Diffstat (limited to 'app/models/concerns/chronic_duration_attribute.rb')
-rw-r--r-- | app/models/concerns/chronic_duration_attribute.rb | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/app/models/concerns/chronic_duration_attribute.rb b/app/models/concerns/chronic_duration_attribute.rb index fa1eafb1d7a..593a9b3d71d 100644 --- a/app/models/concerns/chronic_duration_attribute.rb +++ b/app/models/concerns/chronic_duration_attribute.rb @@ -8,14 +8,14 @@ module ChronicDurationAttribute end end - def chronic_duration_attr_writer(virtual_attribute, source_attribute) + def chronic_duration_attr_writer(virtual_attribute, source_attribute, parameters = {}) chronic_duration_attr_reader(virtual_attribute, source_attribute) define_method("#{virtual_attribute}=") do |value| - chronic_duration_attributes[virtual_attribute] = value.presence || '' + chronic_duration_attributes[virtual_attribute] = value.presence || parameters[:default].presence.to_s begin - new_value = ChronicDuration.parse(value).to_i if value.present? + new_value = value.present? ? ChronicDuration.parse(value).to_i : parameters[:default].presence assign_attributes(source_attribute => new_value) rescue ChronicDuration::DurationParseError # ignore error as it will be caught by validation |