From 0b7ba0445c3cee5de71b214da7761b980a96d123 Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Wed, 31 Oct 2018 10:54:17 +0100 Subject: [PATCH] CalendarEvent: add 'utc' flag to calendar specs Signed-off-by: Wolfgang Bumiller --- src/PVE/CalendarEvent.pm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/PVE/CalendarEvent.pm b/src/PVE/CalendarEvent.pm index 8a67d4a..56e9923 100644 --- a/src/PVE/CalendarEvent.pm +++ b/src/PVE/CalendarEvent.pm @@ -108,6 +108,9 @@ sub parse_calendar_event { }; my @parts = split(/\s+/, $event); + my $utc = (@parts && uc($parts[-1]) eq 'UTC'); + pop @parts if $utc; + if ($parts[0] =~ m/$dowsel/i) { my $dow_spec = shift @parts; @@ -158,7 +161,7 @@ sub parse_calendar_event { $m = [ sort { $a <=> $b } keys %$minutes_hash ]; } - return { h => $h, m => $m, dow => [ sort keys %$dow_hash ]}; + return { h => $h, m => $m, dow => [ sort keys %$dow_hash ], utc => $utc }; } sub is_leap_year($) { @@ -227,11 +230,12 @@ sub time_add_days($$) { } sub compute_next_event { - my ($calspec, $last, $utc) = @_; + my ($calspec, $last) = @_; my $hspec = $calspec->{h}; my $mspec = $calspec->{m}; my $dowspec = $calspec->{dow}; + my $utc = $calspec->{utc}; $last += 60; # at least one minute later -- 2.39.2