X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fedit%2Felements%2Fsvc_Common.html;h=0955d49c6e8e1427bfef3b200770452c5b3b88dd;hb=84c8202ee1d4d74a6ed55ac31c3f0de8cb572e04;hp=36950b2c98762dc5bfd4d1f7e36bbc12fed71bcb;hpb=624b2d44625f69d71175c3348cae635d580c890b;p=freeside.git diff --git a/httemplate/edit/elements/svc_Common.html b/httemplate/edit/elements/svc_Common.html index 36950b2c9..0955d49c6 100644 --- a/httemplate/edit/elements/svc_Common.html +++ b/httemplate/edit/elements/svc_Common.html @@ -14,6 +14,13 @@ label_fixup($part_svc, $opt); $svc_x->setfield('svcpart', $svcpart); + + if ( my $cb = $opt{'svc_error_callback'} ) { + my $cust_pkg = $pkgnum + ? qsearchs('cust_pkg', {pkgnum=>$pkgnum}) + : ''; #? + &{ $cb }( $cgi,$svc_x, $part_svc,$cust_pkg, $fields,$opt); + } }, 'edit_callback' => sub { @@ -29,6 +36,13 @@ die "No part_svc entry!" unless $part_svc; label_fixup($part_svc, $opt); + + if ( my $cb = $opt{'svc_edit_callback'} ) { + my $cust_pkg = $pkgnum + ? qsearchs('cust_pkg', {pkgnum=>$pkgnum}) + : ''; #? + &{ $cb }( $cgi,$svc_x, $part_svc,$cust_pkg, $fields,$opt); + } }, 'new_hashref_callback' => sub { @@ -41,23 +55,23 @@ }, 'new_callback' => sub { - my( $cgi, $svc_x, $fields, $opt ) = @_; + my( $cgi, $svc_x, $fields, $opt ) = @_; - $part_svc = qsearchs( 'part_svc', { svcpart=>$svcpart }); - die "No part_svc entry!" unless $part_svc; + $part_svc = qsearchs( 'part_svc', { svcpart=>$svcpart }); + die "No part_svc entry!" unless $part_svc; - label_fixup($part_svc, $opt); + label_fixup($part_svc, $opt); - #$svcnum=''; + #$svcnum=''; - if ( my $cb = $opt{'svc_new_callback'} ) { + if ( my $cb = $opt{'svc_new_callback'} ) { my $cust_pkg = $pkgnum - ? qsearchs('cust_pkg', {pkgnum=>$pkgnum}) - : ''; #? - &{ $cb }( $cgi,$svc_x, $part_svc,$cust_pkg, $fields,$opt); - } + ? qsearchs('cust_pkg', {pkgnum=>$pkgnum}) + : ''; #? + &{ $cb }( $cgi,$svc_x, $part_svc,$cust_pkg, $fields,$opt); + } - $svc_x->set_default_and_fixed; + $svc_x->set_default_and_fixed; }, @@ -79,6 +93,8 @@ $f->{'table'} = 'inventory_item'; $f->{'name_col'} = 'item'; $f->{'value_col'} = 'item'; + $f->{'agent_virt'} = 1; + $f->{'agent_null'} = 1; $f->{'hashref'} = { 'classnum'=>$columndef->columnvalue, #'svcnum' => '', @@ -88,6 +104,12 @@ if $object->svcnum; $f->{'extra_sql'} .= ' ) '; $f->{'disable_empty'} = $object->svcnum ? 1 : 0, + } elsif ( $flag eq 'H' ) { + $f->{'type'} = 'select-hardware_type'; + $f->{'hashref'} = { + 'classnum'=>$columndef->columnvalue + }; + $f->{'empty_label'} = 'Select hardware type'; } if ( $f->{'type'} eq 'select-svc_pbx'