X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fedit%2Fprocess%2Fquick-cust_pkg.cgi;h=b1d0fe423d32da154bc13f25618be84f8bffb82c;hb=1a896a3db22ff50712b055581bc8808c22848c29;hp=67cdb87e868d2d267fa7af4c315694da2b65ed2e;hpb=973d5dd654ea23dea3ff185e157a404556815ccb;p=freeside.git diff --git a/httemplate/edit/process/quick-cust_pkg.cgi b/httemplate/edit/process/quick-cust_pkg.cgi index 67cdb87e8..b1d0fe423 100644 --- a/httemplate/edit/process/quick-cust_pkg.cgi +++ b/httemplate/edit/process/quick-cust_pkg.cgi @@ -143,8 +143,21 @@ if ( $quotationnum ) { $quotation_pkg->quotationnum($quotationnum); $quotation_pkg->prospectnum($prospect_main->prospectnum) if $prospect_main; - #XXX handle new location - $error = $quotation_pkg->insert || $quotation_pkg->estimate; + my %opt = (); + + if ( $locationnum == -1 ) { + my $cust_location = FS::cust_location->new({ + 'custnum' => $cust_main ? $cust_main->custnum : '', + 'prospectnum' => $prospect_main ? $prospect_main->prospectnum : '', + map { $_ => scalar($cgi->param($_)) } + FS::cust_main->location_fields + }); + $opt{'cust_location'} = $cust_location; + } else { + $opt{'locationnum'} = $locationnum; + } + + $error = $quotation_pkg->insert(%opt) || $quotation_pkg->estimate; } else {