Apache-App-Mercury
view release on metacpan or search on metacpan
Mercury/Message.pm view on Meta::CPAN
: '') .
" (" . $_->{'fname'}." ".$_->{'lname'} . ")");
}
}
# generate attachment HTML
my @attach_html;
if (ref $self->{'Attachments'} eq "ARRAY") {
foreach (0..$#{$self->{'Attachments'}}) {
my $a = $self->{'Attachments'}->[$_];
next unless
$a->{'Filename'} and $a->{'Name'} and $a->{'AttachmentID'};
push(@attach_html,
($q->td({-align => 'right', -nowrap},
$q->b("Attachment ".($_+1).":")) .
$q->td({-nowrap},
$q->a({-href => $self->uri_escape_noamp
(Apache::App::Mercury::Config::ATTACHMENT_BASE_URI() .
$a->{'Filename'}),
-class => 'attach',
-target => 'theAttachmentWindow'},
$a->{'Name'}))));
}
}
my $markedup_body = $self->pretty_print($self->{'body'});
return
($q->table
($q->Tr
([$q->td({-align => 'right', -nowrap}, $q->b("Subject:")) .
$q->td({-nowrap}, $q->b($self->{'subject'})),
# add possible additional message headers according to customization
($dispclass->can("AUX_HEADERS")
? $dispclass->AUX_HEADERS($self)
: ''),
($self->{'time_formatted'}
? ($q->td({-align => 'right', -nowrap}, $q->b("Date:")) .
$q->td({-nowrap}, $self->{'time_formatted'}))
: ()),
$q->td({-align => 'right', -nowrap},
$q->b(!$is_memo ? "From:" : "Memo by:")) .
$q->td({-nowrap},
($is_sender
? $user
: ($dispclass->can("USER_INFO_HREF")
? $dispclass->USER_INFO_HREF($self->{'sender'}, $q)
: '')) .
" (".$self->{'sender_info'}->{'fname'}." ".
$self->{'sender_info'}->{'lname'}.")"),
(!$is_memo
? ($q->td({-align => 'right', -valign => 'top', -nowrap},
$q->b("To:")) . $q->td($recip_desc))
: ()),
@attach_html,
($self->{'action'}
? ()
: ($q->td({-align => 'right', -nowrap}, $q->b("Security level:")) .
$q->td({-nowrap}, $q->font({-face => 'fixed'},
uc $self->{'security'}))))
])
) .
$q->hr({-width => '200', -align => 'left', -size => '1'}) .
$q->pre($markedup_body)
);
}
sub display_compose {
my ($self) = @_;
my $messaging = $self->{messaging};
my $q = $messaging->{q};
my $sender = $messaging->{user_manager}->userprofile('user');
# see if there are defaults (a msg in composition, or a reply/forward...)
my $recipient = $self->{'sent_to'};
my $is_memo = ($sender eq $recipient);
# generate attachment HTML
my @attach_html;
if (ref $self->{'Attachments'} eq "ARRAY") {
foreach (0..$#{$self->{'Attachments'}}) {
my $a = $self->{'Attachments'}->[$_];
next unless
$a->{'Filename'} and $a->{'Name'} and $a->{'AttachmentID'};
push(@attach_html,
($q->b("Attachment ".($_+1).": ") .
$q->a({-href => $self->uri_escape_noamp
(Apache::App::Mercury::Config::ATTACHMENT_BASE_URI() .
$a->{'Filename'}),
-class => 'attach',
-target => 'theAttachmentWindow'},
$a->{'Name'}) .
" (".$q->a({-href => Apache::App::Mercury::Config::BASE_URI()."?remove_attach=".$_},
"remove").")"
));
}
}
return
((!$is_memo
? ($q->b("From: ") . $sender." (".
$messaging->{user_manager}->userprofile('fname')." ".
$messaging->{user_manager}->userprofile('lname').")".$q->br.$q->br.
$q->b("To: ") .
($recipient &&
($self->{'action'} eq 'reply' || $self->{'action'} eq 'mailto')
? ($self->{'recipient_desc'} . $q->br)
: $q->textfield(-name => 'recipient', -override => 1,
-default => $recipient,
-size => 34, -maxlength => 255)))
: ($q->b("Memo by: ").$sender.
($messaging->{user_manager}->userprofile('user_desc')
? " (".$messaging->{user_manager}->userprofile('user_desc').")" : "") .
$q->br)) .
$q->br .
$q->b("Subject: ") .
$q->textfield(-name => 'subject', -override => 1,
-default => $self->{'subject'},
-size => 40, -maxlength => 100) . $q->br .
($self->{'transcode'}
? $q->br.$q->b("Trans: ").$self->{'transcode'}.$q->br.$q->br : '') .
$q->b("Body: ") . $q->br .
$q->textarea(-name => 'body', -override => 1,
-default => $self->{'body'},
-rows => 13, -columns => 60, -wrap => 'soft') .
$q->br .
join($q->br, @attach_html) .
$q->br .
$q->b("Attach ") .
$q->textfield(-name => 'num_files_to_attach', -override => 1,
-default => ($self->{'num_to_attach'}
? $self->{'num_to_attach'} : 0),
-size => 2, -maxlength => 2) .
$q->b(" file(s)") . $q->br .
$q->b("Security level of this message: ") .
($self->{'security_fixed'} && $self->{'security'}
? $q->font({-face => 'fixed'}, uc($self->{'security'}))
: $q->popup_menu(-name => 'security', -override => 1,
-values => ['low', 'medium', 'high'],
-default => ($self->{'security'}
? $self->{'security'} : 'medium'),
-labels => { 'low' => "Low", 'medium' => "Medium",
'high' => "High" },
)) .
$q->br
);
}
sub display_preview {
my ($self) = @_;
my $messaging = $self->{messaging};
my $q = $messaging->{q};
my $is_memo = ($self->{'sender'} eq $self->{'sent_to'});
return
($q->start_multipart_form(-action => Apache::App::Mercury::Config::BASE_URI()) .
$q->table
({-width => '96%', -cellspacing => 0, -cellpadding => 2,
-border => 3, -bgcolor => '#cccccc'},
$q->Tr
($q->td
({-width => '70%', -valign => 'top', -align => 'left'},
$q->table({-width => '100%', -height => '100%', -cellpadding => 2,
-cellspacing => 0, -border => 0, -bgcolor => '#ffffff'},
$q->Tr([$q->td({-valign => 'top', -height => '100%',
-bgcolor => '#ffffff'}, $self->display),
($self->{'num_to_attach'}
? $q->td({-valign=>'bottom', -bgcolor=>'#cccccc'},
$q->b("Select new attachments:") .$q->p.
join('', map {
("$_: " . $q->filefield(-name => 'attachment'.($_-1)) . $q->br)
} 1..$self->{'num_to_attach'}))
: $q->td({-bgcolor=>'#ffffff', -valign=>'bottom'},
' ')),
$q->td({-bgcolor => '#cccccc'},
$q->b("Security level: ") .
($self->{'security_fixed'} &&
$self->{'security'}
? $q->font({-face => 'fixed'},
uc($self->{'security'}))
: $q->popup_menu
(-name => 'security', -override => 1,
-values => ['low', 'medium', 'high'],
-default => ($self->{'security'}
? $self->{'security'}
: 'medium'),
-labels => { 'low' => "Low",
'medium' => "Medium",
'high' => "High" }))),
]))) .
$q->td({-width => 2, -bgcolor => '#999999'}, ' ') .
$q->td({-bgcolor => '#cccccc', -valign => 'top', -align => 'right'},
$q->table
($q->Tr
([$q->td({-align => 'right'},
$q->submit('send', (!$is_memo ? "Send message"
: "Commit memo"))),
$q->td({-align => 'right'},
$q->submit('make_changes', "Make changes")),
$q->td({-align => 'right'}, $q->submit('cancel', "Cancel")),
$q->td(' ' . $q->br . ' '),
$q->td({-align => 'right', -valign => 'bottom'},
$q->submit('return', "Store and return to '".
ucfirst($messaging->{'current_box'})."'").
($self->{'num_to_attach'}
? ($q->br .
$q->font({-size => '-2'},
$q->em("Selected attached files will " .
$q->b('NOT') .
" be remembered when stored")))
: ''))
]))))) .
$q->endform
);
}
1;
( run in 0.964 second using v1.01-cache-2.11-cpan-97f6503c9c8 )