All pastes #961967 Raw Edit

Someone

public text v1 · immutable
#961967 ·published 2008-03-29 11:16 UTC
rendered paste body
#!/usr/bin/perl

use warnings;
use URI;
use File::stat;
use XML::Atom::SimpleFeed;
use POSIX qw( strftime );
use XML::Tidy;

 my $appdir="/Users/phil/atom/app/";
 my $urlbase = "http://foo.bar";
 my $urldir = "appcast";
 my $appurl="$urlbase/$urldir";
 my $dirbase = "/Users/phil/atom";

my $feed = XML::Atom::SimpleFeed->new(
     title   => 'Example Feed',
     link    => 'http://example.org/',
     link    => { rel => 'self', href => 'http://example.org/atom', },
     updated => '2003-12-13T18:30:02Z',
     author  => 'John Doe',
 );

  opendir(D, "$appdir") || die "Can't open directory $appdir: $!\n";
  my @files = readdir(D);
  closedir(D) || die "Can't close dir $appdir\n";

  if ( $sort ) {
        @files = reverse(sort(@files));
  } 

  foreach my $file ( @files ) {
  next if $file !~ /\.[Zz][Ii][Pp]$/i;
  my $filePath="$appdir/$file";
  my @stat = stat($filePath);
  my $filesize = stat($filePath)->size;
  my ($zipname) = ( $file =~ /^(.+?)\.zip/i );
  my $date = strftime '%Y-%m-%dT%H:%M:%SZ', gmtime;

$feed->add_entry(
     title     => $zipname,
     link      => $appurl,
     id        => 'urn:uuid:1234-56-78910',
     summary   => 'Some text.',
     updated   =>  $date,
     category  => 'Atom',
     category  => 'Miscellaneous',
 );

}

my $text_section = $feed->as_string();
my $tidied_section = XML::Tidy->new('xml', $text_section); # or do it in one line

$tidied_section->tidy;
$tidied_section->write;



$feed->print