Diff for /loncom/interface/lonmenu.pm between versions 1.538 and 1.539

version 1.538, 2023/09/28 15:56:48 version 1.539, 2023/10/02 21:01:21
Line 1081  sub innerregister { Line 1081  sub innerregister {
         if (($env{'request.symb'} ne '') &&          if (($env{'request.symb'} ne '') &&
             ($env{'request.filename'}=~/$LONCAPA::assess_re/) &&              ($env{'request.filename'}=~/$LONCAPA::assess_re/) &&
             (($perms{'mgr'}) || ($perms{'vgr'}))) {              (($perms{'mgr'}) || ($perms{'vgr'}))) {
             my ($viewas,$text,$change,$visibility,$vuname,$vudom,$vid,$leftvis,$defdom,$righticon);              my ($viewas,$text,$change,$visibility,$vuname,$vudom,$vid,$leftvis,$defdom,
                   $domselector,$righticon);
             my %lt = &Apache::lonlocal::texthash(              my %lt = &Apache::lonlocal::texthash(
                                                  view => 'View',                                                   view => 'View',
                                                  upda => 'Update',                                                   upda => 'Update',
             );              );
               my $possdomstr = $env{'course.'.$env{'request.course.id'}.'.internal.userdomains'};
               if ($possdomstr =~ /,/) {
                   my @possdoms = split(/,/,$possdomstr);
                   if ($env{'request.user_in_effect'} =~ /^$match_username:($match_domain)$/) {
                       $defdom = $1;
                   } elsif (grep(/^\Q$cdom\E$/,@possdoms)) {
                       $defdom = $cdom;
                   } elsif (&Apache::lonnet::domain($possdoms[0]) ne '') {
                       $defdom = $possdoms[0];
                   }
                   $domselector = &Apache::loncommon::select_dom_form($defdom,'vudom','','','',\@possdoms);
               } elsif (($possdomstr ne '') && (&Apache::lonnet::domain($possdomstr) ne '')) {
                   if ($env{'request.user_in_effect'} =~ /^$match_username:($match_domain)$/) {
                       $defdom = $1;
                   } else {
                       $defdom = $possdomstr;
                   }
               }
             if ($env{'request.user_in_effect'} =~ /^($match_username):($match_domain)$/) {              if ($env{'request.user_in_effect'} =~ /^($match_username):($match_domain)$/) {
                 ($vuname,$vudom) = ($1,$2);                  ($vuname,$vudom) = ($1,$2);
                 unless (&Apache::lonnet::is_advanced_user($vudom,$vuname)) {                  unless (&Apache::lonnet::is_advanced_user($vudom,$vuname)) {
Line 1103  sub innerregister { Line 1122  sub innerregister {
                 $change = 'on';                  $change = 'on';
                 $visibility = 'none';                  $visibility = 'none';
                 $leftvis = 'inline';                  $leftvis = 'inline';
                 $defdom = $cdom;                  if ($defdom eq '') {       
                       $defdom = $cdom;
                   }
             }              }
             my $sellink = &Apache::loncommon::selectstudent_link('userview','vuname','vudom','','','vuidentifier');              my $sellink = &Apache::loncommon::selectstudent_link('userview','vuname','vudom','','','vuidentifier');
             my $selscript=&Apache::loncommon::studentbrowser_javascript();              my $selscript=&Apache::loncommon::studentbrowser_javascript();
             my $shownsymb = &HTML::Entities::encode(&Apache::lonenc::check_encrypt($env{'request.symb'}),'<>&"');              my $shownsymb = &HTML::Entities::encode(&Apache::lonenc::check_encrypt($env{'request.symb'}),'<>&"');
             my $input = &mt('[_1]Username:[_2] or [_3]ID:[_4] | ',              my $input;
                             '<label><input type="radio" name="vuidentifier" value="uname" checked="checked" onclick="javascript:toggleIdentifier(this.form);" />',              my @items = (
                             '</label><input name="vuname" type="text" size="6" value="'.$vuname.'" id="LC_vuname" />',                           '<label><input type="radio" name="vuidentifier" value="uname" checked="checked" onclick="javascript:toggleIdentifier(this.form);" />',
                             '<label><input type="radio" name="vuidentifier" value="uid" onclick="javascript:toggleIdentifier(this.form);" />',                           '</label><input name="vuname" type="text" size="6" value="'.$vuname.'" id="LC_vuname" />',
                             '</label><input name="vid" type="hidden" size="6" value="'.$vid.'" id="LC_vid" />').                           '<label><input type="radio" name="vuidentifier" value="uid" onclick="javascript:toggleIdentifier(this.form);" />',
                         '<input name="vudom" type="hidden" value="'.$defdom.'" />'.                           '</label><input name="vid" type="hidden" size="6" value="'.$vid.'" id="LC_vid" />'
                         '<input name="LC_viewas" type="hidden" value="'.$viewas.'" />',                          );
                         '<input name="symb" type="hidden" value="'.$shownsymb.'" />';              if ($domselector) {
                   push(@items,$domselector);
                   $input = &mt('[_1]User:[_2] or [_3]ID:[_4] at [_5] | ',@items);
               } else {
                   $input = &mt('[_1]Username:[_2] or [_3]ID:[_4] | ',@items).
                            '<input name="vudom" type="hidden" value="'.$defdom.'" />';
               }
               $input .= '<input name="LC_viewas" type="hidden" value="'.$viewas.'" />',
                         '<input name="symb" type="hidden" value="'.$shownsymb.'" />';
             my $chooser = <<END;              my $chooser = <<END;
 $selscript  $selscript
 <a href="javascript:toggleViewAsUser('$change');" class="LC_menubuttons_link">  <a href="javascript:toggleViewAsUser('$change');" class="LC_menubuttons_link">

Removed from v.1.538  
changed lines
  Added in v.1.539


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