sub send_message { my ($message) = @_; new_message("$sender.outbox", $message); new_message("$recipient.inbox", $message); } sub display_message { my $message = shift; my $image = get_profile_image($message->{sender}, $AVATAR_MED_PREFIX); print qq!
!; print qq!!; print qq!]; print qq["; print qq["; my ($tddate, $tdtime) = verbosedatetime($m->{date}); print qq["; print qq["; print qq["; 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;
!; print qq(); print qq(); if ($image != -1) { print qq(); } print qq!!; print qq!!; print qq!!; print qq!!; print qq!!; print qq!!; print qq!
); print qq(); print qq(); print qq(); print qq(!; print qq!$message->{subject}!; 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!
\n!; print linebr($message->{body}); 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!!; } 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 ""; 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[]; if ($$m{unread}) { print qq[$m->{subject}]; } else { print qq[$m->{subject}]; } print qq[]; print "]; print qq[$tddate ]; print "]; print qq[$tdtime]; print "]; print qq[].hushsize($m->{size},.0000001,1).qq[]; print "]; if ($box =~ /drafts/) { print qq{[edit] }; } else { print qq{[reply] }; } print qq{[delete]}; print qq[