diff options
author | Ivan Kohler <ivan@freeside.biz> | 2013-04-29 12:18:07 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2013-04-29 12:18:07 -0700 |
commit | 7266a53154af0f0b2240d3de4f912c52670d67d0 (patch) | |
tree | 50ffa1f5b555b4a1a500d8a2925fb6f45c77a2a7 | |
parent | f3e0ac2b009c4edd5692cb587ff709dac2223ebe (diff) |
add selectable domain option to signup, RT#21557
-rw-r--r-- | FS/FS/ClientAPI/Signup.pm | 2 | ||||
-rw-r--r-- | FS/FS/Conf.pm | 9 | ||||
-rw-r--r-- | fs_selfservice/FS-SelfService/SelfService.pm | 3 | ||||
-rwxr-xr-x | fs_selfservice/FS-SelfService/cgi/signup.cgi | 6 | ||||
-rwxr-xr-x | fs_selfservice/FS-SelfService/cgi/signup.html | 6 |
5 files changed, 21 insertions, 5 deletions
diff --git a/FS/FS/ClientAPI/Signup.pm b/FS/FS/ClientAPI/Signup.pm index 1dbb20bc7..895c5823e 100644 --- a/FS/FS/ClientAPI/Signup.pm +++ b/FS/FS/ClientAPI/Signup.pm @@ -98,7 +98,7 @@ sub signup_info { my @signup_bools = qw( no_company recommend_daytime recommend_email ); - my @signup_server_scalars = qw( default_pkgpart default_svcpart ); + my @signup_server_scalars = qw( default_pkgpart default_svcpart default_domain ); my @selfservice_textareas = qw( head body_header body_footer ); diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 6a19ff475..c93331d24 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -2159,11 +2159,18 @@ and customer address. Include units.', { 'key' => 'signup_server-default_svcpart', 'section' => 'self-service', - 'description' => 'Default service definition for the signup server - only necessary for services that trigger special provisioning widgets (such as DID provisioning).', + 'description' => 'Default service definition for the signup server - only necessary for services that trigger special provisioning widgets (such as DID provisioning or domain selection).', 'type' => 'select-part_svc', }, { + 'key' => 'signup_server-default_domain', + 'section' => 'self-service', + 'description' => 'If specified, the default domain for signup (useful when domain is set to selectable choice).', + 'type' => 'text', + }, + + { 'key' => 'signup_server-mac_addr_svcparts', 'section' => 'self-service', 'description' => 'Service definitions which can receive mac addresses (current mapped to username for svc_acct).', diff --git a/fs_selfservice/FS-SelfService/SelfService.pm b/fs_selfservice/FS-SelfService/SelfService.pm index 651a8f5cf..1fa67c2ad 100644 --- a/fs_selfservice/FS-SelfService/SelfService.pm +++ b/fs_selfservice/FS-SelfService/SelfService.pm @@ -1799,8 +1799,9 @@ sub domainselector { '<INPUT TYPE="hidden" NAME="domsvc" VALUE="'. $key. '"></TD></TR>' } - my $text .= qq!<TR><TD ALIGN="right">Domain</TD><TD><SELECT NAME="domsvc" SIZE=1 STYLE="width: 20em"><OPTION>(Choose Domain)!; + my $text .= qq!<TR><TD ALIGN="right">Domain</TD><TD><SELECT NAME="domsvc" SIZE=1 STYLE="width: 20em">; + $text .= '<OPTION>(Choose Domain)' unless $domsvc; foreach my $domain ( sort { $domains->{$a} cmp $domains->{$b} } keys %$domains ) { $text .= qq!<OPTION VALUE="!. $domain. '"'. diff --git a/fs_selfservice/FS-SelfService/cgi/signup.cgi b/fs_selfservice/FS-SelfService/cgi/signup.cgi index 23d814e16..88eab5cce 100755 --- a/fs_selfservice/FS-SelfService/cgi/signup.cgi +++ b/fs_selfservice/FS-SelfService/cgi/signup.cgi @@ -231,7 +231,7 @@ if ( $magic eq 'process' || $action eq 'process_signup' ) { invoicing_list referral_custnum promo_code reg_code override_ban_warn pkgpart refnum agentnum - username sec_phrase _password popnum + username sec_phrase _password popnum domsvc mac_addr countrycode phonenum sip_password pin prepaid_shortform ), @@ -500,5 +500,7 @@ END package FS::SelfService::_signupcgi; use HTML::Entities; -use FS::SelfService qw(regionselector expselect popselector didselector); +use FS::SelfService qw( regionselector expselect popselector domainselector + didselector + ); diff --git a/fs_selfservice/FS-SelfService/cgi/signup.html b/fs_selfservice/FS-SelfService/cgi/signup.html index 16ef7f726..d5cbcd4c5 100755 --- a/fs_selfservice/FS-SelfService/cgi/signup.html +++ b/fs_selfservice/FS-SelfService/cgi/signup.html @@ -319,6 +319,12 @@ ENDOUT <TD ALIGN="right">Username</TD> <TD><INPUT TYPE="text" NAME="username" VALUE="$username"></TD> </TR> +ENDOUT + + $OUT .= domainselector( svcpart=>$default_svcpart, domsvc=>$default_domain ) + if $default_svcpart; + + $OUT .= <<ENDOUT; <TR> <TD ALIGN="right">Password</TD> <TD><INPUT TYPE="password" NAME="_password" VALUE="$_password"></TD> |