X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=htdocs%2Fedit%2Fsvc_acct.cgi;h=af18654ac4572ecc7059b144cc47715798a7909a;hb=cd6989b0380bb289bffac0b947a3bfa6eb8c773e;hp=61d0fdc28f167224933a5298694e6a06bff42a94;hpb=862af23639ad439ac7ec6f3519c4ed9478a50901;p=freeside.git diff --git a/htdocs/edit/svc_acct.cgi b/htdocs/edit/svc_acct.cgi index 61d0fdc28..af18654ac 100755 --- a/htdocs/edit/svc_acct.cgi +++ b/htdocs/edit/svc_acct.cgi @@ -1,6 +1,6 @@ #!/usr/bin/perl -Tw # -# svc_acct.cgi: Add/edit account (output form) +# $Id: svc_acct.cgi,v 1.6 1999-01-19 05:13:43 ivan Exp $ # # Usage: svc_acct.cgi {svcnum} | pkgnum{pkgnum}-svcpart{svcpart} # http://server.name/path/svc_acct.cgi? {svcnum} | pkgnum{pkgnum}-svcpart{svcpart} @@ -16,27 +16,43 @@ # bmccane@maxbaud.net 98-apr-3 # # use conf/shells and dbdef username length ivan@sisd.com 98-jul-13 +# +# $Log: svc_acct.cgi,v $ +# Revision 1.6 1999-01-19 05:13:43 ivan +# for mod_perl: no more top-level my() variables; use vars instead +# also the last s/create/new/; +# +# Revision 1.5 1999/01/18 09:41:32 ivan +# all $cgi->header calls now include ( '-expires' => 'now' ) for mod_perl +# (good idea anyway) +# +# Revision 1.4 1998/12/30 23:03:22 ivan +# bugfixes; fields isn't exported by derived classes +# +# Revision 1.3 1998/12/17 06:17:08 ivan +# fix double // in relative URLs, s/CGI::Base/CGI/; +# use strict; -use CGI::Base qw(:DEFAULT :CGI); +use vars qw( $conf $cgi @shells $action $svcnum $svc_acct $pkgnum $svcpart + $part_svc $query $svc $otaker $username $password $ulen $ulen2 $p1 + $popnum $uid $gid $finger $dir $shell $quota $slipip ); +use CGI; +use CGI::Carp qw(fatalsToBrowser); use FS::UID qw(cgisuidsetup getotaker); -use FS::Record qw(qsearch qsearchs); -use FS::svc_acct qw(fields); - -my($shells)="/var/spool/freeside/conf/shells"; -open(SHELLS,$shells) or die "Can't open $shells: $!"; -my(@shells)=map { - /^([\/\w]*)$/ or die "Illegal shell in conf/shells!"; - $1; -} grep $_ !~ /^#/, ; - -my($cgi) = new CGI::Base; -$cgi->get; +use FS::CGI qw(header popurl); +use FS::Record qw(qsearch qsearchs fields); +use FS::svc_acct; +use FS::Conf; + +$cgi = new CGI; &cgisuidsetup($cgi); -my($action,$svcnum,$svc_acct,$pkgnum,$svcpart,$part_svc); +$conf = new FS::Conf; +@shells = $conf->config('shells'); -if ( $QUERY_STRING =~ /^(\d+)$/ ) { #editing +($query) = $cgi->keywords; +if ( $query =~ /^(\d+)$/ ) { #editing $svcnum=$1; $svc_acct=qsearchs('svc_acct',{'svcnum'=>$svcnum}) @@ -55,9 +71,9 @@ if ( $QUERY_STRING =~ /^(\d+)$/ ) { #editing } else { #adding - $svc_acct=create FS::svc_acct({}); + $svc_acct = new FS::svc_acct({}); - foreach $_ (split(/-/,$QUERY_STRING)) { + foreach $_ (split(/-/,$query)) { $pkgnum=$1 if /^pkgnum(\d+)$/; $svcpart=$1 if /^svcpart(\d+)$/; } @@ -87,29 +103,21 @@ if ( $QUERY_STRING =~ /^(\d+)$/ ) { #editing } -my($svc)=$part_svc->getfield('svc'); +$svc = $part_svc->getfield('svc'); -my($otaker)=getotaker; +$otaker = getotaker; -my($username,$password)=( +($username,$password)=( $svc_acct->username, $svc_acct->_password ? "*HIDDEN*" : '', ); -my($ulen)=$svc_acct->dbdef_table->column('username')->length; -my($ulen2)=$ulen+2; +$ulen = $svc_acct->dbdef_table->column('username')->length; +$ulen2 = $ulen+2; -SendHeaders(); -print < - - $action $svc account - - -
-

$action $svc account

-

-
+$p1 = popurl(1); +print $cgi->header( '-expires' => 'now' ), header("$action $svc account"), < @@ -121,7 +129,7 @@ Username: END #pop -my($popnum)=$svc_acct->popnum || 0; +$popnum = $svc_acct->popnum || 0; if ( $part_svc->svc_acct__popnum_flag eq "F" ) { print qq!!; } else { @@ -139,7 +147,7 @@ if ( $part_svc->svc_acct__popnum_flag eq "F" ) { print ""; } -my($uid,$gid,$finger,$dir)=( +($uid,$gid,$finger,$dir)=( $svc_acct->uid, $svc_acct->gid, $svc_acct->finger, @@ -153,7 +161,7 @@ print < END -my($shell)=$svc_acct->shell; +$shell = $svc_acct->shell; if ( $part_svc->svc_acct__shell_flag eq "F" ) { print qq!!; } else { @@ -166,7 +174,7 @@ if ( $part_svc->svc_acct__shell_flag eq "F" ) { print ""; } -my($quota,$slipip)=( +($quota,$slipip)=( $svc_acct->quota, $svc_acct->slipip, );