]> git.proxmox.com Git - pmg-api.git/blame - PMG/RuleDB/EMail.pm
add more ruledb classes
[pmg-api.git] / PMG / RuleDB / EMail.pm
CommitLineData
0a580593
DM
1package PMG::RuleDB::EMail;
2
3use strict;
4use warnings;
5use Carp;
6use DBI;
7
8use PMG::RuleDB::WhoRegex;
9
10use base qw(PMG::RuleDB::WhoRegex);
11
12sub otype {
13 return 1001;
14}
15
16sub otype_text {
17 return 'Mail address';
18}
19
20sub oicon {
21 return 'mail.gif';
22}
23
24sub new {
25 my ($type, $address, $ogroup) = @_;
26 my $class = ref($type) || $type;
27
28 $address //= 'unknown@domain.tld';
29
30 my $self = $class->SUPER::new($address, $ogroup);
31
32 return $self;
33}
34
35sub who_match {
36 my ($self, $addr) = @_;
37
38 return (lc ($addr) eq lc ($self->address));
39}
40
41
42sub short_desc {
43 my $self = shift;
44
45 my $desc = $self->{address};
46
47 return $desc;
48}
49
501;
51
52__END__
53
54=head1 PMG::RuleDB::EMail
55
56A WHO object to check email addresses.
57
58=head2 Attribues
59
60=head3 address
61
62An Email address. We use case insensitive compares.
63
64=head2 Examples
65
66 $obj = PMG::RuleDB::Email->new ('you@yourdomain.com');
67