X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fmisc%2Fchange_pkg.cgi;h=7c88876d4956c089443e722b875b2f92f698297d;hb=c648976f0b7975f2328ebd7ba8c711fad0ca4195;hp=17dc8b85929942326f387652eb744a7750105ddd;hpb=3ce7691203a7737406bf2d4442f7fd84b81f847e;p=freeside.git diff --git a/httemplate/misc/change_pkg.cgi b/httemplate/misc/change_pkg.cgi index 17dc8b859..7c88876d4 100755 --- a/httemplate/misc/change_pkg.cgi +++ b/httemplate/misc/change_pkg.cgi @@ -1,67 +1,69 @@ - -% -% -%my $pkgnum; -%if ( $cgi->param('error') ) { -% #$custnum = $cgi->param('custnum'); -% #%remove_pkg = map { $_ => 1 } $cgi->param('remove_pkg'); -% $pkgnum = ($cgi->param('remove_pkg'))[0]; -%} else { -% my($query) = $cgi->keywords; -% $query =~ /^(\d+)$/; -% #$custnum = $1; -% $pkgnum = $1; -% #%remove_pkg = (); -%} -% -%my $cust_pkg = qsearchs( 'cust_pkg', { 'pkgnum' => $pkgnum } ) -% or die "unknown pkgnum $pkgnum"; -%my $custnum = $cust_pkg->custnum; -% -%my $conf = new FS::Conf; -% -%my $p1 = popurl(1); -% -%my $cust_main = $cust_pkg->cust_main -% or die "can't get cust_main record for custnum ". $cust_pkg->custnum. -% " ( pkgnum ". cust_pkg->pkgnum. ")"; -%my $agent = $cust_main->agent; -% -%print header("Change Package", menubar( -% "View this customer (#$custnum)" => "${p}view/cust_main.cgi?$custnum", -% 'Main Menu' => $p, -%)); -% -%print qq!Error: !, $cgi->param('error'), -% "

" -% if $cgi->param('error'); -% -%my $part_pkg = $cust_pkg->part_pkg; -% -%print small_custview( $cust_main, $conf->config('countrydefault') ). -% qq!
!. -% qq!!. -% qq!!. -% '
Current package: '. $part_pkg->pkg. ' - '. $part_pkg->comment. -% qq!
New package: -%
-% -% -%END -% +<% include('/elements/header-popup.html', "Change Package") %> +<% include('/elements/error.html') %> + +
+ + + +<% ntable('#cccccc') %> + + + Current package:  + + <% $part_pkg->pkgpart %>: <% $part_pkg->pkg %> - <% $part_pkg->comment %> + + + + + New package: + <% include('/elements/select-cust-part_pkg.html', + 'cust_main' => $cust_main, + 'element_name' => 'new_pkgpart', + 'extra_sql' => ' AND pkgpart != '. $cust_pkg->pkgpart, + 'curr_value' => ( $cgi->param('error') + ? scalar($cgi->param('new_pkgpart')) + : '' + ), + ) + %> + + + + + +
+ + +
+ + + +<%init> + +die "access denied" + unless $FS::CurrentUser::CurrentUser->access_right('Change customer package'); + +my $pkgnum; +if ( $cgi->param('error') ) { + $pkgnum = ($cgi->param('remove_pkg'))[0]; +} else { + $pkgnum = $cgi->param('pkgnum'); +} +$pkgnum =~ /^(\d+)$/ or die "illegal pkgnum $pkgnum"; +$pkgnum = $1; + +my $cust_pkg = qsearchs( 'cust_pkg', { 'pkgnum' => $pkgnum } ) + or die "unknown pkgnum $pkgnum"; +my $custnum = $cust_pkg->custnum; + +my $conf = new FS::Conf; + +my $cust_main = $cust_pkg->cust_main + or die "can't get cust_main record for custnum ". $cust_pkg->custnum. + " ( pkgnum ". cust_pkg->pkgnum. ")"; +my $agent = $cust_main->agent; + +my $part_pkg = $cust_pkg->part_pkg; + +