X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FTemplate_Mixin.pm;h=5153f87e8b90745ed46162aea9a53997af5c6716;hb=95502dabd865c34d1483b20c583523b12fe9332d;hp=6974f7da3c8a32888676504167335898484668f0;hpb=4d2467d2b8c2134f8cab6907c675a9c4f56472ed;p=freeside.git diff --git a/FS/FS/Template_Mixin.pm b/FS/FS/Template_Mixin.pm index 6974f7da3..5153f87e8 100644 --- a/FS/FS/Template_Mixin.pm +++ b/FS/FS/Template_Mixin.pm @@ -147,6 +147,10 @@ sub print_latex { $template ||= $self->_agent_template if $self->can('_agent_template'); + #the new way + $self->set('mode', $params{mode}) + if $params{mode}; + my $pkey = $self->primary_key; my $tmp_template = $self->table. '.'. $self->$pkey. '.XXXXXXXX'; @@ -2116,13 +2120,22 @@ sub generate_email { my $msg_template = FS::msg_template->by_key($msgnum) or die "${tc}email_pdf_msgnum $msgnum not found\n"; - my %prepared = $msg_template->prepare( + my $cust_msg = $msg_template->prepare( cust_main => $self->cust_main, - object => $self + object => $self, + msgtype => 'invoice', ); - @text = split(/(?=\n)/, $prepared{'text_body'}); - $html = $prepared{'html_body'}; + # XXX hack to make this work in the new cust_msg era; consider replacing + # with cust_bill_send_with_notice events. + my @parts = $cust_msg->parts; + foreach my $part (@parts) { # will only have two parts, normally + if ( $part->mime_type eq 'text/plain' ) { + @text = @{ $part->body }; + } elsif ( $part->mime_type eq 'text/html' ) { + $html = $part->bodyhandle->as_string; + } + } } elsif ( my @note = $conf->config($tc.'email_pdf_note') ) { @@ -2366,6 +2379,7 @@ service. =cut use CAM::PDF; +use IO::Socket::SSL; use LWP::UserAgent; use HTTP::Request::Common qw( POST ); use Cpanel::JSON::XS; @@ -2406,7 +2420,12 @@ sub postal_mail_fsinc { my $file = $self->print_pdf(%opt, 'no_addresses' => 1); my $pages = CAM::PDF->new($file)->numPages; - my $ua = LWP::UserAgent->new( 'ssl_opts' => { 'verify_hostname'=>0 }); + my $ua = LWP::UserAgent->new( + 'ssl_opts' => { + verify_hostname => 0, + SSL_verify_mode => IO::Socket::SSL::SSL_VERIFY_NONE, + } + ); my $response = $ua->request( POST $url, [ 'support-key' => scalar($conf->config('support-key')), 'file' => encode_base64($file),