'.&mt('You are already logged in').'
'. ''.&mt('Please either [_1]continue the current session[_2] or [_3]log out[_4].', '','','',''). - '
'.$end_page); + '--- loncom/interface/createaccount.pm 2020/09/08 18:08:29 1.80 +++ loncom/interface/createaccount.pm 2025/02/18 17:45:11 1.90 @@ -4,7 +4,7 @@ # kerberos, or SSO) or an e-mail address. Requests to use an e-mail address as # username may be processed automatically, or may be queued for approval. # -# $Id: createaccount.pm,v 1.80 2020/09/08 18:08:29 raeburn Exp $ +# $Id: createaccount.pm,v 1.90 2025/02/18 17:45:11 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -37,7 +37,6 @@ use Apache::lonacc; use Apache::lonnet; use Apache::loncommon; use Apache::lonhtmlcommon; -use Apache::lonuserutils; use Apache::lonlocal; use Apache::lonauth; use Apache::resetpw; @@ -95,17 +94,24 @@ sub handler { my $lonhost = $r->dir_config('lonHostID'); my $include = $r->dir_config('lonIncludes'); my $start_page; + my $args = {}; + (undef,undef,undef,my $clientmathml,my $clientunicode) = + &Apache::loncommon::decode_user_agent(); + if ($clientunicode && !$clientmathml) { + $args->{'browser.unicode'} = 1; + } my $handle = &Apache::lonnet::check_for_valid_session($r); if (($handle ne '') && ($handle !~ /^publicuser_\d+$/)) { $start_page = - &Apache::loncommon::start_page('Already logged in'); + &Apache::loncommon::start_page('Already logged in',undef,$args); my $end_page = &Apache::loncommon::end_page(); - $r->print($start_page."\n".'
'.&mt('Please either [_1]continue the current session[_2] or [_3]log out[_4].', '','','',''). - '
'.$end_page); + ''.&mt('Choose your affiliation at [_1]',$domdesc).'
'."\n". - ''; + $output .= "\n".''. + '
'."\n"; } else { my ($captchaform,$error,$captcha,$recaptchaversion) = &Apache::loncommon::captcha_display('usercreation',$lonhost); @@ -738,15 +749,15 @@ sub login_box { my $logtoken=Apache::lonnet::reply('tmpput:'.$ukey.$lkey.'&createaccount:createaccount', $lonhost); $output = &serverform($logtoken,$lonhost,undef,$courseid,$context); - my $unameform = ''; - my $upassform = ''; + my $unameform = ''; + my $upassform = ''; $output .= ''; return $msg; } - my %info = ('ip' => $ENV{'REMOTE_ADDR'}, + my $ip = &Apache::lonnet::get_requestor_ip(); + my %info = ('ip' => $ip, 'time' => $now, 'domain' => $domain, 'username' => $email, @@ -1098,8 +1111,9 @@ sub process_mailtoken { &create_account($r,$domain,$domdesc,\%data); if ($result eq 'ok') { $msg = $output; + my $ip = &Apache::lonnet::get_requestor_ip(); my $shownow = &Apache::lonlocal::locallocaltime($now); - my $mailmsg = &mt('A LON-CAPA account for the institution: [_1] has been created [_2] from IP address: [_3]. If you did not perform this action or authorize it, please contact the [_4] ([_5]).',$domdesc,$shownow,$ENV{'REMOTE_ADDR'},$contact_name,$contact_email)."\n"; + my $mailmsg = &mt('A LON-CAPA account for the institution: [_1] has been created [_2] from IP address: [_3]. If you did not perform this action or authorize it, please contact the [_4] ([_5]).',$domdesc,$shownow,$ip,$contact_name,$contact_email)."\n"; my $mailresult = &Apache::resetpw::send_mail($domdesc,$data{'email'}, $mailmsg,$contact_name, $contact_email); @@ -1179,42 +1193,54 @@ sub print_dataentry_form { my ($lextkey,$uextkey) = &getkeys($lkey,$ukey); my $logtoken=Apache::lonnet::reply('tmpput:'.$ukey.$lkey.'&createaccount:createaccount', $lonhost); - $output .= + my $showsubmit = 1; + my $serverform = ''."\n". - ''.&mt('Fields marked [_1]*[_2] are required.','','').'
'; + my $endclientform; + unless ($showsubmit) { + if ($usertype ne '') { + $endclientform = ''."\n"; + } + } + $endclientform .= ''."\n". + ''."\n". + ''."\n". + ''."\n"; my ($datatable,$rowcount) = &Apache::loncreateuser::personal_data_display('',$domain,'email','selfcreate', - '','',$now,$captchaform, + '','','',$now,$captchaform, $emailusername,$usertype, - $usernameset,$condition,$excluded); + $usernameset,$condition,$excluded, + $showsubmit); if ($rowcount) { - $output .= ''. + &mt('Fields marked [_1]*[_2] are required.','',''). + '
'; } else { $output = &mt('Could not load javascript file [_1]','londes.js'); } @@ -1405,7 +1439,7 @@ sub create_account { unless (($inststatus eq 'default') || ($inststatus eq '')) { &Apache::lonnet::put('environment',{inststatus => $inststatus},$domain,$username); } - $output .= '