init III
This commit is contained in:
62
Perl OTRS/Kernel/cpan-lib/Mail/Field/Date.pm
Normal file
62
Perl OTRS/Kernel/cpan-lib/Mail/Field/Date.pm
Normal file
@@ -0,0 +1,62 @@
|
||||
# Copyrights 1995-2016 by [Mark Overmeer <perl@overmeer.net>].
|
||||
# For other contributors see ChangeLog.
|
||||
# See the manual pages for details on the licensing terms.
|
||||
# Pod stripped from pm file by OODoc 2.02.
|
||||
use strict;
|
||||
|
||||
package Mail::Field::Date;
|
||||
use vars '$VERSION';
|
||||
$VERSION = '2.18';
|
||||
|
||||
use base 'Mail::Field';
|
||||
|
||||
use Date::Format qw(time2str);
|
||||
use Date::Parse qw(str2time);
|
||||
|
||||
(bless [])->register('Date');
|
||||
|
||||
|
||||
sub set()
|
||||
{ my $self = shift;
|
||||
my $arg = @_ == 1 ? shift : { @_ };
|
||||
|
||||
foreach my $s (qw(Time TimeStr))
|
||||
{ if(exists $arg->{$s})
|
||||
{ $self->{$s} = $arg->{$s} }
|
||||
else { delete $self->{$s} }
|
||||
}
|
||||
|
||||
$self;
|
||||
}
|
||||
|
||||
sub parse($)
|
||||
{ my $self = shift;
|
||||
delete $self->{Time};
|
||||
$self->{TimeStr} = shift;
|
||||
$self;
|
||||
}
|
||||
|
||||
|
||||
sub time(;$)
|
||||
{ my $self = shift;
|
||||
|
||||
if(@_)
|
||||
{ delete $self->{TimeStr};
|
||||
return $self->{Time} = shift;
|
||||
}
|
||||
|
||||
$self->{Time} ||= str2time $self->{TimeStr};
|
||||
}
|
||||
|
||||
sub stringify
|
||||
{ my $self = shift;
|
||||
$self->{TimeStr} ||= time2str("%a, %e %b %Y %T %z", $self->time);
|
||||
}
|
||||
|
||||
sub reformat
|
||||
{ my $self = shift;
|
||||
$self->time($self->time);
|
||||
$self->stringify;
|
||||
}
|
||||
|
||||
1;
|
||||
Reference in New Issue
Block a user