version 1.9, 2002/08/19 13:10:55
|
version 1.13, 2002/09/11 18:26:41
|
Line 108 sub screennamechanger {
|
Line 108 sub screennamechanger {
|
my $domain = $ENV{'user.domain'}; |
my $domain = $ENV{'user.domain'}; |
my %userenv = &Apache::lonnet::get('environment',['screenname']); |
my %userenv = &Apache::lonnet::get('environment',['screenname']); |
my $screenname=$userenv{'screenname'}; |
my $screenname=$userenv{'screenname'}; |
|
my $bodytag=&Apache::loncommon::bodytag( |
|
'Change Your Anonymous Screen Name'); |
$r->print(<<ENDSCREEN); |
$r->print(<<ENDSCREEN); |
<html> |
<html> |
<body bgcolor="#FFFFFF"> |
$bodytag |
<h1>Preferences for $user</h1> |
|
<h3>$user is a member of domain $domain</h3> |
|
<p> |
|
Change anonymous discussion screen name for $user |
|
</p> |
|
<form name="server" action="/adm/preferences" method="post"> |
<form name="server" action="/adm/preferences" method="post"> |
<input type="hidden" name="action" value="verify_and_change_screenname" /> |
<input type="hidden" name="action" value="verify_and_change_screenname" /> |
New screenname: |
New screenname: |
Line 143 sub verify_and_change_screenname {
|
Line 141 sub verify_and_change_screenname {
|
&Apache::lonnet::delenv('environment\.screenname'); |
&Apache::lonnet::delenv('environment\.screenname'); |
$message='Reset screenname'; |
$message='Reset screenname'; |
} |
} |
|
my $bodytag=&Apache::loncommon::bodytag( |
|
'Change Your Anonymous Screen Name'); |
$r->print(<<ENDVCSCREEN); |
$r->print(<<ENDVCSCREEN); |
<html> |
<html> |
<body bgcolor="#FFFFFF"> |
$bodytag |
<h1>Preferences for $user</h1> |
|
<h3>$user is a member of domain $domain</h3> |
|
<p> |
|
Change anonymous discussion screen name for $user |
|
</p> |
</p> |
$message |
$message |
</body></html> |
</body></html> |
ENDVCSCREEN |
ENDVCSCREEN |
} |
} |
|
|
|
################################################################ |
|
# Message Forward # |
|
################################################################ |
|
|
|
sub msgforwardchanger { |
|
my $r = shift; |
|
my $user = $ENV{'user.name'}; |
|
my $domain = $ENV{'user.domain'}; |
|
my %userenv = &Apache::lonnet::get('environment',['msgforward']); |
|
my $msgforward=$userenv{'msgforward'}; |
|
my $bodytag=&Apache::loncommon::bodytag( |
|
'Change Your Message Forwarding'); |
|
$r->print(<<ENDMSG); |
|
<html> |
|
$bodytag |
|
|
|
<form name="server" action="/adm/preferences" method="post"> |
|
<input type="hidden" name="action" value="verify_and_change_msgforward" /> |
|
New Forwarding Address(es) (<tt>user:domain,user:domain,...</tt>): |
|
<input type="text" size="40" value="$msgforward" name="msgforward" /> |
|
<input type="submit" value="Change" /> |
|
</form> |
|
</body> |
|
</html> |
|
ENDMSG |
|
} |
|
|
|
sub verify_and_change_msgforward { |
|
my $r = shift; |
|
my $user = $ENV{'user.name'}; |
|
my $domain = $ENV{'user.domain'}; |
|
my $newscreen = ''; |
|
my $message=''; |
|
foreach (split(/\,/,$ENV{'form.msgforward'})) { |
|
my ($msuser,$msdomain)=split(/[\@\:]/,$_); |
|
$msuser=~s/\W//g; |
|
$msdomain=~s/\W//g; |
|
if (($msuser) && ($msdomain)) { |
|
if (&Apache::lonnet::homeserver($msuser,$msdomain) ne 'no_host') { |
|
$newscreen.=$msuser.':'.$msdomain.','; |
|
} else { |
|
$message.='No such user: '.$msuser.':'.$msdomain.'<br>'; |
|
} |
|
} |
|
} |
|
$newscreen=~s/\,$//; |
|
if ($newscreen) { |
|
&Apache::lonnet::put('environment',{'msgforward' => $newscreen}); |
|
&Apache::lonnet::appenv('environment.msgforward' => $newscreen); |
|
$message.='Set new message forwarding to '.$newscreen; |
|
} else { |
|
&Apache::lonnet::del('environment',['msgforward']); |
|
&Apache::lonnet::delenv('environment\.msgforward'); |
|
$message.='Reset message forwarding'; |
|
} |
|
my $bodytag=&Apache::loncommon::bodytag( |
|
'Change Your Message Forwarding'); |
|
$r->print(<<ENDVCMSG); |
|
<html> |
|
$bodytag |
|
</p> |
|
$message |
|
</body></html> |
|
ENDVCMSG |
|
} |
|
|
###################################################### |
###################################################### |
# password handler subroutines # |
# password handler subroutines # |
###################################################### |
###################################################### |
Line 198 sub passwordchanger {
|
Line 260 sub passwordchanger {
|
my $jsh=Apache::File->new($include."/londes.js"); |
my $jsh=Apache::File->new($include."/londes.js"); |
$r->print(<$jsh>); |
$r->print(<$jsh>); |
} |
} |
|
my $bodytag=&Apache::loncommon::bodytag('Change Password','', |
|
'onLoad="init();"'); |
$r->print(<<ENDFORM); |
$r->print(<<ENDFORM); |
</head> |
</head> |
<body bgcolor="#FFFFFF" onLoad="init();"> |
$bodytag |
|
|
<script language="JavaScript"> |
<script language="JavaScript"> |
|
|
Line 228 sub passwordchanger {
|
Line 292 sub passwordchanger {
|
} |
} |
|
|
</script> |
</script> |
<h1>Preferences for $user</h1> |
|
<h3>$user is a member of domain $domain</h3> |
|
$errormessage |
$errormessage |
<p> |
|
Change password for $user |
|
</p> |
|
<p> |
<p> |
<!-- We seperate the forms into 'server' and 'client' in order to |
<!-- We seperate the forms into 'server' and 'client' in order to |
ensure that unencrypted passwords will not be sent out by a |
ensure that unencrypted passwords will not be sent out by a |
Line 395 sub handler {
|
Line 455 sub handler {
|
&screennamechanger($r); |
&screennamechanger($r); |
} elsif ($ENV{'form.action'} eq 'verify_and_change_screenname') { |
} elsif ($ENV{'form.action'} eq 'verify_and_change_screenname') { |
&verify_and_change_screenname($r); |
&verify_and_change_screenname($r); |
|
} elsif ($ENV{'form.action'} eq 'changemsgforward') { |
|
&msgforwardchanger($r); |
|
} elsif ($ENV{'form.action'} eq 'verify_and_change_msgforward') { |
|
&verify_and_change_msgforward($r); |
} else { |
} else { |
$r->print(<<ENDHEADER); |
$r->print(<<ENDHEADER); |
<html> |
<html> |
<head> |
<head> |
<title>LON-CAPA Preferences</title> |
<title>LON-CAPA Preferences</title> |
</head> |
</head> |
<body bgcolor="#FFFFFF" > |
|
<h1>Preferences for $user</h1> |
|
<h3>$user is a member of domain $domain</h3> |
|
ENDHEADER |
ENDHEADER |
|
$r->print(&Apache::loncommon::bodytag('Change Your Preferences')); |
# Determine current authentication method |
# Determine current authentication method |
my $currentauth=&Apache::lonnet::queryauthenticate($user,$domain); |
my $currentauth=&Apache::lonnet::queryauthenticate($user,$domain); |
if ($currentauth =~ /^(unix|internal):/) { |
if ($currentauth =~ /^(unix|internal):/) { |
Line 414 ENDHEADER
|
Line 476 ENDHEADER
|
<input type="submit" value="Change password"> |
<input type="submit" value="Change password"> |
</form> |
</form> |
ENDPASSWORDFORM |
ENDPASSWORDFORM |
|
} |
# Change screen name |
# Change screen name |
$r->print(<<ENDSCREENNAMEFORM); |
$r->print(<<ENDSCREENNAMEFORM); |
<form name="client" action="/adm/preferences" method="post"> |
<form name="client" action="/adm/preferences" method="post"> |
Line 421 ENDPASSWORDFORM
|
Line 484 ENDPASSWORDFORM
|
<input type="submit" value="Change anonymous discussion screen name"> |
<input type="submit" value="Change anonymous discussion screen name"> |
</form> |
</form> |
ENDSCREENNAMEFORM |
ENDSCREENNAMEFORM |
|
$r->print(<<ENDMSGFORWARDFORM); |
|
<form name="client" action="/adm/preferences" method="post"> |
|
<input type="hidden" name="action" value="changemsgforward"> |
|
<input type="submit" value="Change message forwarding address"> |
|
</form> |
|
ENDMSGFORWARDFORM |
|
# The "about me" page |
|
my $aboutmeaction= |
|
'/adm/'.$ENV{'user.domain'}.'/'.$ENV{'user.name'}.'/aboutme'; |
|
$r->print(<<ENDABOUTME); |
|
<form name="client" action="$aboutmeaction" method="post"> |
|
<input type="hidden" name="action" value="changescreenname"> |
|
<input type="submit" value="Edit the 'About Me' Personal Information Screen"> |
|
</form> |
|
ENDABOUTME |
# Other preference setting code should be added here |
# Other preference setting code should be added here |
} |
|
} |
} |
$r->print(<<ENDFOOTER); |
$r->print(<<ENDFOOTER); |
</body> |
</body> |
</html> |
</html> |
ENDFOOTER |
ENDFOOTER |
return OK; |
return OK; |
} |
} |
|
|
1; |
1; |
__END__ |
__END__ |