CPAN-Mirror-Server-HTTP
view release on metacpan or search on metacpan
lib/CPAN/Mirror/Server/HTTP.pm view on Meta::CPAN
] for grep { !/^\./ } readdir $DIR;
}
my $h = HTML::Tiny->new;
my @data;
foreach my $item ( sort keys %dir ) {
my $data = $dir{$item};
push @data, [
$h->td( { valign => 'top' },
[ $h->img({ src => '/icons/' . _guess_type( $data->[2], $item ),
alt => ( $data->[2] ? '[DIR]' : '[ ]' ) }) ],
[ $h->a( { href => ( $data->[2] ? "$item/" : $item ) }, $item ) ],
{ align => 'right' },
strftime("%d-%b-%Y %H:%M",localtime($data->[1])),
{ align => 'right' },
format_bytes( $data->[0] ),
),
];
}
lib/CPAN/Mirror/Server/HTTP.pm view on Meta::CPAN
my $resp = HTTP::Response->new( 200 );
$resp->header( 'Content-Type', 'image/gif' );
$resp->content( $icons{ $icon } );
{
use bytes;
$resp->header( 'Content-Length', length $resp->content );
}
return $resp;
}
sub _guess_type {
my $flag = shift;
return 'folder.gif' if $flag;
my $item = shift;
return 'compressed.gif' if $item =~ m!(\.tar\.gz|\.tar\.bz2|\.tgz|\.zip)$!i;
return 'unknown.gif';
}
sub _gen_301 {
my $uri = shift;
my $resp = HTTP::Response->new( 301 );
( run in 4.124 seconds using v1.01-cache-2.11-cpan-748bfb374f4 )