Diff for /loncom/interface/loncreateuser.pm between versions 1.480 and 1.484

version 1.480, 2024/05/21 02:57:15 version 1.484, 2025/02/26 15:39:20
Line 375  sub build_tools_display { Line 375  sub build_tools_display {
                 if ($userenv{'tools.'.$item} ne '') {                  if ($userenv{'tools.'.$item} ne '') {
                     $cust_on = ' checked="checked" ';                      $cust_on = ' checked="checked" ';
                     $cust_off = '';                      $cust_off = '';
                       $curr_access = $userenv{'tools.'.$item};
                   } else {
                       $curr_access =
                           &Apache::lonnet::usertools_access($ccuname,$ccdomain,$item,'reload',
                                                             undef,\%userenv,'',
                                                             {'is_adv' => $isadv});
                 }                  }
             }              }
         } elsif ($userenv{$context.'.'.$item} ne '') {          } elsif ($userenv{$context.'.'.$item} ne '') {
Line 1525  sub print_user_modification_page { Line 1531  sub print_user_modification_page {
                 'bread_crumbs_component' => 'User Management'};                  'bread_crumbs_component' => 'User Management'};
     if ($env{'form.popup'}) {      if ($env{'form.popup'}) {
         $args->{'no_nav_bar'} = 1;          $args->{'no_nav_bar'} = 1;
           $args->{'add_modal'} = 1;
     }      }
     if (($context eq 'domain') && ($env{'request.role.domain'} eq $ccdomain)) {      if (($context eq 'domain') && ($env{'request.role.domain'} eq $ccdomain)) {
         my @toggles;          my @toggles;
Line 2846  sub personal_data_display { Line 2853  sub personal_data_display {
     }      }
   
     my $genhelp=&Apache::loncommon::help_open_topic('Generation');      my $genhelp=&Apache::loncommon::help_open_topic('Generation');
     $output = '<h3>'.$lt{'pd'}.'</h3>'.      $output = '<h3 class="LC_heading_3">'.$lt{'pd'}.'</h3>'.
               &Apache::lonhtmlcommon::start_pick_box();                &Apache::lonhtmlcommon::start_pick_box();
     if (($context eq 'selfcreate') && ($newuser eq 'email')) {      if (($context eq 'selfcreate') && ($newuser eq 'email')) {
         my $size = 25;          my $size = 25;
Line 2862  sub personal_data_display { Line 2869  sub personal_data_display {
                 undef($condition);                  undef($condition);
             }              }
         }          }
         $output .= &Apache::lonhtmlcommon::row_title($lt{'email'}.'<b>*</b>',undef,          $output .= &Apache::lonhtmlcommon::row_title('<label for="uname_selfcreate">'.$lt{'email'}.'</label><b>*</b>',undef,
                                                      'LC_oddrow_value')."\n".                                                       'LC_oddrow_value')."\n".
                    '<input type="text" name="uname" size="'.$size.'" value="" autocomplete="off" />';                     '<input type="text" name="uname" id="uname_selfcreate" size="'.$size.'" value="" autocomplete="off" />';
         if ($condition) {          if ($condition) {
             $output .= $condition;              $output .= $condition;
         } elsif ($excluded) {          } elsif ($excluded) {
Line 2883  sub personal_data_display { Line 2890  sub personal_data_display {
         }          }
         $rowcount ++;          $rowcount ++;
         $output .= &Apache::lonhtmlcommon::row_closure(1);          $output .= &Apache::lonhtmlcommon::row_closure(1);
         my $upassone = '<input type="password" name="upass'.$now.'" size="20" autocomplete="new-password" />';          my $upassone = '<input type="password" name="upass'.$now.'" id="upass_selfcreate" size="20" autocomplete="new-password" />';
         my $upasstwo = '<input type="password" name="upasscheck'.$now.'" size="20" autocomplete="new-password" />';          my $upasstwo = '<input type="password" name="upasscheck'.$now.'" id="upasscheck_selfcreate" size="20" autocomplete="new-password" />';
         $output .= &Apache::lonhtmlcommon::row_title(&mt('Password').'<b>*</b>',          $output .= &Apache::lonhtmlcommon::row_title('<label for="upass_selfcreate">'.&mt('Password').'</label><b>*</b>',
                                                     'LC_pick_box_title',                                                      'LC_pick_box_title',
                                                     'LC_oddrow_value')."\n".                                                      'LC_oddrow_value')."\n".
                    $upassone."\n".                     $upassone."\n".
                    &Apache::lonhtmlcommon::row_closure(1)."\n".                     &Apache::lonhtmlcommon::row_closure(1)."\n".
                    &Apache::lonhtmlcommon::row_title(&mt('Confirm password').'<b>*</b>',                     &Apache::lonhtmlcommon::row_title('<label for="upasscheck_selfcreate">'.&mt('Confirm password').'</label><b>*</b>',
                                                      'LC_pick_box_title',                                                       'LC_pick_box_title',
                                                      'LC_oddrow_value')."\n".                                                       'LC_oddrow_value')."\n".
                    $upasstwo.                     $upasstwo.
Line 2904  sub personal_data_display { Line 2911  sub personal_data_display {
                        '<label><input type="radio" name="emailused" value="0" onclick="'.$onclick.'" />'.                         '<label><input type="radio" name="emailused" value="0" onclick="'.$onclick.'" />'.
                        &mt('No').'</label></span>'."\n".                         &mt('No').'</label></span>'."\n".
                        '<div id="selfcreateusername" style="display: none; font-size: smaller">'.                         '<div id="selfcreateusername" style="display: none; font-size: smaller">'.
                        '<br /><span class="LC_nobreak">'.&mt('Preferred username').                         '<br /><span class="LC_nobreak"><label>'.&mt('Preferred username').
                        '&nbsp;<input type="text" name="username" value="" size="20" autocomplete="off"/>'.                         '&nbsp;<input type="text" name="username" value="" size="20" autocomplete="off"/>'.
                        '</span></div>'."\n".&Apache::lonhtmlcommon::row_closure(1);                         '</label></span></div>'."\n".&Apache::lonhtmlcommon::row_closure(1);
             $rowcount ++;              $rowcount ++;
         }          }
     }      }
       my %shownfields;
       if ($env{'request.role.domain'} ne $ccdomain) {
           my %shownfields_by_type =
               &Apache::lonuserutils::get_othdom_shownfields($ccdomain,\@userinfo);
           my @types = split(/:/,$userenv{'inststatus'});
           if (@types == 0) {
               @types = ('default');
           }
           foreach my $type (@types) {
               if (ref($shownfields_by_type{$type}) eq 'HASH') {
                   foreach my $field (keys(%{$shownfields_by_type{$type}})) {
                       if ($shownfields_by_type{$type}{$field}) {
                           $shownfields{$field} = 1;
                       }
                   }
               }
           }
       }
     foreach my $item (@userinfo) {      foreach my $item (@userinfo) {
         my $rowtitle = $lt{$item};          my $rowtitle = $lt{$item};
         my $hiderow = 0;          my $hiderow = 0;
         if ($item eq 'generation') {          if ($item eq 'generation') {
             $rowtitle = $genhelp.$rowtitle;              $rowtitle = $genhelp.$rowtitle;
         }          }
         my $row = &Apache::lonhtmlcommon::row_title($rowtitle,undef,'LC_oddrow_value')."\n";          my $row = &Apache::lonhtmlcommon::row_title('<label for="userinfo_'.$item.'">'.$rowtitle.'</label>',undef,'LC_oddrow_value')."\n";
         if ($newuser) {          if ($newuser) {
             if (ref($inst_results) eq 'HASH') {              if (ref($inst_results) eq 'HASH') {
                 if ($inst_results->{$item} ne '') {                  if ($inst_results->{$item} ne '') {
                     $row .= '<input type="hidden" name="c'.$item.'" value="'.$inst_results->{$item}.'" />'.$inst_results->{$item};                      $row .= '<input type="hidden" name="c'.$item.'" id="userinfo_'.$item.'" value="'.$inst_results->{$item}.'" />'.$inst_results->{$item};
                 } else {                  } else {
                     if ($context eq 'selfcreate') {                      if ($context eq 'selfcreate') {
                         if ($canmodify{$item}) {                          if ($canmodify{$item}) {
                             $row .= '<input type="text" name="c'.$item.'" size="'.$textboxsize{$item}.'" value="" autocomplete="off" />';                              $row .= '<input type="text" name="c'.$item.'" id="userinfo_'.$item.'" size="'.$textboxsize{$item}.'" value="" autocomplete="off" />';
                             $editable ++;                              $editable ++;
                         } else {                          } else {
                             $hiderow = 1;                              $hiderow = 1;
                         }                          }
                     } else {                      } else {
                         $row .= '<input type="text" name="c'.$item.'" size="'.$textboxsize{$item}.'" value=""'.$disabled.' />';                          $row .= '<input type="text" name="c'.$item.'" id="userinfo_'.$item.'" size="'.$textboxsize{$item}.'" value=""'.$disabled.' />';
                     }                      }
                 }                  }
             } else {              } else {
                 if ($context eq 'selfcreate') {                  if ($context eq 'selfcreate') {
                     if ($canmodify{$item}) {                      if ($canmodify{$item}) {
                         if ($newuser eq 'email') {                          if ($newuser eq 'email') {
                             $row .= '<input type="text" name="'.$item.'" size="'.$textboxsize{$item}.'" value="" autocomplete="off" />';                              $row .= '<input type="text" name="'.$item.'" id="userinfo_'.$item.'" size="'.$textboxsize{$item}.'" value="" autocomplete="off" />';
                         } else {                          } else {
                             $row .= '<input type="text" name="c'.$item.'" size="'.$textboxsize{$item}.'" value="" autocomplete="off" />';                              $row .= '<input type="text" name="c'.$item.'" id="userinfo_'.$item.'" size="'.$textboxsize{$item}.'" value="" autocomplete="off" />';
                         }                          }
                         $editable ++;                          $editable ++;
                     } else {                      } else {
                         $hiderow = 1;                          $hiderow = 1;
                     }                      }
                 } else {                  } else {
                     $row .= '<input type="text" name="c'.$item.'" size="'.$textboxsize{$item}.'" value=""'.$disabled.' />';                      $row .= '<input type="text" name="c'.$item.'" id="userinfo_'.$item.'" size="'.$textboxsize{$item}.'" value=""'.$disabled.' />';
                 }                  }
             }              }
         } else {          } else {
             if ($canmodify{$item}) {              if ($canmodify{$item}) {
                 $row .= '<input type="text" name="c'.$item.'" size="'.$textboxsize{$item}.'" value="'.$userenv{$item}.'" />';                  $row .= '<input type="text" name="c'.$item.'" id="userinfo_'.$item.'" size="'.$textboxsize{$item}.'" value="'.$userenv{$item}.'" />';
                 if (($item eq 'id') && (!$newuser)) {                  if (($item eq 'id') && (!$newuser)) {
                     $row .= '<br />'.&Apache::lonuserutils::forceid_change($context);                      $row .= '<br />'.&Apache::lonuserutils::forceid_change($context);
                 }                  }
             } else {              } else {
                 $row .= $userenv{$item};                  if ($env{'request.role.domain'} ne $ccdomain) {
                       if ($shownfields{$item}) {
                           $row .= $userenv{$item};
                       } else {
                           $row .= &mt('not shown');
                       }
                   } else {
                       $row .= $userenv{$item};
                   }
             }              }
         }          }
         $row .= &Apache::lonhtmlcommon::row_closure(1);          $row .= &Apache::lonhtmlcommon::row_closure(1);
Line 3012  sub personal_data_display { Line 3045  sub personal_data_display {
         }          }
         if ($showsubmit) {          if ($showsubmit) {
             my $submit_text = &mt('Create account');              my $submit_text = &mt('Create account');
             $output .= &Apache::lonhtmlcommon::row_title()."\n".              $output .= &Apache::lonhtmlcommon::row_title('<span class="LC_visually_hidden">'.
                                                            &mt('Submit').'</span>','','','',1)."\n".
                        '<br /><input type="submit" name="createaccount" value="'.                         '<br /><input type="submit" name="createaccount" value="'.
                        $submit_text.'" />';                         $submit_text.'" />';
             if ($usertype ne '') {              if ($usertype ne '') {
Line 6486  sub handler { Line 6520  sub handler {
             $r->internal_redirect('/adm/viewcoauthors');              $r->internal_redirect('/adm/viewcoauthors');
             return OK;              return OK;
         }          }
       } elsif (($env{'form.action'} eq 'setenv') && ($context eq 'author')) {
           my ($role,$audom,$auname,$canview,$canedit) =
               &Apache::lonviewcoauthors::get_allowable();
           push(@{$brcrum},
                    {href => '/adm/createuser?action=calist',
                     text => 'Coauthor-viewable list',
                     help => 'Author_List_Coauthors'});
           my $args = { 'bread_crumbs' => $brcrum };
           $r->print(&Apache::loncommon::start_page('Coauthor-viewable list',undef,
                                                    $args));
           my %viewsettings =
               &Apache::lonviewcoauthors::retrieve_view_settings($auname,$audom,$role);
           if ($viewsettings{'show'} eq 'none') {
               $r->print('<h3>'.&mt('Coauthor-viewable listing').'</h3>'.
                         '<p class="LC_info">'.
                         &mt('Listing of co-authors not enabled for this Authoring Space').
                         '</p>');
           } else {
               &Apache::lonviewcoauthors::print_coauthors($r,$auname,$audom,$role,
                                                          '/adm/createuser',\%viewsettings);
           }
     } else {      } else {
         $bread_crumbs_component = 'User Management';          $bread_crumbs_component = 'User Management';
         $args = { bread_crumbs           => $brcrum,          $args = { bread_crumbs           => $brcrum,
Line 6990  sub print_main_menu { Line 7045  sub print_main_menu {
             );              );
         }          }
     } elsif ($context eq 'author') {      } elsif ($context eq 'author') {
           my $coauthorlist;
           if ($env{'request.role'} =~ m{^(?:ca|aa)\./($match_domain)/($match_username)$}) {
               if ($env{'environment.internal.coauthorlist./'.$1.'/'.$2}) {
                   $coauthorlist = 1;
               }
           } elsif ($env{'request.role'} eq "au./$env{'user.domain'}/") {
               if ($env{'environment.coauthorlist'}) {
                   $coauthorlist = 1;
               }
           }
           if ($coauthorlist) {
               push(@{ $menu[1]->{items} },
                   {
                    linktext => 'Co-author-viewable list',
                    icon => 'clst.png',
                    #help => 'Coauthor_Listing',
                    url => '/adm/createuser?action=calist&forceedit=0',
                    permission => $permission->{'cusr'},
                    linktitle => 'Co-author-viewable listing',
               });
           }
         push(@{ $menu[2]->{items} }, #Category: Administration          push(@{ $menu[2]->{items} }, #Category: Administration
             {              {
              linktext => 'Change Log',               linktext => 'Change Log',

Removed from v.1.480  
changed lines
  Added in v.1.484


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