--- loncom/interface/createaccount.pm 2008/07/04 18:53:22 1.8
+++ loncom/interface/createaccount.pm 2008/07/09 17:30:59 1.14
@@ -3,7 +3,7 @@
# institutional log-in ID (institutional authentication required - localauth
# or kerberos) or an e-mail address.
#
-# $Id: createaccount.pm,v 1.8 2008/07/04 18:53:22 raeburn Exp $
+# $Id: createaccount.pm,v 1.14 2008/07/09 17:30:59 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -35,6 +35,7 @@ use Apache::Constants qw(:common);
use Apache::lonacc;
use Apache::lonnet;
use Apache::loncommon;
+use Apache::lonhtmlcommon;
use Apache::lonlocal;
use Apache::lonauth;
use Apache::resetpw;
@@ -107,7 +108,9 @@ sub handler {
if (@cancreate == 0) {
&print_header($r,$start_page);
- my $output = &mt('Creation of a new user account using an e-mail address or an institutional log-in ID as username is not permitted in the domain: [_1] ([_2]).',$domain,$domdesc);
+ my $output = '
'.&mt('Account creation unavailable').'
'.
+ ''.
+ &mt('Creation of a new user account using an e-mail address or an institutional log-in ID as username is not permitted in the domain: [_1] ([_2]).',$domain,$domdesc).'
';
$r->print($output);
$r->print(&Apache::loncommon::end_page());
return OK;
@@ -122,19 +125,26 @@ sub handler {
&print_header($r,$start_page);
my ($output,$msg);
if (grep(/^sso$/,@cancreate)) {
- $msg = &mt("Although your username and password were authenticated by your institution's Single Sign On system, you do not currently have a LON-CAPA account in this domain.");
+ $msg = '
'.&mt('Account creation').'
'.
+ &mt("Although your username and password were authenticated by your institution's Single Sign On system, you do not currently have a LON-CAPA account in this domain.").'
';
($output, my $checkfail) = &username_check($sso_username,$domain,
$domdesc,$courseid,
- $lonhost,$contact_email);
- if ($checkfail eq 'username') {
- $msg .= &mt('A LON-CAPA account may not be created with the username you use.');
- } elsif ($checkfail eq 'authtoken') {
- $msg .= &mt('Error creating token.');
+ $lonhost,$contact_email);
+ if ($checkfail) {
+ if ($checkfail eq 'username') {
+ $msg .= ''.
+ &mt('A LON-CAPA account may not be created with the username you use.').'';
+ } elsif ($checkfail eq 'authtoken') {
+ $msg .= ''.&mt('Error creating token.').'';
+ }
+ $msg .= '
'.
+ &mt('Please contact the [_1] ([_2]) for assistance.',$contact_name,$contact_email);
} else {
$msg .= &mt('To create one, use the table below to provide information about yourself (if appropriate), then click the "Create LON-CAPA account" button.');
}
} else {
- $msg = &mt("Although your username and password were authenticated by your institution's Single Sign On system, you do not currently have a LON-CAPA account in this domain, and you are not permitted to create one.");
+ $msg .= '
'.&mt('Account creation unavailable').'
'.
+ ''.&mt("Although your username and password were authenticated by your institution's Single Sign On system, you do not currently have a LON-CAPA account in this domain, and you are not permitted to create one.").'
'.&mt('Please contact the [_1] ([_2]) for assistance.',$contact_name,$contact_email);
}
$r->print('
'.$msg.'
'.$output);
$r->print(&Apache::loncommon::end_page());
@@ -195,6 +205,9 @@ sub handler {
$r->print(<$jsh>);
$r->print(&javascript_setforms($now));
}
+ if (grep(/^email$/,@cancreate)) {
+ $r->print(&javascript_validmail());
+ }
$output = &print_username_form($domain,$domdesc,\@cancreate,$now,$lonhost,
$courseid);
}
@@ -277,6 +290,27 @@ ENDSCRIPT
return $js;
}
+sub javascript_validmail {
+ my %lt = &Apache::lonlocal::texthash (
+ email => 'The e-mail address you entered',
+ notv => 'is not a valid e-mail address',
+ );
+ my $output = "\n".''."\n";
+ return $output;
+}
+
sub print_username_form {
my ($domain,$domdesc,$cancreate,$now,$lonhost,$courseid) = @_;
my %lt = &Apache::lonlocal::texthash(
@@ -290,7 +324,7 @@ sub print_username_form {
my %domdefaults = &Apache::lonnet::get_domain_defaults($domain);
if ((($domdefaults{'auth_def'} =~/^krb/) && ($domdefaults{'auth_arg_def'} ne '')) || ($domdefaults{'auth_def'} eq 'localauth')) {
$output = '
'.&mt('Create account with a username provided by your institution').'
';
- $output .= &mt('If you already have a log-in ID at your institution, you may be able to use it for LON-CAPA.').' '.&mt('Type in your log-in ID and password to find out.').'
';
+ $output .= &mt('If you already have a log-in ID at your institution,[_1] you may be able to use it for LON-CAPA.',' ').'
'.&mt('Type in your log-in ID and password to find out.').'
';
my ($lkey,$ukey) = &Apache::lonpreferences::des_keys();
my ($lextkey,$uextkey) = &getkeys($lkey,$ukey);
my $logtoken=Apache::lonnet::reply('tmpput:'.$ukey.$lkey.'&createaccount',
@@ -320,14 +354,14 @@ sub print_username_form {
if (grep(/^email$/,@{$cancreate})) {
$output .= '
'.&mt('Create account with an e-mail address as your username').'
';
if (grep(/^login$/,@{$cancreate})) {
- $output .= &mt('Provide your e-mail address to request a LON-CAPA account if you do not have a log-in ID at your institution.').'
';
+ $output .= &mt('Provide your e-mail address to request a LON-CAPA account,[_1] if you do not have a log-in ID at your institution.',' ').'
';
} else {
$output .= ' ';
}
my $emailform = '';
my $captchaform = &create_captcha();
my $submit_text = &mt('Request LON-CAPA account');
- $output .= '