Project

General

Profile

Patch #14735 » RM_14735_allow_negative_time_entries.diff

Jérôme BATAILLE, 2013-08-21 14:53

View differences:

conversions.rb (revision 281)
24 24
        def to_hours
25 25
          s = self.dup
26 26
          s.strip!
27
          if s =~ %r{^(\d+([.,]\d+)?)h?$}
27
          if s =~ %r{^([-]?\d+([.,]\d+)?)h?$}
28 28
            s = $1
29 29
          else
30 30
            # 2:30 => 2.5
31
            s.gsub!(%r{^(\d+):(\d+)$}) { $1.to_i + $2.to_i / 60.0 }
31
            s.gsub!(%r{^([-]?\d+):(\d+)$}) { $1.to_i + $2.to_i / 60.0 }
32 32
            # 2h30, 2h, 30m => 2.5, 2, 0.5
33
            s.gsub!(%r{^((\d+)\s*(h|hours?))?\s*((\d+)\s*(m|min)?)?$}) { |m| ($1 || $4) ? ($2.to_i + $5.to_i / 60.0) : m[0] }
33
            s.gsub!(%r{^(([-]?\d+)\s*(h|hours?))?\s*((\d+)\s*(m|min)?)?$}) { |m| ($1 || $4) ? ($2.to_i + $5.to_i / 60.0) : m[0] }
34 34
          end
35 35
          # 2,5 => 2.5
36 36
          s.gsub!(',', '.')
(1-1/2)