!;
print qq();
print qq();
if ($image != -1)
{
print qq();
print qq();
print qq( );
print qq();
print qq( | );
}
print qq!!;
print qq!$message->{subject}!;
print qq! | !;
print qq!| !;
print qq!!;
print qq!sent by $message->{sender} !;
print qq!on !.(verbosedate($message->{date}));
# print qq! (!.get_age($message->{date}).qq! ago)!;
print qq! | !;
print qq!!;
print qq! !;
print qq! | !;
print qq!| \n!;
print linebr($message->{body});
print qq! | !;
print qq!!;
print qq! !;
print qq! | !;
print qq!| !;
print qq!!;
if ($message->{mbox} =~ /drafts/)
{
print qq{[edit] };
}
else
{
print qq{[reply] };
}
print qq![delete]!;
print qq!!;
print qq! | !;
print qq! !;
print qq!!;
}
sub message_list
{
my ($messages, $box) = @_;
my $r = 0;
if ($DEBUG)
{
print qq!Printing message list. Message ids:!;
for (my $i = 0; $i < @$messages; $i++)
{ print $messages->[$i]->{id}." "; }
print qq!\n\n!;
}
if ($messages == -1)
{
print qq[ No messages in this mailbox!];
return;
}
print qq! !;
foreach my $message (@$messages)
{
display_message_row($message, $box, $r);
$r = $r ? 0 : 1;
}
print " \n\n";
}
sub display_message_row
{
my ($m, $box, $r) = @_;
my $color = carbondate($m->{date});
if ($DEBUG)
{
print qq!Displaying message $m->{id}\n!;
}
print qq[ |
];
print qq[| ];
print "";
if ($m->{sender} eq "system")
{
print qq(system);
}
elsif ($m->{sender} eq $USER->{username})
{
print qq[to $m->{recipient}];
}
else
{
print qq[$$m{sender}];
}
print qq[ · ];
print "";
print " | ";
print qq[];
print qq[];
if ($$m{unread})
{ print qq[$m->{subject}]; }
else
{ print qq[$m->{subject}]; }
print qq[];
print " | ";
my ($tddate, $tdtime) = verbosedatetime($m->{date});
print qq[];
print qq[$tddate ];
print " | ";
print qq[];
print qq[$tdtime];
print " | ";
print qq[];
print qq[].hushsize($m->{size},.0000001,1).qq[];
print " | ";
print qq[];
if ($box =~ /drafts/)
{
print qq{[edit] };
}
else
{
print qq{[reply] };
}
print qq{[delete]};
print qq[ | ];
print qq[
\n];
}
# sort methods
# title, date, size, files, username
sub get_sort_method
{
my ($s, $o) = @_;
if ($o eq "a")
{
if ($s eq "t") { return \&sort_by_subject; }
elsif ($s eq "s") { return \&sort_by_sender; }
elsif ($s eq "d") { return \&sort_by_date; }
}
elsif ($o eq "d")
{
if ($s eq "t") { return \&rsort_by_subject; }
elsif ($s eq "s") { return \&rsort_by_sender; }
elsif ($s eq "d") { return \&rsort_by_date; }
}
else
{ return \&rsort_by_date; }
}
sub sort_by_subject { sort { uc($a->{subject}) cmp uc($b->{subject}) } @_; }
sub rsort_by_subject { sort { uc($b->{subject}) cmp uc($a->{subject}) } @_; }
sub sort_by_date { sort { $a->{date} <=> $b->{date} } @_; }
sub rsort_by_date { sort { $b->{date} <=> $a->{date} } @_; }
sub sort_by_sender { sort { uc($a->{sender}) cmp uc($b->{sender}) } @_; }
sub rsort_by_sender { sort { uc($b->{sender}) cmp uc($a->{sender}) } @_; }
1;