X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=htdocs%2Fedit%2Fagent_type.cgi;h=147bb6f98436c75b5db48e5ff3854b997bf47517;hp=9f3748d3df644a1c697d60d66868a7441ba531af;hb=6e5eed5d49163fdb06f16c735ab43486c047011d;hpb=0bf5ad9ff0a65195db88ed0bac3aa11c33ec1ad3 diff --git a/htdocs/edit/agent_type.cgi b/htdocs/edit/agent_type.cgi index 9f3748d3d..147bb6f98 100755 --- a/htdocs/edit/agent_type.cgi +++ b/htdocs/edit/agent_type.cgi @@ -1,5 +1,7 @@ #!/usr/bin/perl -Tw # +# $Id: agent_type.cgi,v 1.10 1999-01-25 12:09:51 ivan Exp $ +# # agent_type.cgi: Add/Edit agent type (output form) # # ivan@sisd.com 97-dec-10 @@ -11,47 +13,86 @@ # use FS::CGI, added inline documentation ivan@sisd.com 98-jul-12 # # $Log: agent_type.cgi,v $ -# Revision 1.2 1998-11-13 09:56:46 ivan +# Revision 1.10 1999-01-25 12:09:51 ivan +# yet more mod_perl stuff +# +# Revision 1.9 1999/01/19 05:13:32 ivan +# for mod_perl: no more top-level my() variables; use vars instead +# also the last s/create/new/; +# +# Revision 1.8 1999/01/18 09:41:22 ivan +# all $cgi->header calls now include ( '-expires' => 'now' ) for mod_perl +# (good idea anyway) +# +# Revision 1.7 1999/01/18 09:22:29 ivan +# changes to track email addresses for email invoicing +# +# Revision 1.6 1998/12/17 06:16:58 ivan +# fix double // in relative URLs, s/CGI::Base/CGI/; +# +# Revision 1.5 1998/11/21 07:58:27 ivan +# package names link to them +# +# Revision 1.4 1998/11/21 07:45:19 ivan +# visual, use FS::table_name when doing qsearch('table_name') +# +# Revision 1.3 1998/11/15 11:20:12 ivan +# s/CGI-Base/CGI.pm/ causes s/QUERY_STRING/keywords/; +# +# Revision 1.2 1998/11/13 09:56:46 ivan # change configuration file layout to support multiple distinct databases (with # own set of config files, export, etc.) # use strict; +use vars qw( $cgi $agent_type $action $hashref $p $part_pkg ); use CGI; use CGI::Carp qw(fatalsToBrowser); use FS::UID qw(cgisuidsetup); -use FS::Record qw(qsearch qsearchs); +use FS::Record qw(qsearch qsearchs fields); use FS::agent_type; -use FS::CGI qw(header menubar); +use FS::CGI qw(header menubar popurl); +use FS::agent_type; +use FS::part_pkg; +use FS::type_pkgs; -my($cgi) = new CGI; +$cgi = new CGI; &cgisuidsetup($cgi); -my($agent_type,$action); -if ( $cgi->var('QUERY_STRING') =~ /^(\d+)$/ ) { #editing +if ( $cgi->param('error') ) { + $agent_type = new FS::agent_type ( { + map { $_, scalar($cgi->param($_)) } fields('agent') + } ); +} elsif ( $cgi->keywords ) { #editing + my( $query ) = $cgi->keywords; + $query =~ /^(\d+)$/; $agent_type=qsearchs('agent_type',{'typenum'=>$1}); - $action='Edit'; } else { #adding - $agent_type=create FS::agent_type {}; - $action='Add'; + $agent_type = new FS::agent_type {}; } -my($hashref)=$agent_type->hashref; +$action = $agent_type->typenum ? 'Edit' : 'Add'; +$hashref = $agent_type->hashref; + +$p = popurl(2); +print $cgi->header( '-expires' => 'now' ), header("$action Agent Type", menubar( + 'Main Menu' => "$p", + 'View all agent types' => "${p}browse/agent_type.cgi", +)); -print $cgi->header, header("$action Agent Type", menubar( - 'Main Menu' => '../', - 'View all agent types' => '../browse/agent_type.cgi', -)), '
'; +print qq!Error: !, $cgi->param('error'), + "" + if $cgi->param('error'); -print qq!!, +print '', + qq!!, "Agent Type #", $hashref->{typenum} ? $hashref->{typenum} : "(NEW)"; print <Type -

Select which packages agents of this type may sell to customers

+

Agent Type +

Select which packages agents of this type may sell to customers
END -my($part_pkg); foreach $part_pkg ( qsearch('part_pkg',{}) ) { print qq!
!,$part_pkg->getfield('pkg') + qq!"VALUE="ON"> !, + qq!', $part_pkg->getfield('pkg'), '', ; }