'precheck_callback' => $precheck_callback,
'args_callback' => $args_callback,
'process_m2m' => \@process_m2m,
+ 'process_o2m' => \@process_o2m,
)
%>
<%init>
$options{"usage_taxproductnum_$_"} = $value;
}
- foreach ( $cgi->param('report_option') ) {
+ foreach ( grep $_, $cgi->param('report_option') ) {
$error ||= "Illegal optional report class: $_" unless ( $_ =~ /^\d*$/ );
$options{"report_option_$_"} = 1;
}
$options{$_} = scalar( $cgi->param($_) )
- for (qw( setup_fee recur_fee ));
+ for (qw( setup_fee recur_fee disable_line_item_date_ranges ));
push @args, 'options' => \%options;
#pkg_svc
###
- my %pkg_svc = map { $_ => scalar($cgi->param("pkg_svc$_")) }
- map { $_->svcpart }
- qsearch('part_svc', {} );
+ my @svcparts = map { $_->svcpart } qsearch('part_svc', {});
+ my %pkg_svc = map { $_ => scalar($cgi->param("pkg_svc$_")) } @svcparts;
+ my %hidden_svc = map { $_ => scalar($cgi->param("hidden$_")) } @svcparts;
- push @args, 'pkg_svc' => \%pkg_svc;
+ push @args, 'pkg_svc' => \%pkg_svc, 'hidden_svc' => \%hidden_svc;
###
# cust_pkg and custnum_ref (inserts only)
'custnum_ref' => \$custnum;
}
- warn "args: ".join('/', @args). "\n";
+ my %part_pkg_vendor;
+ foreach my $param ( $cgi->param ) {
+ if ( $param =~ /^export(\d+)$/ && length($cgi->param($param)) > 0 ) {
+ $part_pkg_vendor{$1} = $cgi->param($param);
+ }
+ }
+ if ( keys %part_pkg_vendor > 0 ) {
+ push @args, 'part_pkg_vendor' => \%part_pkg_vendor;
+ }
+
+ #warn "args: ".join('/', @args). "\n";
@args;
'target_table' => 'tax_class',
'params' => \@tax_overrides,
},
+ { 'link_table' => 'part_pkg_discount',
+ 'target_table' => 'discount',
+ 'params' => [ map $cgi->param($_),
+ grep /^discountnum/, $cgi->param
+ ],
+ },
{ 'link_table' => 'part_pkg_link',
'target_table' => 'part_pkg',
'base_field' => 'src_pkgpart',
grep /^svc_dst_pkgpart/, $cgi->param
],
},
+ { 'link_table' => 'part_pkg_link',
+ 'target_table' => 'part_pkg',
+ 'base_field' => 'src_pkgpart',
+ 'target_field' => 'dst_pkgpart',
+ 'hashref' => { 'link_type' => 'supp', 'hidden' => '' },
+ 'params' => [ map $cgi->param($_),
+ grep /^supp_dst_pkgpart/, $cgi->param
+ ],
+ },
map {
my $hidden = $_;
{ 'link_table' => 'part_pkg_link',
};
}
+my @process_o2m = (
+ {
+ 'table' => 'part_pkg_msgcat',
+ 'fields' => [qw( locale pkg )],
+ },
+);
+
</%init>