%
# 
use strict;
use vars qw($conf $cgi $query $svcnum $svc_forward $cust_svc
            $pkgnum $cust_pkg $custnum $part_svc $p $srcsvc $dstsvc $dst
            $svc $svc_acct $source $destination);
use CGI;
use FS::UID qw(cgisuidsetup);
use FS::CGI qw(header popurl menubar );
use FS::Record qw(qsearchs);
use FS::Conf;
use FS::cust_svc;
use FS::cust_pkg;
use FS::part_svc;
use FS::svc_acct;
use FS::svc_forward;
$cgi = new CGI;
cgisuidsetup($cgi);
$conf = new FS::Conf;
($query) = $cgi->keywords;
$query =~ /^(\d+)$/;
$svcnum = $1;
$svc_forward = qsearchs('svc_forward',{'svcnum'=>$svcnum});
die "Unknown svcnum" unless $svc_forward;
$cust_svc = qsearchs('cust_svc',{'svcnum'=>$svcnum});
$pkgnum = $cust_svc->getfield('pkgnum');
if ($pkgnum) {
  $cust_pkg=qsearchs('cust_pkg',{'pkgnum'=>$pkgnum});
  $custnum=$cust_pkg->getfield('custnum');
} else {
  $cust_pkg = '';
  $custnum = '';
}
$part_svc = qsearchs('part_svc',{'svcpart'=> $cust_svc->svcpart } )
  or die "Unkonwn svcpart";
$p = popurl(2);
print $cgi->header( '-expires' => 'now' ), header('Mail Forward View', menubar(
  ( ( $pkgnum || $custnum )
    ? ( "View this package (#$pkgnum)" => "${p}view/cust_pkg.cgi?$pkgnum",
        "View this customer (#$custnum)" => "${p}view/cust_main.cgi?$custnum",
      )
    : ( "Cancel this (unaudited) account" =>
          "${p}misc/cancel-unaudited.cgi?$svcnum" )
  ),
  "Main menu" => $p,
));
($srcsvc,$dstsvc,$dst) = (
  $svc_forward->srcsvc,
  $svc_forward->dstsvc,
  $svc_forward->dst,
);
$svc = $part_svc->svc;
$svc_acct = qsearchs('svc_acct',{'svcnum'=>$srcsvc})
  or die "Corrupted database: no svc_acct.svcnum matching srcsvc $srcsvc";
$source = $svc_acct->email;
if ($dstsvc) {
  $svc_acct = qsearchs('svc_acct',{'svcnum'=>$dstsvc})
    or die "Corrupted database: no svc_acct.svcnum matching dstsvc $dstsvc";
  $destination = $svc_acct->email;
}else{
  $destination = $dst;
}
print qq!Edit this information!,
      "
Service #$svcnum",
      "
Service: $svc",
      qq!
Mail to $source forwards to $destination mailbox.!,
      '