TT#30650 remove unused TTEmailer stub

this is not used and had some syntax errors in it

Change-Id: Ie044bca83eb931fe6c48fbd3bb59eb84fd5f5c35
changes/53/18453/2
Gerhard Jungwirth 7 years ago
parent fc57ea6ded
commit c0c7c0c845

@ -1,128 +0,0 @@
package NGCP::Panel::Utils::TTEmailer;
sub send_email{
my $self = shift;
my ($email,$hr_tmpl,$hr_vars) = @_;
my ($email,$subject,$text,$from,$type,$headers,$images,$binatt) = @$hr_mail{qw/email subject text from type headers images binatt/};
my $cfg = Knetrix::Config->get;
# If we don't specify the email body then fetch it from t_$view_${action}email.tt2
if(!$text){
$text = '';
$hr_tmpl->{$_} ||= ${$self->{OUT_DATA}{request}}{$_} foreach qw/module sub_module view action/;
if(!$hr_tmpl->{tmplnamestrict}){
$hr_tmpl->{action} .= 'email';
}
$hr_tmpl->{error} = 0;
my $stc = {};
my $tt2 = Knetrix::Template->instance() || throw Knetrix::Error -text=>"Missing tt2 obj";
if(ref $hr_vars eq 'HASH'){
use Hash::Merge ();
$hr_vars = Hash::Merge::merge $self->{OUT_DATA} , $hr_vars;
} else {
$hr_vars = $self->{OUT_DATA};
}
(@{$hr_vars->{config}}{qw/http httpdata data/},@{$hr_vars->{tmpl_hash}}{qw/module sub_module/})
= ($cfg->dir_config('http'),$cfg->dir_config('httpdata'),$cfg->dir_config('systemdata'),@$hr_tmpl{qw/module sub_module/});
$hr_vars->{tmpl_req} = $hr_tmpl;
# Some funky magic to access variables inside the template
$hr_vars->{import} ||= $stc;
my $importold = $Template::Stash::HASH_OPS->{ import } if defined $Template::Stash::HASH_OPS->{ import };
$Template::Stash::HASH_OPS->{ import } = sub { $stc = $_[0] };
$log->error(Dumper $hr_tmpl);
$log->error(Dumper $self->{OUT_DATA}{request});
$hr_tmpl = Knetrix::Template::Magic->wand($hr_tmpl);
my $ok = $tt2->process($hr_tmpl,$hr_vars,\$text) || $log->error($tt2->error());
$Template::Stash::HASH_OPS->{ import } = $importold if defined $importold;
$subject ||= $stc->get('subject');
$type ||= $stc->get('mimetype');
$from ||= $stc->get('from');
}
# If from isn't specified fetch it from knetrix.xml or use support@envisionext.com
if(!$from){
$from = $cfg->dir_config('from','email') || 'support@envisionext.com';
}
# Extract the Images from the template/mail body
$images ||= {};
sub collect_images{
my ($q1,$image,$q2,$images) = @_;
$log->error(Dumper \@_);
my($path,$filename) = $image =~/(.*?)([^\/]+\/?)$/;
$log->error("path is $path filename is $filename");
$images->{$filename} = $path;
return $q1.$filename.$q2;
}
$text =~s/(['"]cid:)([^'"]+)(['"])/collect_images($1,$2,$3,$images)/ge;
my $imagescnt = scalar keys(%$images);
if($binatt){
ref $binatt eq 'HASH' and $binatt = [$binatt];
ref $binatt eq 'ARRAY' and $imagescnt += scalar @$binatt;
}
$log->debug("imagescnt=",$imagescnt,"; text=",$text,"images=",Dumper $images);
# Set the mail type based on the existence of any images
my %msgadd;
if ($imagescnt) {
%msgadd = ( Type => 'multipart/related' );
} else {
%msgadd = ( Type => $type?$type:'text/html',
Data => $text,
);
}
# Setup the mail object
my $msg = MIME::Lite->new( To => $email,
From => $from,
Subject => $subject,
%msgadd,
);
# Setup a debug email for the postmaster
my $debugmsg = MIME::Lite->new( To => $cfg->dir_config('postmaster','email') || 'ric@envisionext.com',
From => $from,
Subject => $subject,
%msgadd,
);
# Attach the body and any images
if($imagescnt){
$msg->attach( Data => $text,
Type => 'text/html',
);
$debugmsg->attach( Data => $text."<pre>Util::send_email\n\n\nTo:$email;".(Dumper([$hr_mail,$hr_vars]))."\n</pre>",
Type => 'text/html',
);
# Attach the images
my $datadir = $cfg->dir_config('staticdata');
while( my ($img,$path) = each(%$images) ){
my ($ext) = $img=~/[^\.]+\.(.+)$/;
$msg->attach( Type => $mimetypes{$ext},
Id => $img,
Path => join '/', $datadir,$path,$img,
);
$debugmsg->attach( Type => $mimetypes{$ext},
Id => $img,
Path => join '/', $datadir,$path,$img,
);
}
foreach (_afy $binatt){
$msg->attach( %$_);
$debugmsg->attach( %$_);
}
}
my $res;
print STDERR Dumper $msg;
if(!$hr_mail->{dontsend}){
my @params = split(':',$cfg->dir_config('server','email'));
$res = $msg->send(@params) unless $cfg->dir_config('safemode','email');;
$debugmsg->send(@params) if $cfg->dir_config('debug','email');
}else{
$res = 1;
}
return ($res,$msg,$debugmsg)
}
1;
Loading…
Cancel
Save