#!/usr/bin/perl

use strict;
use CGI;

use Opals::Context;
use Opals::Template qw(
    tmpl_read
    tmpl_write
    tmpl_preference
);
use Opals::Locale qw(
    loc_getMsgFile
    loc_write
);

use Opals::RecordInfoHTML qw(
    pf_getPfHTML
);
use Opals::Mail qw(
    mail_send
);

my $dbh = Opals::Context->dbh();
END { $dbh->disconnect(); }

my $cgi = CGI->new;
my $input = $cgi->Vars();

my ($permission, $cookieList, $template) = tmpl_read(
    {
        dbh             => $dbh,
        cgi             => $cgi,
        tmplFile        => 'pf/pfEmail.tmpl',
    }
);

my $pref    = tmpl_preference($dbh);

my $pfCont="";
my $pfId     = $input->{'pfId'};
my $to          = $cgi->param('email');
my $circStats   = $cgi->param('circStats'); 
my $bookCover   = $cgi->param('bookCover');
my $emailOpt={};
$emailOpt->{'circStats'}=1 if($input->{'circStats'} && $input->{'circStats'} eq 1);
$emailOpt->{'bookCover'}=1 if($input->{'bookCover'} && $input->{'bookCover'} eq 1);
$emailOpt->{'showBibChk'}=0;
if(!$to){
        $template->param(
            pfId        =>$pfId,
            circStats   =>$circStats,
            bookCover   =>$bookCover,
            openForm    =>1,
            email       =>$to
       );

        $to =~ s/ +/,/g;
        $to =~ s/;+/,/g;
        $to =~ s/,+/,/g;
        $to =~ s/(^,|,$)//g;

    }
else{ 
     my $pf_title="";
    if($pfId && $pfId>0){
        $pfCont=pf_getPfHTML($dbh,$pfId,$emailOpt);
        $pf_title=pf_getTitle($dbh,$pfId);
    }

    if ($pfCont ne '' && mail_send($pref, $to, 'Pathfinder::'.$pf_title, $pfCont)){
        $template->param(done=>1);
    }
    else{
        $template->param(error=>1);
    }
    $template->param(email=>$to );


   $template->param(pfContent=>$pfCont);

}
    


#=======================================================

tmpl_write($dbh, $cgi, $cookieList, $template);

#======================================================================
#======================================================================
sub pf_getTitle{
    my ($dbh,$pfId) = @_;
    my $sth = $dbh->prepare(<<_STH_);
    select title from pf_record where pfId =?
_STH_
    $sth->execute($pfId)|| return;;
    my ($pf_title) = $sth->fetchrow_array;
    
    $sth->finish;
    return $pf_title;
  
}


