version 1.49, 2021/05/04 18:47:36
|
version 1.52, 2025/02/14 19:01:11
|
Line 115 sub handler {
|
Line 115 sub handler {
|
} |
} |
} |
} |
my %passwdconf = &Apache::lonnet::get_passwdconf($dom_in_effect); |
my %passwdconf = &Apache::lonnet::get_passwdconf($dom_in_effect); |
|
my $clientip = &Apache::lonnet::get_requestor_ip($r); |
my $token = $env{'form.token'}; |
my $token = $env{'form.token'}; |
my $useremail = $env{'form.useremail'}; |
my $useremail = $env{'form.useremail'}; |
if (($udom ne '') && (!$otherinst) && (!$token)) { |
if (($udom ne '') && (!$otherinst) && (!$token)) { |
Line 292 END
|
Line 293 END
|
my $output; |
my $output; |
if ($token) { |
if ($token) { |
$r->print($header); |
$r->print($header); |
&reset_passwd($r,$token,$contact_name,$contact_email,\%passwdconf); |
&reset_passwd($r,$token,$contact_name,$contact_email,$clientip,\%passwdconf); |
$r->print(&Apache::loncommon::end_page()); |
$r->print(&Apache::loncommon::end_page()); |
return OK; |
return OK; |
} elsif ($udom) { |
} elsif ($udom) { |
Line 327 END
|
Line 328 END
|
my $authtype = &Apache::lonnet::queryauthenticate($uname,$udom); |
my $authtype = &Apache::lonnet::queryauthenticate($uname,$udom); |
if ($authtype =~ /^internal/) { |
if ($authtype =~ /^internal/) { |
my ($blocked,$blocktext) = |
my ($blocked,$blocktext) = |
&Apache::loncommon::blocking_status('passwd',$uname,$udom); |
&Apache::loncommon::blocking_status('passwd',$clientip,$uname,$udom); |
if ($blocked) { |
if ($blocked) { |
$output = '<p class="LC_warning">'.$blocktext.'</p>' |
$output = '<p class="LC_warning">'.$blocktext.'</p>' |
.&display_actions($contact_email,$domdesc); |
.&display_actions($contact_email,$domdesc); |
Line 441 sub get_uname {
|
Line 442 sub get_uname {
|
$msg .= $contents; |
$msg .= $contents; |
} |
} |
} |
} |
$msg .= '<p>'.&mt('Three conditions must be met:') |
$msg .= '<p>'.&mt('Three conditions must be met:').'</p>' |
.'<ul><li>'.&mt('An e-mail address must have previously been associated with your LON-CAPA username.').'</li>' |
.'<ul><li>'.&mt('An e-mail address must have previously been associated with your LON-CAPA username.').'</li>' |
.'<li>'.&mt('You must be able to access e-mail sent to that address.').'</li>' |
.'<li>'.&mt('You must be able to access e-mail sent to that address.').'</li>' |
.'<li>'.&mt('Your LON-CAPA account must be of a type for which LON-CAPA can reset a password.') |
.'<li>'.&mt('Your LON-CAPA account must be of a type for which LON-CAPA can reset a password.') |
.'</ul></p>'; |
.'</ul>'; |
my $onchange = 'javascript:verifyDomain(this,this.form);'; |
my $onchange = 'javascript:verifyDomain(this,this.form);'; |
$msg .= '<form name="forgotpw" method="post" action="/adm/resetpw" onsubmit="return validInfo();">'. |
$msg .= '<form name="forgotpw" method="post" action="/adm/resetpw" onsubmit="return validInfo();">'. |
&Apache::lonhtmlcommon::start_pick_box(). |
&Apache::lonhtmlcommon::start_pick_box(). |
Line 604 sub homeserver_redirect {
|
Line 605 sub homeserver_redirect {
|
} |
} |
|
|
sub reset_passwd { |
sub reset_passwd { |
my ($r,$token,$contact_name,$contact_email,$passwdconf) = @_; |
my ($r,$token,$contact_name,$contact_email,$clientip,$passwdconf) = @_; |
return unless (ref($passwdconf) eq 'HASH'); |
return unless (ref($passwdconf) eq 'HASH'); |
my %data = &Apache::lonnet::tmpget($token); |
my %data = &Apache::lonnet::tmpget($token); |
my $now = time; |
my $now = time; |
Line 625 sub reset_passwd {
|
Line 626 sub reset_passwd {
|
} |
} |
my $reqtime = &Apache::lonlocal::locallocaltime($data{'time'}); |
my $reqtime = &Apache::lonlocal::locallocaltime($data{'time'}); |
my ($blocked,$blocktext) = |
my ($blocked,$blocktext) = |
&Apache::loncommon::blocking_status('passwd',$data{'username'},$data{'domain'}); |
&Apache::loncommon::blocking_status('passwd',$clientip,$data{'username'},$data{'domain'}); |
if ($blocked) { |
if ($blocked) { |
$r->print('<p class="LC_warning">'.$blocktext.'</p>'); |
$r->print('<p class="LC_warning">'.$blocktext.'</p>'); |
return; |
return; |