summaryrefslogtreecommitdiff
path: root/lib/Feed/Role/FixDateTime.pm
blob: 5169093911ac44487ddf17ebe8b06066ce90ce26 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package Feed::Role::FixDateTime; 
use Moose::Role;
use 5.012;
use namespace::autoclean;
use DateTime;
 
requires 'process_entry';
 
before process_entry => sub {
    my ($self,$entry) = @_;
 
    $self->log->trace('before process_entry - begin');
 
    for my $f ('issued','modified') {
        my $date = $entry->$f;
 
        if ($date && $date->time_zone->is_floating) {
            $date->set_time_zone('UTC');
        }
 
        $entry->$f($date);
    }
 
    $self->log->trace('before process_entry - end');
};
 
1;