From 65b1729a22924fd72ba24449727268159b070b36 Mon Sep 17 00:00:00 2001 From: ivan Date: Sat, 10 Feb 2007 06:13:15 +0000 Subject: [PATCH] reincorporate the changes from http://www.sisd.com/cgi-bin/viewcvs.cgi/freeside/httemplate/edit/part_svc.cgi?r1=1.52&r2=1.53 that were lost due to the concurrent service-refactor merge --- FS/FS/svc_acct.pm | 35 ++++++++++++++++++++++++----------- FS/FS/svc_phone.pm | 2 ++ httemplate/edit/part_svc.cgi | 4 +++- 3 files changed, 29 insertions(+), 12 deletions(-) diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm index 32ffb76d1..0a7d6be6d 100644 --- a/FS/FS/svc_acct.pm +++ b/FS/FS/svc_acct.pm @@ -8,7 +8,8 @@ use vars qw( @ISA $DEBUG $me $conf $skip_fuzzyfiles $username_noperiod $username_nounderscore $username_nodash $username_uppercase $username_percent $password_noampersand $password_noexclamation - $welcome_template $welcome_from $welcome_subject $welcome_mimetype + $welcome_template $welcome_from + $welcome_subject $welcome_subject_template $welcome_mimetype $warning_template $warning_from $warning_subject $warning_mimetype $warning_cc $smtpmachine @@ -71,6 +72,10 @@ $FS::UID::callback{'FS::svc_acct'} = sub { ) or warn "can't create welcome email template: $Text::Template::ERROR"; $welcome_from = $conf->config('welcome_email-from'); # || 'your-isp-is-dum' $welcome_subject = $conf->config('welcome_email-subject') || 'Welcome'; + $welcome_subject_template = new Text::Template ( + TYPE => 'STRING', + SOURCE => $welcome_subject, + ) or warn "can't create welcome email subject template: $Text::Template::ERROR"; $welcome_mimetype = $conf->config('welcome_email-mimetype') || 'text/plain'; } else { $welcome_template = ''; @@ -232,17 +237,20 @@ sub table_info { select_table => 'svc_acct_pop', select_key => 'popnum', select_label => 'city', + disable_select => 1, }, 'username' => { label => 'Username', type => 'text', disable_default => 1, disable_fixed => 1, + disable_select => 1, }, 'quota' => { label => 'Quota', type => 'text', disable_inventory => 1, + disable_select => 1, }, '_password' => 'Password', 'gid' => { @@ -257,16 +265,18 @@ sub table_info { type =>'select', select_list => [ $conf->config('shells') ], disable_inventory => 1, + disable_select => 1, }, 'finger' => 'Real name (GECOS)', 'domsvc' => { label => 'Domain', - def_label => 'svcnum from svc_domain', + #def_label => 'svcnum from svc_domain', type => 'select', select_table => 'svc_domain', select_key => 'svcnum', select_label => 'domain', disable_inventory => 1, + }, 'usergroup' => { label => 'RADIUS groups', @@ -277,6 +287,7 @@ sub table_info { 'seconds' => { label => 'Seconds', type => 'text', disable_inventory => 1, + disable_select => 1, }, }, }; @@ -468,6 +479,15 @@ sub insert { if ( $welcome_template && $cust_pkg ) { my $to = join(', ', grep { $_ !~ /^(POST|FAX)$/ } $cust_main->invoicing_list ); if ( $to ) { + + my %hash = ( + 'custnum' => $self->custnum, + 'username' => $self->username, + 'password' => $self->_password, + 'first' => $cust_main->first, + 'last' => $cust_main->getfield('last'), + 'pkg' => $cust_pkg->part_pkg->pkg, + ); my $wqueue = new FS::queue { 'svcnum' => $self->svcnum, 'job' => 'FS::svc_acct::send_email' @@ -475,16 +495,9 @@ sub insert { my $error = $wqueue->insert( 'to' => $to, 'from' => $welcome_from, - 'subject' => $welcome_subject, + 'subject' => $welcome_subject_template->fill_in( HASH => \%hash, ), 'mimetype' => $welcome_mimetype, - 'body' => $welcome_template->fill_in( HASH => { - 'custnum' => $self->custnum, - 'username' => $self->username, - 'password' => $self->_password, - 'first' => $cust_main->first, - 'last' => $cust_main->getfield('last'), - 'pkg' => $cust_pkg->part_pkg->pkg, - } ), + 'body' => $welcome_template->fill_in( HASH => \%hash, ), ); if ( $error ) { $dbh->rollback if $oldAutoCommit; diff --git a/FS/FS/svc_phone.pm b/FS/FS/svc_phone.pm index 8e39b9f10..00ccc1958 100644 --- a/FS/FS/svc_phone.pm +++ b/FS/FS/svc_phone.pm @@ -74,11 +74,13 @@ sub table_info { 'countrycode' => { label => 'Country code', type => 'text', disable_inventory => 1, + disable_select => 1, }, 'phonenum' => 'Phone number', 'pin' => { label => 'Personal Identification Number', type => 'text', disable_inventory => 1, + disable_select => 1, }, }, }; diff --git a/httemplate/edit/part_svc.cgi b/httemplate/edit/part_svc.cgi index 4b841dd99..6ba9240e3 100755 --- a/httemplate/edit/part_svc.cgi +++ b/httemplate/edit/part_svc.cgi @@ -280,7 +280,9 @@ that field. % % } elsif ( $def->{type} eq 'select' ) { % -% $html .= qq!{select_table} ) { % foreach my $record ( qsearch( $def->{select_table}, {} ) ) { -- 2.11.0