diff options
Diffstat (limited to 'httemplate/edit/process')
-rwxr-xr-x | httemplate/edit/process/cust_main_county-expand.cgi | 112 | ||||
-rw-r--r-- | httemplate/edit/process/cust_main_county.html | 6 |
2 files changed, 60 insertions, 58 deletions
diff --git a/httemplate/edit/process/cust_main_county-expand.cgi b/httemplate/edit/process/cust_main_county-expand.cgi index e550e8b4a..4e04f37fc 100755 --- a/httemplate/edit/process/cust_main_county-expand.cgi +++ b/httemplate/edit/process/cust_main_county-expand.cgi @@ -1,59 +1,55 @@ -% -% -%$cgi->param('taxnum') =~ /^(\d+)$/ or die "Illegal taxnum!"; -%my $taxnum = $1; -%my $cust_main_county = qsearchs('cust_main_county',{'taxnum'=>$taxnum}) -% or die ("Unknown taxnum!"); -% -%my @expansion; -%if ( $cgi->param('delim') eq 'n' ) { -% @expansion=split(/\n/,$cgi->param('expansion')); -%} elsif ( $cgi->param('delim') eq 's' ) { -% @expansion=split(' ',$cgi->param('expansion')); -%} else { -% die "Illegal delim!"; -%} -% -%@expansion=map { -% unless ( /^\s*([\w\- ]+)\s*$/ ) { -% $cgi->param('error', "Illegal item in expansion"); -% print $cgi->redirect(popurl(2). "cust_main_county-expand.cgi?". $cgi->query_string ); -% myexit(); -% } -% $1; -%} @expansion; -% -%foreach ( @expansion) { -% my(%hash)=$cust_main_county->hash; -% my($new)=new FS::cust_main_county \%hash; -% $new->setfield('taxnum',''); -% if ( $cgi->param('taxclass') ) { -% $new->setfield('taxclass', $_); -% } elsif ( ! $cust_main_county->state ) { -% $new->setfield('state',$_); -% } else { -% $new->setfield('county',$_); -% } -% #if (datasrc =~ m/Pg/) -% #{ -% # $new->setfield('tax',0.0); -% #} -% my($error)=$new->insert; -% die $error if $error; -%} -% -%unless ( qsearch( 'cust_main', { -% 'state' => $cust_main_county->state, -% 'county' => $cust_main_county->county, -% 'country' => $cust_main_county->country, -% } ) -% || ! @expansion -%) { -% my($error)=($cust_main_county->delete); -% die $error if $error; -%} -% -%print $cgi->redirect(popurl(3). "browse/cust_main_county.cgi"); -% -% +<% include('/elements/header-popup.html', 'Addition successful' ) %> +<SCRIPT TYPE="text/javascript"> + window.top.location.reload(); +</SCRIPT> + +</BODY> +</HTML> +<%init> + +$cgi->param('taxnum') =~ /^(\d+)$/ or die "Illegal taxnum!"; +my $taxnum = $1; +my $cust_main_county = qsearchs('cust_main_county',{'taxnum'=>$taxnum}) + or die ("Unknown taxnum!"); + +my @expansion = split /[\n\r]{1,2}/, $cgi->param('expansion'); +#warn scalar(@expansion); +#warn "$_: $expansion[$_]\n" foreach (0..$#expansion); + +@expansion=map { + unless ( /^\s*([\w\- ]+)\s*$/ ) { + $cgi->param('error', "Illegal item in expansion: $_"); + print $cgi->redirect(popurl(2). "cust_main_county-expand.cgi?". $cgi->query_string ); + myexit(); + } + $1; +} @expansion; + +foreach ( @expansion) { + my(%hash)=$cust_main_county->hash; + my($new)=new FS::cust_main_county \%hash; + $new->setfield('taxnum',''); + if ( $cgi->param('taxclass') ) { + $new->setfield('taxclass', $_); + } elsif ( ! $cust_main_county->state ) { + $new->setfield('state',$_); + } else { + $new->setfield('county',$_); + } + my $error = $new->insert; + die $error if $error; +} + +unless ( qsearch( 'cust_main', { + 'state' => $cust_main_county->state, + 'county' => $cust_main_county->county, + 'country' => $cust_main_county->country, + } ) + || ! @expansion +) { + my $error = $cust_main_county->delete; + die $error if $error; +} + +</%init> diff --git a/httemplate/edit/process/cust_main_county.html b/httemplate/edit/process/cust_main_county.html new file mode 100644 index 000000000..3d9d20b85 --- /dev/null +++ b/httemplate/edit/process/cust_main_county.html @@ -0,0 +1,6 @@ +<% include( 'elements/process.html', + 'table' => 'cust_main_county', + 'popup_reload' => 'Tax changed', #a popup "parent reload" for now + #someday change the individual element and go away instead + ) +%> |