X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fedit%2Fpart_pkg.cgi;h=61e4086be4def8094a1418c1baeefac02f670363;hp=4813fdf8b8ffe03d57bf6019d08cb6552a3546d3;hb=c1bb4ddb71147d0571bd301a6d8c452fdf0e1bc9;hpb=3d671921441ba8422650b54435a1959ad1d4c71d diff --git a/httemplate/edit/part_pkg.cgi b/httemplate/edit/part_pkg.cgi index 4813fdf8b..61e4086be 100755 --- a/httemplate/edit/part_pkg.cgi +++ b/httemplate/edit/part_pkg.cgi @@ -1,20 +1,4 @@ <% -# - -use strict; -use vars qw( $cgi $part_pkg $action $query $hashref $part_svc $count ); -use CGI; -use CGI::Carp qw(fatalsToBrowser); -use FS::UID qw(cgisuidsetup); -use FS::Record qw(qsearch qsearchs fields); -use FS::part_pkg; -use FS::part_svc; -use FS::pkg_svc; -use FS::CGI qw(header menubar popurl); - -$cgi = new CGI; - -&cgisuidsetup($cgi); if ( $cgi->param('clone') && $cgi->param('clone') =~ /^(\d+)$/ ) { $cgi->param('clone', $1); @@ -27,112 +11,325 @@ if ( $cgi->param('pkgnum') && $cgi->param('pkgnum') =~ /^(\d+)$/ ) { $cgi->param('pkgnum', ''); } -($query) = $cgi->keywords; -$action = ''; -$part_pkg = ''; +my ($query) = $cgi->keywords; + +my $part_pkg = ''; if ( $cgi->param('error') ) { $part_pkg = new FS::part_pkg ( { map { $_, scalar($cgi->param($_)) } fields('part_pkg') } ); } + +my $action = ''; +my $clone_part_pkg = ''; +my $pkgpart = ''; if ( $cgi->param('clone') ) { - $action='Custom Pricing'; - my $old_part_pkg = - qsearchs('part_pkg', { 'pkgpart' => $cgi->param('clone') } ); - $part_pkg ||= $old_part_pkg->clone; + $pkgpart = $cgi->param('clone'); + $action = 'Custom Pricing'; + $clone_part_pkg= qsearchs('part_pkg', { 'pkgpart' => $cgi->param('clone') } ); + $part_pkg ||= $clone_part_pkg->clone; + $part_pkg->disabled('Y'); #isn't sticky on errors } elsif ( $query && $query =~ /^(\d+)$/ ) { $part_pkg ||= qsearchs('part_pkg',{'pkgpart'=>$1}); + $pkgpart = $part_pkg->pkgpart; } else { - $part_pkg ||= new FS::part_pkg {}; + unless ( $part_pkg ) { + $part_pkg = new FS::part_pkg {}; + $part_pkg->plan('flat'); + } +} +unless ( $part_pkg->plan ) { #backwards-compat + $part_pkg->plan('flat'); + $part_pkg->plandata("setup_fee=". $part_pkg->setup. "\n". + "recur_fee=". $part_pkg->recur. "\n"); } $action ||= $part_pkg->pkgpart ? 'Edit' : 'Add'; -$hashref = $part_pkg->hashref; +my $hashref = $part_pkg->hashref; + +%> -print $cgi->header( '-expires' => 'now' ), header("$action Package Definition", menubar( +<%= include("/elements/header.html","$action Package Definition", menubar( 'Main Menu' => popurl(2), 'View all packages' => popurl(2). 'browse/part_pkg.cgi', -)); +)) %> -print qq!Error: !, $cgi->param('error'), - "" - if $cgi->param('error'); +<% #), ' onLoad="visualize()"'); %> -print '