LP#1474507: fix interval_to_seconds for weeks and seconds
[OpenSRF.git] / src / perl / lib / OpenSRF / Utils.pm
index 61596d0..bb6858a 100644 (file)
@@ -261,11 +261,11 @@ sub interval_to_seconds {
         while ($interval =~ /\s*([\+-]?)\s*(\d+)\s*(\w+)\s*/g) {
                my ($sign, $count, $type) = ($1, $2, $3);
                $count = "$sign$count" if ($sign);
-                $amount += $count if ($type eq 's');
+                $amount += $count if ($type =~ /^s/);
                 $amount += 60 * $count if ($type =~ /^m(?!o)/oi);
                 $amount += 60 * 60 * $count if ($type =~ /^h/);
                 $amount += 60 * 60 * 24 * $count if ($type =~ /^d/oi);
-                $amount += 60 * 60 * 24 * 7 * $count if (defined $2 && $2 =~ /^w/oi);
+                $amount += 60 * 60 * 24 * 7 * $count if ($type =~ /^w/oi);
                 $amount += ((60 * 60 * 24 * 365)/12) * $count if ($type =~ /^mo/io);
                 $amount += 60 * 60 * 24 * 365 * $count if ($type =~ /^y/oi);
         }