summaryrefslogtreecommitdiff
path: root/lib/Feed/Role/UnBase64.pm
blob: 943d066de27026413d9aec775b1a0835e9820acb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package Feed::Role::UnBase64; 
use Moose::Role;
use 5.012;
use namespace::autoclean;
use MIME::Base64;
use Try::Tiny;
 
around extract_entries => sub {
    my ($orig$self) = @_;
 
    my $entries = $self->$orig();
 
    for my $entry (@{ $entries }) {
        my $html$entry->content->body;
        if$html =~ m{\A[A-Za-z0-9/=-]+\z} ) {
            try { $entry->content( decode_base64($html) ) };
        };
    };
 
    return $entries;
};
 
1;