Apache-App-Mercury
view release on metacpan or search on metacpan
Mercury/Display.pm view on Meta::CPAN
$q->Tr
([$q->th({-align => 'left', -bgcolor => '#cc6699'},
[ $q->font({-size => '-1'}, "Mailbox"),
$q->font({-size => '-1'}, "Msgs"),
$q->font({-size => '-1'}, "Unread") ]),
(map {
my $bgcol = $color;
$color = ($color eq '#ffffff' ? '#ffccff' : '#ffffff');
my ($tot_unread, $box_unread) = $self->count_unread(undef, $_);
($q->td({-bgcolor => $bgcol, -nowrap},
$q->font({-size => '-1'},
($_ eq $self->{'current_box'}
? $q->strong('* '.$labels->{$_}.' *')
: $q->a({-href => BASE_URI."?mailbox=".
$self->uri_escape_noamp($_)},
$labels->{$_})))) .
$q->td({-bgcolor => $bgcol, -align => 'right'},
$q->font({-size => '-1'}, $#{$self->{$_}->{'index'}}+1)).
$q->td({-bgcolor => $bgcol, -align => 'right'},
$q->font({-size => '-1'},
($box_unread > 0
? $q->strong($q->span({-class => 'msgunread'},
$box_unread))
: ($_ ne 'outbox' ? '0' : '-')))))
} @{$self->{'mailboxes'}})
])
)
);
}
sub display_center_menu {
my ($self, $labels) = @_;
my $q = $self->{q};
my $last_time = localtime($self->{'last_mail_check'});
my $box = $self->{'current_box'};
# only allow message transfering if more than just in and out boxes
# never allow transfering to or from outbox
my (@transfer_boxes, $lbls);
if (($#{$self->{'mailboxes'}} >= 2) and ($box ne 'outbox')) {
foreach (@{$self->{'mailboxes'}}) {
if (($_ ne 'outbox') and ($_ ne $box)) {
push(@transfer_boxes, $_);
$lbls->{$_} = ucfirst($_);
}
}
$labels = $lbls if !$labels or ref $labels ne 'HASH';
}
my $msg_in_progress =
ref $self->{compose_msg} eq "Apache::App::Mercury::Message";
return
($q->table
({-cellspacing => 0, -cellpadding => 0,
-border => 0, -bgcolor => '#cccccc'},
$q->Tr
([$q->td({-align => 'right'},
$q->font({-size => '-1'},
$q->a({-href => BASE_URI.'?edit_mail_prefs=1'},
"Edit mail settings"))),
$q->td({-align => 'right'},
$q->hr({-width => '50%', -align => 'right', -size => 1})),
$q->td({-align => 'right'},
$q->font({-size => '-1'},
$q->submit('check_mail', "Check mail"))),
$q->td({-align => 'right'},
$q->font({-size => '-1'},
$q->em("Mail last checked at:".$q->br.
$q->u($last_time)))),
$q->td({-align => 'right'},
$q->hr({-width => '50%', -align => 'right', -size => 1})),
$q->td({-align => 'right'},
$q->font({-size => '-1'},
$q->submit('compose', ($msg_in_progress
? "Return to msg compose"
: "Compose new message")))),
$q->td({-align => 'right'},
$q->hr({-width => '50%', -align => 'right', -size => 1})),
($#{$self->{$box}->{'index'}} < 0
? ($q->td({-align => 'right'},
$q->font({-size => '-1'},
$q->em("There are no messages in this mailbox."))))
: ($box ne 'outbox'
? ($q->td({-align => 'right'},
$q->font({-size => '-1'},
(@transfer_boxes
? ($q->submit('transfer',
"Transfer selected messages") .
$q->br. "to Mailbox: ".
$q->popup_menu(-name => 'to_mailbox',
-values => \@transfer_boxes,
-labels => $labels))
: ($q->em("You can ".
$q->a({-href => BASE_URI.'?edit_mail_prefs=1'},
"create custom mailboxes")."."))))),
$q->td({-align => 'right'},
$q->hr({-width => '50%',-align =>'right',-size => 1})))
: () )),
$q->td({-align => 'right'},
$q->font({-size => '-1'},
$q->submit('delete',"Delete selected messages")))
])
)
);
}
sub display_msglist {
my ($self) = @_;
my $q = $self->{q};
my $box = $self->{'current_box'};
my $msglist = $self->{$box}->{'index'};
my $msgs = $self->{$box}->{'msgs'};
my $sortby = $self->{$box}->{'sortby'};
my $sortdir = $self->{$box}->{'sortdir'};
my $arrow = $sortdir eq 'up' ? ' /\\' : ' \/';
my $color = '#ffffff';
return ($q->div({-align => 'center'}, $q->p . $q->p .
$q->em("There are no messages in this mailbox.")))
if $#$msglist < 0;
return
($q->table
({-width => '96%', -align => 'center'},
$q->Tr
([$q->th({-align => 'left', -bgcolor => '#8080ff'},
[' ',
$q->a({-href => BASE_URI."?".$box."_sortby=subject__".
($sortby eq 'subject' && $sortdir eq 'up' ?'down':'up'),
-class => 'msgsort'}, 'Subject') .
$q->font({-size => '-1'},
$q->span({-class => 'msgsort'}, " (click to view)")).
($sortby eq 'subject' ? $arrow : ''),
($box ne 'outbox'
? ($q->a({-href => BASE_URI."?".$box."_sortby=sender__".
($sortby eq 'sender' && $sortdir eq 'up'
? 'down' : 'up'),
-class => 'msgsort'}, 'Sender') .
($sortby eq 'sender' ? $arrow :''))
: ($q->a({-href => BASE_URI."?".$box."_sortby=recipient__".
($sortby eq 'recipient' && $sortdir eq 'up'
? 'down' : 'up'),
-class => 'msgsort'}, 'Recipient') .
($sortby eq 'recipient' ? $arrow : ''))),
$q->a({-href => BASE_URI."?".$box."_sortby=time__".
($sortby eq 'time' && $sortdir eq 'up' ? 'down':'up'),
-class => 'msgsort'}, 'Date') .
($sortby eq 'time' ? $arrow : '') ]),
(map {
my $id = $msglist->[$_];
my $bgcol = $color;
( run in 0.693 second using v1.01-cache-2.11-cpan-99c4e6809bf )