$form->{print_and_post} = 0;
$form->{resubmit} = 0;
}
- if ($myconfig{role} eq 'admin') {
- $bcc = qq|
- <tr>
- <th align="right" nowrap="true">| . $locale->text('Bcc') . qq|</th>
- <td><input name="bcc" size="30" value="| . Q($form->{bcc}) . qq|"></td>
- </tr>
-|;
- }
- if ($form->{formname} =~ /(pick|packing|bin)_list/) {
- $form->{email} = $form->{shiptoemail} if $form->{shiptoemail};
- }
+ $form->{email} = $form->{shiptoemail} if $form->{shiptoemail} && $form->{formname} =~ /(pick|packing|bin)_list/;
if ($form->{"cp_id"} && !$form->{"email"}) {
CT->get_contact(\%myconfig, $form);
$form->{"email"} = $form->{"cp_email"};
}
- $name = $form->{ $form->{vc} };
- $name =~ s/--.*//g;
- $title = $locale->text('E-mail') . " $name";
+ $form->{ $form->{vc} } =~ /--/;
+ $title = $locale->text('E-mail') . " $`";
$form->{oldmedia} = $form->{media};
$form->{media} = "email";
- my %formname_translations =
- (
- "bin_list" => $locale->text('Bin List'),
- "credit_note" => $locale->text('Credit Note'),
- "invoice" => $locale->text('Invoice'),
- "packing_list" => $locale->text('Packing List'),
- "pick_list" => $locale->text('Pick List'),
- "proforma" => $locale->text('Proforma Invoice'),
- "purchase_order" => $locale->text('Purchase Order'),
- "request_quotation" => $locale->text('RFQ'),
- "sales_order" => $locale->text('Confirmation'),
- "sales_quotation" => $locale->text('Quotation'),
- "storno_invoice" => $locale->text('Storno Invoice'),
- "storno_packing_list" => $locale->text('Storno Packing List'),
- );
-
- my $attachment_filename = $formname_translations{$form->{"formname"}};
- my $prefix;
-
- if (grep({ $form->{"type"} eq $_ } qw(invoice credit_note))) {
- $prefix = "inv";
- } elsif ($form->{"type"} =~ /_quotation$/) {
- $prefix = "quo";
- } else {
- $prefix = "ord";
- }
-
- if ($attachment_filename && $form->{"${prefix}number"}) {
- $attachment_filename .= "_" . $form->{"${prefix}number"} .
- ($form->{"format"} =~ /pdf/i ? ".pdf" :
- $form->{"format"} =~ /postscript/i ? ".ps" :
- $form->{"format"} =~ /opendocument/i ? ".odt" :
- $form->{"format"} =~ /html/i ? ".html" : "");
- $attachment_filename =~ s/ /_/g;
- my %umlaute =
- (
- "ä" => "ae", "ö" => "oe", "ü" => "ue",
- "Ä" => "Ae", "Ö" => "Oe", "Ü" => "Ue",
- "ß" => "ss"
- );
- map({ $attachment_filename =~ s/$_/$umlaute{$_}/g; } keys(%umlaute));
- } else {
- $attachment_filename = "";
- }
+ my $attachment_filename = $form->generate_attachment_filename();
- if ($form->{"email"}) {
- $form->{"fokus"} = "Form.subject";
- } else {
- $form->{"fokus"} = "Form.email";
- }
+ $form->{"fokus"} = $form->{"email"} ? "Form.subject" : "Form.email";
$form->header;
- print qq|
-<body onload="fokus()">
-
-<form name="Form" method="post" action="$form->{script}">
-
-<table width="100%">
- <tr class="listtop">
- <th class="listtop">$title</th>
- </tr>
- <tr height="5"></tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align="right" nowrap>| . $locale->text('To') . qq|</th>
- <td><input name="email" size="30" value="| .
- Q($form->{"email"}) . qq|"></td>
- </tr>
- <tr>
- <th align="right" nowrap>| . $locale->text('Cc') . qq|</th>
- <td><input name="cc" size="30" value="| .
- Q($form->{"cc"}) . qq|"></td>
- </tr>
- $bcc
- <tr>
- <th align="right" nowrap>| . $locale->text('Subject') . qq|</th>
- <td><input name="subject" size="30" value="| .
- Q($form->{"subject"}) . qq|"></td>
- </tr>
- <tr>
- <th align="right" nowrap>| . $locale->text('Attachment name') .
- qq|</th>
- <td><input name="attachment_filename" size="30" value="| .
- Q($attachment_filename) . qq|"></td>
- </table>
- </td>
- </tr>
- <tr>
- <td>
- <table>
- <tr>
- <th align="left" nowrap>| . $locale->text('Message') . qq|</th>
- </tr>
- <tr>
- <td><textarea name="message" rows="15" cols="60" wrap="soft">| .
- H($form->{"message"}) . qq|</textarea></td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td>
-|;
-
- print_options();
-
- map { delete $form->{$_} }
- qw(action email cc bcc subject message formname sendmode format header override);
-
- # save all other variables
- foreach $key (keys %$form) {
- $form->{$key} =~ s/\"/"/g;
- print qq|<input type="hidden" name="$key" value="| . Q($form->{$key}) . qq|">\n|;
- }
-
- print qq|
- </td>
- </tr>
- <tr>
- <td><hr size="3" noshade></td>
- </tr>
-</table>
-
-<input type="hidden" name="nextsub" value="send_email">
-
-<br>
-<input name="action" class="submit" type="submit" value="|
- . $locale->text('Continue') . qq|">
-</form>
+ my (@dont_hide_key_list, %dont_hide_key, @hidden_keys);
+ @dont_hide_key_list = qw(action email cc bcc subject message formname sendmode format header override);
+ @dont_hide_key{@dont_hide_key_list} = (1) x @dont_hide_key_list;
+ @hidden_keys = grep { !$dont_hide_key{$_} } grep { !ref $form->{$_} } keys %$form;
-</body>
-</html>
-|;
+ print $form->parse_html_template('generic/edit_email',
+ { title => $title,
+ a_filename => $attachment_filename,
+ _print_options_ => print_options('inline'),
+ HIDDEN => [ map +{ name => $_, value => $form->{$_} }, @hidden_keys ],
+ SHOW_BCC => $myconfig{role} eq 'admin' });
$lxdebug->leave_sub();
}
$form->{subject} = qq|$form->{label} $form->{"${inv}number"}|
unless $form->{subject};
- $form->{OUT} = "$sendmail";
-
$form->{emailed} .= " $form->{formname}";
$form->{emailed} =~ s/^ //;
}