Apache-FakeCookie
view release on metacpan or search on metacpan
FakeCookie.pm view on Meta::CPAN
}
# Copied directly from CGI::Cookie v1.20 by Lincoln Stein
# This internal routine creates an expires time exactly some number of
# hours from the current time. It incorporates modifications from
# Mark Fisher.
sub _expire_calc {
my($time) = @_;
my(%mult) = ('s'=>1,
'm'=>60,
'h'=>60*60,
'd'=>60*60*24,
'M'=>60*60*24*30,
'y'=>60*60*24*365);
# format for time can be in any of the forms...
# "now" -- expire immediately
# "+180s" -- in 180 seconds
# "+2m" -- in 2 minutes
# "+12h" -- in 12 hours
# "+1d" -- in 1 day
# "+3M" -- in 3 months
# "+2y" -- in 2 years
# "-3m" -- 3 minutes ago(!)
# If you don't supply one of these forms, we assume you are
t/a_cookie.t view on Meta::CPAN
$then = time unless $then;
my $now;
# wait for epoch
do { select(undef,undef,undef,0.1); $now = time }
while ( $then >= $now );
$now;
}
%scale = (
m => 60,
h => 60*60,
d => 60*60*24,
M => 60*60*24*30,
y => 60*60*24*30*365,
);
# make cookie time
sub cook_time {
my ($time) = @_;
return undef unless $time;
return $time if $time =~ /^[a-zA-Z]/;
if ( $time =~ /\D/ &&
$time =~ /([+-]?)(\d+)([mhdMy]?)/) {
my $x = $scale{$3} || 1;
( run in 2.001 seconds using v1.01-cache-2.11-cpan-7add2cbd662 )