MailTools-2.18/0000755000175000001440000000000012717162045014072 5ustar00markovusers00000000000000MailTools-2.18/lib/0000755000175000001440000000000012717162044014637 5ustar00markovusers00000000000000MailTools-2.18/lib/Mail/0000755000175000001440000000000012717162044015521 5ustar00markovusers00000000000000MailTools-2.18/lib/Mail/Field/0000755000175000001440000000000012717162044016544 5ustar00markovusers00000000000000MailTools-2.18/lib/Mail/Field/AddrList.pod0000644000175000001440000001005512717162043020756 0ustar00markovusers00000000000000=encoding utf8 =head1 NAME Mail::Field::AddrList - object representation of e-mail address lists =head1 INHERITANCE Mail::Field::AddrList is a Mail::Field =head1 SYNOPSIS use Mail::Field::AddrList; $to = Mail::Field->new('To'); $from = Mail::Field->new('From', 'poe@daimi.aau.dk (Peter Orbaek)'); $from->create('foo@bar.com' => 'Mr. Foo', poe => 'Peter'); $from->parse('foo@bar.com (Mr Foo), Peter Orbaek '); # make a RFC822 header string print $from->stringify(),"\n"; # extract e-mail addresses and names @addresses = $from->addresses(); # strings @names = $from->names(); # strings @addr = $from->addr_list(); # Mail::Address objects (v2.00) # adjoin a new address to the list $from->set_address('foo@bar.com', 'Mr. Foo'); =head1 DESCRIPTION Defines parsing and formatting of address field, for the following fields: C, C, C, C, and C. All the normally used features of the address field specification of RFC2822 are implemented, but some complex (and therefore hardly ever used) constructs will not be understood. Use Mail::Message::Field::Full in MailBox if you need full RFC compliance. Extends L<"DESCRIPTION" in Mail::Field|Mail::Field/"DESCRIPTION">. =head1 METHODS Extends L<"METHODS" in Mail::Field|Mail::Field/"METHODS">. =head2 Constructors Extends L<"Constructors" in Mail::Field|Mail::Field/"Constructors">. =over 4 =item Mail::Field::AddrList-EB(FIELDS) Inherited, see L =item Mail::Field::AddrList-EB( TAG, HEAD [, INDEX ] ) Inherited, see L =item Mail::Field::AddrList-EB( TAG [, STRING | OPTIONS] ) Inherited, see L =back =head2 "Fake" constructors Extends L<""Fake" constructors" in Mail::Field|Mail::Field/""Fake" constructors">. =over 4 =item $obj-EB(OPTIONS) Inherited, see L =item $obj-EB() Inherited, see L =back =head2 Accessors Extends L<"Accessors" in Mail::Field|Mail::Field/"Accessors">. =over 4 =item $obj-EB(OPTIONS) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() =item Mail::Field::AddrList-EB() Inherited, see L =back =head2 Smart accessors Extends L<"Smart accessors" in Mail::Field|Mail::Field/"Smart accessors">. =over 4 =item $obj-EB() Returns the collected L objects. =item $obj-EB() Returns a list if email addresses, found in the field content. =item $obj-EB() Returns a list of nicely formatted named, for each of the addresses found in the content. =item $obj-EB(EMAIL, NAME) Add/replace an EMAIL address to the field. =item $obj-EB( [STRING] ) Inherited, see L =back =head1 DETAILS Extends L<"DETAILS" in Mail::Field|Mail::Field/"DETAILS">. =head1 DIAGNOSTICS =over 4 =item Error: Undefined subroutine called Mail::Field objects use autoloading to compile new functionality. Apparently, the method called is not implemented for the specific class of the field object. =back =head1 SEE ALSO This module is part of the MailTools distribution, F. =head1 AUTHORS The MailTools bundle was developed by Graham Barr. Later, Mark Overmeer took over maintenance without commitment to further development. Mail::Cap by Gisle Aas Eaas@oslonett.noE. Mail::Field::AddrList by Peter Orbaek Epoe@cit.dkE. Mail::Mailer and Mail::Send by Tim Bunce ETim.Bunce@ig.co.ukE. For other contributors see ChangeLog. =head1 LICENSE Copyrights 1995-2000 Graham Barr Egbarr@pobox.comE and 2001-2007 Mark Overmeer Eperl@overmeer.netE. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See F MailTools-2.18/lib/Mail/Field/AddrList.pm0000644000175000001440000000262412717162043020613 0ustar00markovusers00000000000000# Copyrights 1995-2016 by [Mark Overmeer ]. # 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::AddrList; use vars '$VERSION'; $VERSION = '2.18'; use base 'Mail::Field'; use Carp; use Mail::Address; my $x = bless []; $x->register('To'); $x->register('From'); $x->register('Cc'); $x->register('Reply-To'); $x->register('Sender'); sub create(@) { my ($self, %arg) = @_; $self->{AddrList} = {}; while(my ($e, $n) = each %arg) { $self->{AddrList}{$e} = Mail::Address->new($n, $e); } $self; } sub parse($) { my ($self, $string) = @_; foreach my $a (Mail::Address->parse($string)) { my $e = $a->address; $self->{AddrList}{$e} = $a; } $self; } sub stringify() { my $self = shift; join(", ", map { $_->format } values %{$self->{AddrList}}); } sub addresses { keys %{shift->{AddrList}} } # someone forgot to implement a method to return the Mail::Address # objects. Added in 2.00; a pity that the name addresses() is already # given :( That one should have been named emails() sub addr_list { values %{shift->{AddrList}} } sub names { map { $_->name } values %{shift->{AddrList}} } sub set_address($$) { my ($self, $email, $name) = @_; $self->{AddrList}{$email} = Mail::Address->new($name, $email); $self; } 1; MailTools-2.18/lib/Mail/Field/Generic.pod0000644000175000001440000000606012717162043020625 0ustar00markovusers00000000000000=encoding utf8 =head1 NAME Mail::Field::Generic - implementation for inspecific fields =head1 INHERITANCE Mail::Field::Generic is a Mail::Field =head1 SYNOPSIS use Mail::Field; my $field = Mail::Field->new('Subject', 'some subject text'); my $field = Mail::Field->new(subject => 'some subject text'); =head1 DESCRIPTION A generic implementation for header fields without own implementation. This is fine for fields like C, C, etc., where the field holds only a string of no particular importance/format. Extends L<"DESCRIPTION" in Mail::Field|Mail::Field/"DESCRIPTION">. =head1 METHODS Extends L<"METHODS" in Mail::Field|Mail::Field/"METHODS">. =head2 Constructors Extends L<"Constructors" in Mail::Field|Mail::Field/"Constructors">. =over 4 =item Mail::Field::Generic-EB(FIELDS) Inherited, see L =item Mail::Field::Generic-EB( TAG, HEAD [, INDEX ] ) Inherited, see L =item Mail::Field::Generic-EB( TAG [, STRING | OPTIONS] ) Inherited, see L =back =head2 "Fake" constructors Extends L<""Fake" constructors" in Mail::Field|Mail::Field/""Fake" constructors">. =over 4 =item $obj-EB(OPTIONS) -Option--Default Text '' =over 2 =item Text => STRING =back =item $obj-EB( [STRING] ) Set the new text, which is empty when no STRING is provided. =back =head2 Accessors Extends L<"Accessors" in Mail::Field|Mail::Field/"Accessors">. =over 4 =item $obj-EB(OPTIONS) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() =item Mail::Field::Generic-EB() Inherited, see L =back =head2 Smart accessors Extends L<"Smart accessors" in Mail::Field|Mail::Field/"Smart accessors">. =over 4 =item $obj-EB( [STRING] ) Inherited, see L =back =head1 DETAILS Extends L<"DETAILS" in Mail::Field|Mail::Field/"DETAILS">. =head1 DIAGNOSTICS =over 4 =item Error: Undefined subroutine called Mail::Field objects use autoloading to compile new functionality. Apparently, the method called is not implemented for the specific class of the field object. =back =head1 SEE ALSO This module is part of the MailTools distribution, F. =head1 AUTHORS The MailTools bundle was developed by Graham Barr. Later, Mark Overmeer took over maintenance without commitment to further development. Mail::Cap by Gisle Aas Eaas@oslonett.noE. Mail::Field::AddrList by Peter Orbaek Epoe@cit.dkE. Mail::Mailer and Mail::Send by Tim Bunce ETim.Bunce@ig.co.ukE. For other contributors see ChangeLog. =head1 LICENSE Copyrights 1995-2000 Graham Barr Egbarr@pobox.comE and 2001-2007 Mark Overmeer Eperl@overmeer.netE. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See F MailTools-2.18/lib/Mail/Field/Date.pod0000644000175000001440000000572712717162043020137 0ustar00markovusers00000000000000=encoding utf8 =head1 NAME Mail::Field::Date - a date header field =head1 INHERITANCE Mail::Field::Date is a Mail::Field =head1 SYNOPSIS use HTTP::Date 'time2iso'; my $field = Mail::Field->new(Date => time2iso()); =head1 DESCRIPTION Represents one "Date" header field. Extends L<"DESCRIPTION" in Mail::Field|Mail::Field/"DESCRIPTION">. =head1 METHODS Extends L<"METHODS" in Mail::Field|Mail::Field/"METHODS">. =head2 Constructors Extends L<"Constructors" in Mail::Field|Mail::Field/"Constructors">. =over 4 =item Mail::Field::Date-EB(FIELDS) Inherited, see L =item Mail::Field::Date-EB( TAG, HEAD [, INDEX ] ) Inherited, see L =item Mail::Field::Date-EB( TAG [, STRING | OPTIONS] ) Inherited, see L =back =head2 "Fake" constructors Extends L<""Fake" constructors" in Mail::Field|Mail::Field/""Fake" constructors">. =over 4 =item $obj-EB(OPTIONS) Inherited, see L =item $obj-EB() Inherited, see L =back =head2 Accessors Extends L<"Accessors" in Mail::Field|Mail::Field/"Accessors">. =over 4 =item $obj-EB(OPTIONS) -Option --Default Time undef TimeStr undef =over 2 =item Time => SECONDS =item TimeStr => STRING A string acceptable to Date::Parse. =back =item $obj-EB() Inherited, see L =item $obj-EB() =item Mail::Field::Date-EB() Inherited, see L =back =head2 Smart accessors Extends L<"Smart accessors" in Mail::Field|Mail::Field/"Smart accessors">. =over 4 =item $obj-EB( [STRING] ) Inherited, see L =item $obj-EB