Diff for /loncom/interface/lonpreferences.pm between versions 1.13 and 1.15

version 1.13, 2002/09/11 18:26:41 version 1.15, 2002/10/14 20:41:07
Line 106  sub screennamechanger { Line 106  sub screennamechanger {
     my $r = shift;      my $r = shift;
     my $user       = $ENV{'user.name'};      my $user       = $ENV{'user.name'};
     my $domain     = $ENV{'user.domain'};      my $domain     = $ENV{'user.domain'};
     my %userenv = &Apache::lonnet::get('environment',['screenname']);      my %userenv = &Apache::lonnet::get
           ('environment',['screenname','nickname']);
     my $screenname=$userenv{'screenname'};      my $screenname=$userenv{'screenname'};
       my $nickname=$userenv{'nickname'};
     my $bodytag=&Apache::loncommon::bodytag(      my $bodytag=&Apache::loncommon::bodytag(
                                          'Change Your Anonymous Screen Name');                'Change Your Nickname and Anonymous Screen Name');
     $r->print(<<ENDSCREEN);      $r->print(<<ENDSCREEN);
 <html>  <html>
 $bodytag  $bodytag
   
 <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:  <br />New screenname (shown if you post anonymously):
 <input type="text" size="20" value="$screenname" name="screenname" />  <input type="text" size="20" value="$screenname" name="screenname" />
   <br />New nickname (shown if you post non-anonymously):
   <input type="text" size="20" value="$nickname" name="nickname" />
 <input type="submit" value="Change" />  <input type="submit" value="Change" />
 </form>  </form>
 </body>  </body>
Line 129  sub verify_and_change_screenname { Line 133  sub verify_and_change_screenname {
     my $r = shift;      my $r = shift;
     my $user       = $ENV{'user.name'};      my $user       = $ENV{'user.name'};
     my $domain     = $ENV{'user.domain'};      my $domain     = $ENV{'user.domain'};
   # Screenname
     my $newscreen  = $ENV{'form.screenname'};      my $newscreen  = $ENV{'form.screenname'};
     $newscreen=~s/\W//g;      $newscreen=~s/[^ \w]//g;
     my $message='';      my $message='';
     if ($newscreen) {      if ($newscreen) {
         &Apache::lonnet::put('environment',{'screenname' => $newscreen});          &Apache::lonnet::put('environment',{'screenname' => $newscreen});
Line 141  sub verify_and_change_screenname { Line 146  sub verify_and_change_screenname {
         &Apache::lonnet::delenv('environment\.screenname');          &Apache::lonnet::delenv('environment\.screenname');
         $message='Reset screenname';          $message='Reset screenname';
     }      }
   # Nickname
       $message.='<br />';
       my $newscreen  = $ENV{'form.nickname'};
       $newscreen=~s/[^ \w]//g;
       if ($newscreen) {
           &Apache::lonnet::put('environment',{'nickname' => $newscreen});
           &Apache::lonnet::appenv('environment.nickname' => $newscreen);
           $message.='Set new nickname to '.$newscreen;
       } else {
           &Apache::lonnet::del('environment',['nickname']);
           &Apache::lonnet::delenv('environment\.nickname');
           $message.='Reset nickname';
       }
   
     my $bodytag=&Apache::loncommon::bodytag(      my $bodytag=&Apache::loncommon::bodytag(
                                          'Change Your Anonymous Screen Name');                      'Change Your Nickname and Anonymous Screen Name');
     $r->print(<<ENDVCSCREEN);      $r->print(<<ENDVCSCREEN);
 <html>  <html>
 $bodytag  $bodytag
Line 359  ENDHEADER Line 378  ENDHEADER
  "Password data was blank.\n</p>");   "Password data was blank.\n</p>");
  return;   return;
     }      }
     # Get the keys      # Get the keysecen my $lonhost = $r->dir_config('lonHostID');
     my $lonhost = $r->dir_config('lonHostID');  
     my $tmpinfo = Apache::lonnet::reply('tmpget:'.$logtoken,$lonhost);      my $tmpinfo = Apache::lonnet::reply('tmpget:'.$logtoken,$lonhost);
     if (($tmpinfo=~/^error/) || ($tmpinfo eq 'con_lost')) {      if (($tmpinfo=~/^error/) || ($tmpinfo eq 'con_lost')) {
         # I do not a have a better idea about how to handle this          # I do not a have a better idea about how to handle this
Line 459  sub handler { Line 477  sub handler {
         &msgforwardchanger($r);          &msgforwardchanger($r);
     } elsif ($ENV{'form.action'} eq 'verify_and_change_msgforward') {      } elsif ($ENV{'form.action'} eq 'verify_and_change_msgforward') {
         &verify_and_change_msgforward($r);          &verify_and_change_msgforward($r);
       } elsif ($ENV{'form.action'} eq 'debugtoggle') {
    if ($ENV{'user.name'} eq 'albertel' ) {
       if ($ENV{'user.debug'}) {
    &Apache::lonnet::delenv('user\.debug');
       } else {
    &Apache::lonnet::appenv('user.debug' => 1);
       }
    }
     } else {      } else {
  $r->print(<<ENDHEADER);   $r->print(<<ENDHEADER);
 <html>  <html>
Line 472  ENDHEADER Line 498  ENDHEADER
  if ($currentauth =~ /^(unix|internal):/) {   if ($currentauth =~ /^(unix|internal):/) {
     $r->print(<<ENDPASSWORDFORM);      $r->print(<<ENDPASSWORDFORM);
 <form name="client" action="/adm/preferences" method="post">  <form name="client" action="/adm/preferences" method="post">
 <input type="hidden" name="action" value="changepass">  <input type="hidden" name="action" value="changepass" />
 <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">
 <input type="hidden" name="action" value="changescreenname">  <input type="hidden" name="action" value="changescreenname" />
 <input type="submit" value="Change anonymous discussion screen name">  <input type="submit" 
   value="Change nickname and anonymous discussion screen name" />
 </form>  </form>
 ENDSCREENNAMEFORM  ENDSCREENNAMEFORM
     $r->print(<<ENDMSGFORWARDFORM);      $r->print(<<ENDMSGFORWARDFORM);
 <form name="client" action="/adm/preferences" method="post">  <form name="client" action="/adm/preferences" method="post">
 <input type="hidden" name="action" value="changemsgforward">  <input type="hidden" name="action" value="changemsgforward" />
 <input type="submit" value="Change message forwarding address">  <input type="submit" value="Change message forwarding address" />
 </form>  </form>
 ENDMSGFORWARDFORM  ENDMSGFORWARDFORM
 # The "about me" page  # The "about me" page
             my $aboutmeaction=   my $aboutmeaction=
         '/adm/'.$ENV{'user.domain'}.'/'.$ENV{'user.name'}.'/aboutme';      '/adm/'.$ENV{'user.domain'}.'/'.$ENV{'user.name'}.'/aboutme';
     $r->print(<<ENDABOUTME);   $r->print(<<ENDABOUTME);
 <form name="client" action="$aboutmeaction" method="post">  <form name="client" action="$aboutmeaction" method="post">
 <input type="hidden" name="action" value="changescreenname">  <input type="hidden" name="action" value="changescreenname" />
 <input type="submit" value="Edit the 'About Me' Personal Information Screen">  <input type="submit" value="Edit the 'About Me' Personal Information Screen" />
 </form>  </form>
 ENDABOUTME  ENDABOUTME
             # Other preference setting code should be added here   if ($ENV{'user.name'} eq 'albertel') {
       $r->print(<<ENDDEBUG);
   <form name="client" action="/adm/preferences" method="post">
   <input type="hidden" name="action" value="debugtoggle" />
   <input type="submit" value="Toggle Debug" />
   Current Debug status is -$ENV{'user.debug'}-.
   </form>
   ENDDEBUG
    }
    # Other preference setting code should be added here
     }      }
     $r->print(<<ENDFOOTER);      $r->print(<<ENDFOOTER);
 </body>  </body>

Removed from v.1.13  
changed lines
  Added in v.1.15


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>