File Coverage

blib/lib/Mail/LMLM/Types/GoogleGroups.pm
Criterion Covered Total %
statement 12 43 27.9
branch 0 10 0.0
condition 0 3 0.0
subroutine 4 11 36.3
pod 5 5 100.0
total 21 72 29.1


line stmt bran cond sub pod time code
1             package Mail::LMLM::Types::GoogleGroups;
2             $Mail::LMLM::Types::GoogleGroups::VERSION = '0.6805';
3 1     1   6 use strict;
  1         2  
  1         23  
4 1     1   4 use warnings;
  1         2  
  1         25  
5              
6 1     1   8 use Mail::LMLM::Types::Mailman;
  1         1  
  1         30  
7              
8 1     1   5 use vars qw(@ISA);
  1         2  
  1         413  
9              
10             @ISA=qw(Mail::LMLM::Types::Mailman);
11              
12             sub parse_args
13             {
14 0     0 1   my $self = shift;
15              
16 0           my $args = shift;
17              
18              
19 0           $args = $self->SUPER::parse_args($args);
20              
21 0           my (@left, $key, $value);
22              
23 0           while (scalar(@$args))
24             {
25 0           $key = shift(@$args);
26 0           $value = shift(@$args);
27              
28 0 0         if ($key =~ /^-?(maintenance[-_]url)$/)
    0          
29             {
30 0           $self->{'maintenance_url'} = $value;
31             }
32             elsif ($key =~ /^-?(owner)$/)
33             {
34 0           $self->{'owner'} = $value;
35             }
36             else
37             {
38 0           push @left, $key, $value;
39             }
40             }
41              
42 0           $self->{'google_homepage'} =
43             "http://groups.google.com/group/" . $self->get_group_base(). "/";
44              
45 0           $self->{'homepage'} = $self->{'google_homepage'};
46              
47 0           return \@left;
48             }
49              
50             sub get_maintenance_url
51             {
52 0     0 1   my $self = shift;
53              
54 0 0         if (exists($self->{'maintenance_url'}))
55             {
56 0           return $self->{'maintenance_url'};
57             }
58             else
59             {
60 0           return $self->{'google_homepage'};
61             }
62             }
63              
64             sub group_form
65             {
66 0     0 1   my $self = shift;
67              
68 0           my $add = shift;
69              
70             return (
71 0 0         ( $self->get_group_base() .
72             ($add ? ("-" . $add) : "") )
73             ,
74             $self->get_hostname()
75             );
76             }
77              
78             sub _get_post_address
79             {
80 0     0     my $self = shift;
81              
82 0           return $self->group_form();
83             }
84              
85             sub _get_owner_address
86             {
87 0     0     my $self = shift;
88              
89 0 0         if ($self->{owner})
90             {
91 0           return @{$self->{owner}};
  0            
92             }
93             else
94             {
95 0           return $self->group_form("owner");
96             }
97             }
98              
99             sub get_default_hostname
100             {
101 0     0 1   return "googlegroups.com";
102             }
103              
104             sub get_online_archive
105             {
106 0     0 1   my $self = shift;
107              
108 0   0       return $self->SUPER::get_online_archive()
109             || $self->get_maintenance_url();
110             }
111             1;
112              
113             __END__