Diff for /loncom/interface/lonuserutils.pm between versions 1.142 and 1.149

version 1.142, 2012/10/02 18:08:12 version 1.149, 2013/02/19 17:30:35
Line 237  sub domain_roles_select { Line 237  sub domain_roles_select {
     # Role types      # Role types
     my @roletypes = ('domain','author','course','community');      my @roletypes = ('domain','author','course','community');
     my %lt = &role_type_names();      my %lt = &role_type_names();
       my $onchangefirst = "updateCols('showrole')";
       my $onchangesecond = "updateCols('showrole')";
     #      #
     # build up the menu information to be passed to      # build up the menu information to be passed to
     # &Apache::loncommon::linked_select_forms      # &Apache::loncommon::linked_select_forms
Line 283  sub domain_roles_select { Line 285  sub domain_roles_select {
     my $result = &Apache::loncommon::linked_select_forms      my $result = &Apache::loncommon::linked_select_forms
         ('studentform',(' 'x3).&mt('Role: '),$env{'form.roletype'},          ('studentform',(' 'x3).&mt('Role: '),$env{'form.roletype'},
          'roletype','showrole',\%select_menus,           'roletype','showrole',\%select_menus,
          ['domain','author','course','community']);           ['domain','author','course','community'],$onchangefirst,
            $onchangesecond);
     return $result;      return $result;
 }  }
   
Line 335  sub print_upload_manager_header { Line 338  sub print_upload_manager_header {
                                 $env{'request.role.domain'},$context,                                  $env{'request.role.domain'},$context,
                                 $groupslist,$crstype);                                  $groupslist,$crstype);
     my $checked=(($env{'form.noFirstLine'})?' checked="checked"':'');      my $checked=(($env{'form.noFirstLine'})?' checked="checked"':'');
     $r->print('<p>'      $r->print(
              .&mt('Total number of records found in file: [_1]'          '<h3>'.&mt('Identify fields in uploaded list')."</h3>\n".
                  ,'<b>'.$distotal.'</b>')          '<p class="LC_info">'.
              ."</p>\n");          &mt('Total number of records found in file: [_1]'
     $r->print('<div class="LC_left_float"><h3>'.             ,'<b>'.$distotal.'</b>').
               &mt('Identify fields in uploaded list')."</h3>\n");          "</p>\n"
     $r->print(&mt('Enter as many fields as you can.<br /> The system will inform you and bring you back to this page, <br /> if the data selected are insufficient to add users.')."<br />\n");      );
       if ($distotal == 0) {
           $r->print('<p class="LC_warning">'.&mt('None found').'</p>');
       }
       $r->print(
           '<p>'.
           &mt('Enter as many fields as you can.').'<br />'.
           &mt('The system will inform you and bring you back to this page,[_1]if the data selected are insufficient to add users.','<br />').
           "</p>\n"
       );
     $r->print(&hidden_input('action','upload').      $r->print(&hidden_input('action','upload').
               &hidden_input('state','got_file').                &hidden_input('state','got_file').
               &hidden_input('associate','').                &hidden_input('associate','').
Line 349  sub print_upload_manager_header { Line 361  sub print_upload_manager_header {
               &hidden_input('fileupload',$env{'form.fileupload'}).                &hidden_input('fileupload',$env{'form.fileupload'}).
               &hidden_input('upfiletype',$env{'form.upfiletype'}).                &hidden_input('upfiletype',$env{'form.upfiletype'}).
               &hidden_input('upfile_associate',$env{'form.upfile_associate'}));                &hidden_input('upfile_associate',$env{'form.upfile_associate'}));
     $r->print('<br /><label><input type="checkbox" name="noFirstLine"'.$checked.' />'.      $r->print(
               &mt('Ignore First Line').'</label><br />');          '<div class="LC_left_float">'.
     $r->print('<br /><input type="button" value="'.&mt('Reverse Association').'" '.          '<fieldset><legend>'.&mt('Functions').'</legend>'.
           '<label><input type="checkbox" name="noFirstLine"'.$checked.' />'.
                 &mt('Ignore First Line').'</label>'.
           ' <input type="button" value="'.&mt('Reverse Association').'" '.
               'name="Reverse Association" '.                'name="Reverse Association" '.
               'onclick="javascript:this.form.associate.value=\'Reverse Association\';submit(this.form);" />');                'onclick="javascript:this.form.associate.value=\'Reverse Association\';submit(this.form);" />'.
     $r->print("<br /><br />\n".          '</fieldset></div><br clear="all" />'
               '<script type="text/javascript" language="Javascript">'."\n".      );
               '// <![CDATA['."\n".      $r->print(
               $javascript."\n".$javascript_validations."\n".          '<script type="text/javascript" language="Javascript">'."\n".
               '// ]]>'."\n".          '// <![CDATA['."\n".
               '</script>');          $javascript."\n".$javascript_validations."\n".
           '// ]]>'."\n".
           '</script>'
       );
 }  }
   
 ###############################################################  ###############################################################
Line 603  sub upload_manager_javascript_forward_as Line 621  sub upload_manager_javascript_forward_as
             $numbuttons ++;              $numbuttons ++;
         }          }
         if (!$can_assign->{'int'}) {          if (!$can_assign->{'int'}) {
             my $warning = &mt('You may not specify an initial password for each user, as this is only available when new users use LON-CAPA internal authentication.\n').              my $warning = &mt('You may not specify an initial password for each user, as this is only available when new users use LON-CAPA internal authentication.').'\n'
                           &mt('Your current role does not have rights to create users with that authentication type.');                            &mt('Your current role does not have rights to create users with that authentication type.');
             $auth_update = <<"END";              $auth_update = <<"END";
    // Currently the initial password field is only supported for internal auth     // Currently the initial password field is only supported for internal auth
Line 1082  sub print_upload_manager_form { Line 1100  sub print_upload_manager_form {
             $keyfields=join(',',sort(keys(%sone)));              $keyfields=join(',',sort(keys(%sone)));
         }          }
     }      }
     $r->print('</div>');  
     &print_upload_manager_footer($r,$i,$keyfields,$defdom,$today,$halfyear,      &print_upload_manager_footer($r,$i,$keyfields,$defdom,$today,$halfyear,
                                  $context,$permission,$crstype);                                   $context,$permission,$crstype);
 }  }
Line 1513  sub print_userlist { Line 1530  sub print_userlist {
     }      }
     $r->print('</div><div class="LC_left_float">'.      $r->print('</div><div class="LC_left_float">'.
               &column_checkboxes($context,$mode,$formname).                &column_checkboxes($context,$mode,$formname).
               '</div><br clear="all" />');                '</div>');
     if ($env{'form.phase'} eq '') {      if ($env{'form.phase'} eq '') {
         $r->print(&list_submit_button(&mt('Display List of Users'))."\n".          $r->print('<br clear="all" />'.
                     &list_submit_button(&mt('Display List of Users'))."\n".
                   '<input type="hidden" name="phase" value="" /></form>');                    '<input type="hidden" name="phase" value="" /></form>');
         return;          return;
     }      }
     if (!(($context eq 'domain') &&       if (!(($context eq 'domain') && 
           (($env{'form.roletype'} eq 'course') || ($env{'form.roletype'} eq 'community')))) {            (($env{'form.roletype'} eq 'course') || ($env{'form.roletype'} eq 'community')))) {
         $r->print(&list_submit_button(&mt('Update Display'))."\n");          $r->print('<br clear="all" />'.
                     &list_submit_button(&mt('Update Display'))."\n");
     }      }
   
     my @cols = &infocolumns($context,$mode);        my @cols = &infocolumns($context,$mode);  
     if (!@cols) {      if (!@cols) {
          $r->print('<hr /><span class="LC_warning">'.           $r->print('<hr clear="all" /><span class="LC_warning">'.
                    &mt('No user information selected for display.').'</span>'.                     &mt('No user information selected for display.').'</span>'.
                    '<input type="hidden" name="phase" value="display" /></form>'."\n");                     '<input type="hidden" name="phase" value="display" /></form>'."\n");
          return;           return;
Line 1553  sub print_userlist { Line 1572  sub print_userlist {
             &Apache::lonhtmlcommon::course_selection($formname,$numcodes,              &Apache::lonhtmlcommon::course_selection($formname,$numcodes,
                             $codetitles,$idlist,$idlist_titles,$crstype,                              $codetitles,$idlist,$idlist_titles,$crstype,
                             \@standardnames);                              \@standardnames);
         $r->print('<p>'.&Apache::lonhtmlcommon::start_pick_box()."\n".          $r->print('<div class="LC_left_float">'.
                   &Apache::lonhtmlcommon::start_pick_box()."\n".                    '<fieldset><legend>'.$title.'</legend>'."\n".
                   &Apache::lonhtmlcommon::row_title($title,'LC_oddrow_value')."\n".  
                   $courseform."\n".                    $courseform."\n".
                   &Apache::lonhtmlcommon::row_closure(1).                    '</fieldset></div><br clear="all" />'.
                   &Apache::lonhtmlcommon::end_pick_box().'</p>'.  
                   '<p><input type="hidden" name="origroletype" value="'.$env{'form.roletype'}.'" />'.                    '<p><input type="hidden" name="origroletype" value="'.$env{'form.roletype'}.'" />'.
                   &list_submit_button(&mt('Update Display')).                    &list_submit_button(&mt('Update Display')).
                   "\n".'</p><span class="LC_warning">'.$warning.'</span>'."\n");                    "\n".'</p><span class="LC_warning">'.$warning.'</span>'."\n");
Line 1568  sub print_userlist { Line 1585  sub print_userlist {
             $clearcoursepick = 1;              $clearcoursepick = 1;
         }          }
         if (($env{'form.coursepick'}) && (!$clearcoursepick)) {          if (($env{'form.coursepick'}) && (!$clearcoursepick)) {
             $r->print('<hr />'.&mt('Searching').' ...<br />&nbsp;<br />');              $r->print('<hr />'.&mt('Searching ...').'<br />&nbsp;<br />');
         }          }
     } else {      } else {
         $r->print('<hr /><div id="searching">'.&mt('Searching').' ...</div>');          $r->print('<hr clear="all" /><div id="searching">'.&mt('Searching ...').'</div>');
     }      }
     $r->rflush();      $r->rflush();
     if ($context eq 'course') {      if ($context eq 'course') {
Line 1707  sub print_userlist { Line 1724  sub print_userlist {
         } elsif ($context eq 'course') {          } elsif ($context eq 'course') {
             $r->print(&mt('There are no course users to display.')."\n");              $r->print(&mt('There are no course users to display.')."\n");
         }          }
         $r->print('<p class="LC_info"'.$msg.'</p>'."\n") if $msg;          $r->print('<p class="LC_info">'.$msg.'</p>'."\n") if $msg;
     } else {      } else {
         # Print out the available choices          # Print out the available choices
         my $usercount;          my $usercount;
Line 1868  sub get_cols_array { Line 1885  sub get_cols_array {
             push(@cols,'section');              push(@cols,'section');
         }          }
         push(@cols,('start','end','role'));          push(@cols,('start','end','role'));
         if ($context eq 'domain') {  
             push (@cols,'extent');  
         }  
         unless (($mode eq 'autoenroll') && ($env{'form.Status'} ne 'Any')) {          unless (($mode eq 'autoenroll') && ($env{'form.Status'} ne 'Any')) {
             push(@cols,'status');              push(@cols,'status');
         }          }
Line 1885  sub get_cols_array { Line 1899  sub get_cols_array {
             ($env{'course.'.$env{'request.course.id'}.'.internal.showphoto'})) {              ($env{'course.'.$env{'request.course.id'}.'.internal.showphoto'})) {
             push(@cols,'photos');              push(@cols,'photos');
         }          }
           if ($context eq 'domain') {
               push (@cols,'extent');
           }
     }      }
     return @cols;      return @cols;
 }  }
Line 1899  sub column_checkboxes { Line 1916  sub column_checkboxes {
         if ($context eq 'course') {          if ($context eq 'course') {
             $disabledchk{'role'} = 1;              $disabledchk{'role'} = 1;
             $unchecked{'photo'} = 1;              $unchecked{'photo'} = 1;
               $unchecked{'clicker'} = 1;
           } elsif ($context eq 'domain') { 
               $unchecked{'extent'} = 1; 
         }          }
         $unchecked{'clicker'} = 1;  
         $unchecked{'start'} = 1;          $unchecked{'start'} = 1;
         $unchecked{'end'} = 1;          $unchecked{'end'} = 1;
     } else {      } else {
         if ($env{'form.Status'} ne 'Any') {          if ($env{'form.Status'} ne 'Any') {
             $disabledchk{'status'} = 1;              $disabledchk{'status'} = 1;
         }          }
         if ($env{'form.showrole'} ne 'Any') {          if (($env{'form.showrole'} ne 'Any') && ($env{'form.showrole'} ne 'cr')) {
             $disabledchk{'role'} = 1;               $disabledchk{'role'} = 1;
           }
           if ($context eq 'domain') {
               if (($env{'form.roletype'} eq 'course') || 
                   ($env{'form.roletype'} eq 'community')) {
                   $disabledchk{'status'} = 1;
               } elsif ($env{'form.roletype'} eq 'domain') {
                   $disabledchk{'extent'} = 1; 
               }
         }          }
     }      }
     my $numposs = scalar(@cols);      my $numposs = scalar(@cols);
     my $numinrow = 8;      my $numinrow = 7;
     my %lt = &get_column_names($context);      my %lt = &get_column_names($context);
     my $output = '<fieldset><legend>'.&mt('Information to show').'</legend>'."\n".'<span class="LC_nobreak">'.      my $output = '<fieldset><legend>'.&mt('Information to show').'</legend>'."\n".'<span class="LC_nobreak">'.
                  '<input type="button" onclick="javascript:checkAll(document.'.$formname.'.showcol);" value="'.&mt('check all').'" />'.                   '<input type="button" onclick="javascript:checkAll(document.'.$formname.'.showcol);" value="'.&mt('check all').'" />'.
Line 1952  sub column_checkboxes { Line 1979  sub column_checkboxes {
         } else {          } else {
             $output .= '<td>';              $output .= '<td>';
         }          }
         $output .= '<label><input id="showcol'.$cols[$i].'" type="checkbox" name="showcol" value="'.$cols[$i].'"'.$checked.' />'.          my $style;
                    $lt{$cols[$i]}.'</label></td>';          if ($cols[$i] eq 'extent') {
               if (($env{'form.roletype'} eq 'domain') || ($env{'form.roletype'} eq '')) {
                   $style = ' style="display: none;"';
               } 
           } 
           $output .= '<span id="show'.$cols[$i].'"'.$style.'><label>'.
                      '<input id="showcol'.$cols[$i].'" type="checkbox" name="showcol" value="'.$cols[$i].'"'.$checked.' /><span id="showcoltext'.$cols[$i].'">'.
                      $lt{$cols[$i]}.'</span>'.
                      '</label></span></td>';
     }      }
     $output .= '</tr></table></fieldset>';      $output .= '</tr></table></fieldset>';
     return $output;      return $output;
Line 1988  sub get_column_names { Line 2022  sub get_column_names {
         'clicker'    => "clicker-ID",          'clicker'    => "clicker-ID",
     );      );
     if ($context eq 'domain' && $env{'form.roletype'} eq 'course') {      if ($context eq 'domain' && $env{'form.roletype'} eq 'course') {
         $lt{'extent'} = &mt('Course(s): description, section(s), status');          $lt{'extent'} = &mt('course(s): description, section(s), status');
     } elsif ($context eq 'domain' && $env{'form.roletype'} eq 'community') {      } elsif ($context eq 'domain' && $env{'form.roletype'} eq 'community') {
         $lt{'extent'} = &mt('Communities: description, section(s), status');          $lt{'extent'} = &mt('communities: description, section(s), status');
     } elsif ($context eq 'author') {      } elsif (($context eq 'author') || 
         $lt{'extent'} = &mt('Author');               ($context eq 'domain' && $env{'form.roletype'} eq 'author')) {
           $lt{'extent'} = &mt('author');
     }      }
     return %lt;      return %lt;
 }  }
Line 2579  END Line 2614  END
             if ($env{'form.userwin'}) {              if ($env{'form.userwin'}) {
                 $checkwin = ' checked="checked"';                  $checkwin = ' checked="checked"';
             }              }
             $output .= '</td><td valign="top"  style="border-left: 1px solid;"><span class="LC_nobreak"><input type="checkbox" name="userwin" value="1"'.$checkwin.' />'.$lt{'owin'}.'</span></td></tr></table></fieldset></div>';              $output .=
                   '</td><td valign="top"  style="border-left: 1px solid;">'
                  .'<span class="LC_nobreak"><label>'
                  .'<input type="checkbox" name="userwin" value="1"'.$checkwin.' />'.$lt{'owin'}
                  .'</label></span></td></tr></table></fieldset></div>';
         }          }
         $output .= "\n".'<br clear="all" />'."\n".          $output .= "\n".'<br clear="all" />'."\n".
                   &Apache::loncommon::start_data_table().                    &Apache::loncommon::start_data_table().
Line 2919  END Line 2958  END
                         } else {                          } else {
                              $r->print('<td>&nbsp;</td>'."\n");                               $r->print('<td>&nbsp;</td>'."\n");
                         }                           } 
                     }                       }
                 } else {                  } else {
                     $r->print('<td>'.$in{$item}.'</td>'."\n");                      $r->print('<td>'.$in{$item}.'</td>'."\n");
                 }                  }
Line 3413  sub section_picker { Line 3452  sub section_picker {
                    '<input type="hidden" name="sections" value="" />'."\n".                     '<input type="hidden" name="sections" value="" />'."\n".
                    '</td></tr></table>'."\n";                     '</td></tr></table>'."\n";
     } else {      } else {
        $secbox .= '<input type="hidden" name="sections" value="'.          $secbox .= '<input type="hidden" name="sections" value="'.
                    $env{'request.course.sec'}.'" />'.                     $env{'request.course.sec'}.'" />'.
                    $env{'request.course.sec'};                     $env{'request.course.sec'};
     }      }
Line 3666  END Line 3705  END
         }          }
     }      }
     if (!$studentcount) {      if (!$studentcount) {
          my $msg = '';
         if ($crstype eq 'Community') {          if ($crstype eq 'Community') {
             $r->print(&mt('There are no members to drop.'));              $msg = &mt('There are no members to drop.');
         } else {          } else {
             $r->print(&mt('There are no students to drop.'));              $msg = &mt('There are no students to drop.');
         }          }
           $r->print('<p class="LC_info">'.$msg.'</p>');
         return;          return;
     }      }
     my ($classgroups) = &Apache::loncoursedata::get_group_memberships(      my ($classgroups) = &Apache::loncoursedata::get_group_memberships(
Line 3816  sub print_first_users_upload_form { Line 3857  sub print_first_users_upload_form {
     $str .= '<input type="hidden" name="action" value="upload" />';      $str .= '<input type="hidden" name="action" value="upload" />';
     $str .= '<input type="hidden" name="state"  value="got_file" />';      $str .= '<input type="hidden" name="state"  value="got_file" />';
   
       $str .= &Apache::grades::checkforfile_js();
   
     $str .= '<h2>'.&mt('Upload a file containing information about users').'</h2>'."\n";      $str .= '<h2>'.&mt('Upload a file containing information about users').'</h2>'."\n";
   
     # Excel and CSV Help      # Excel and CSV Help
     $str .= '<div class="LC_left_float">'      $str .= '<div class="LC_columnSection">'
            .&Apache::loncommon::help_open_topic("Course_Create_Class_List",             .&Apache::loncommon::help_open_topic("Course_Create_Class_List",
                 &mt("How do I create a users list from a spreadsheet"))                  &mt("How do I create a users list from a spreadsheet"))
            .'</div><div class="LC_left_float">'."\n"             .' '.&Apache::loncommon::help_open_topic("Course_Convert_To_CSV",
            .&Apache::loncommon::help_open_topic("Course_Convert_To_CSV",  
                 &mt("How do I create a CSV file from a spreadsheet"))                  &mt("How do I create a CSV file from a spreadsheet"))
            .'</div><br clear="all" />'."\n";             ."</div>\n";
     $str .= &Apache::lonhtmlcommon::start_pick_box()      $str .= &Apache::lonhtmlcommon::start_pick_box()
            .&Apache::lonhtmlcommon::row_title(&mt('File'));             .&Apache::lonhtmlcommon::row_title(&mt('File'));
     if (&Apache::lonlocal::current_language() ne 'en') {      if (&Apache::lonlocal::current_language() ne 'en') {
Line 3846  sub print_first_users_upload_form { Line 3888  sub print_first_users_upload_form {
            .&Apache::lonhtmlcommon::end_pick_box();             .&Apache::lonhtmlcommon::end_pick_box();
   
     $str .= '<p>'      $str .= '<p>'
            .'<input type="submit" name="fileupload" value="'.&mt('Next').'" />'             .'<input type="submit" name="fileupload" value="'.&mt('Next').'"'
              .' onclick="javascript:checkUpload(this.form);" />'
            .'</p>';             .'</p>';
   
     $r->print($str);      $r->print($str);
Line 3969  sub upfile_drop_add { Line 4012  sub upfile_drop_add {
         } elsif ($setting eq 'course') {          } elsif ($setting eq 'course') {
             $defaultrole = $env{'form.courserole'};              $defaultrole = $env{'form.courserole'};
             $defaultsec = $env{'form.sections'};              $defaultsec = $env{'form.sections'};
         }            }
     } elsif ($context eq 'author') {      } elsif ($context eq 'author') {
         $defaultrole = $env{'form.defaultrole'};          $defaultrole = $env{'form.defaultrole'};
     } elsif ($context eq 'course') {      } elsif ($context eq 'course') {
Line 4129  sub upfile_drop_add { Line 4172  sub upfile_drop_add {
                     if ($entries{$fields{'domain'}}                       if ($entries{$fields{'domain'}} 
                         ne &LONCAPA::clean_domain($entries{$fields{'domain'}})) {                          ne &LONCAPA::clean_domain($entries{$fields{'domain'}})) {
                         $r->print('<br />'. '<b>'.$entries{$fields{'domain'}}.                          $r->print('<br />'. '<b>'.$entries{$fields{'domain'}}.
                                   '</b>: '.&mt('Unacceptable domain for user [_2] [_3] [_4] [_5]',$fname,$mname,$lname,$gen));                                    '</b>: '.&mt('Unacceptable domain for user [_1] [_2] [_3] [_4]',$fname,$mname,$lname,$gen));
                         next;                          next;
                     }                      }
                     my $username = $entries{$fields{'username'}};                      my $username = $entries{$fields{'username'}};
Line 4461  sub upfile_drop_add { Line 4504  sub upfile_drop_add {
             if (! defined($classlist)) {              if (! defined($classlist)) {
                 $r->print('<form name="studentform" method="post" action="/adm/createuser" />'.                  $r->print('<form name="studentform" method="post" action="/adm/createuser" />'.
                           '<input type="hidden" name="action" value="'.$env{'form.action'}.'" />'.                            '<input type="hidden" name="action" value="'.$env{'form.action'}.'" />'.
                           &mt('There are no students with current/future access to the course.').                            '<p class="LC_info">'.&mt('There are no students with current/future access to the course.').'</p>'.
                           '</form>'."\n");                            '</form>'."\n");
             } elsif (ref($classlist) eq 'HASH') {              } elsif (ref($classlist) eq 'HASH') {
                 # Remove the students we just added from the list of students.                  # Remove the students we just added from the list of students.
Line 4585  sub print_drop_menu { Line 4628  sub print_drop_menu {
               '<form name="studentform" method="post">'."\n");                '<form name="studentform" method="post">'."\n");
     my $classlist = &Apache::loncoursedata::get_classlist();      my $classlist = &Apache::loncoursedata::get_classlist();
     if (! defined($classlist)) {      if (! defined($classlist)) {
           my $msg = '';
         if ($crstype eq 'Community') {          if ($crstype eq 'Community') {
             $r->print(&mt('There are no members currently enrolled.')."\n");              $msg = &mt('There are no members currently enrolled.');
         } else {          } else {
             $r->print(&mt('There are no students currently enrolled.')."\n");              $msg = &mt('There are no students currently enrolled.');
         }          }
           $r->print('<p class="LC_info">'.$msg."</p>\n");
     } else {      } else {
         &show_drop_list($r,$classlist,'nosort',$permission,$crstype);          &show_drop_list($r,$classlist,'nosort',$permission,$crstype);
     }      }
Line 4922  sub update_user_list { Line 4967  sub update_user_list {
             }              }
         }          }
     }      }
     $r->print('<p><b>'.&mt("$result_text{'ok'}{$choice} for [quant,_1,user role,user roles,no user roles].",$count).'</b></p>');      $r->print('<p><b>'.&mt("$result_text{'ok'}{$choice} [quant,_1,user role,user roles,no user roles].",$count).'</b></p>');
     if ($count > 0) {      if ($count > 0) {
         if ($choice eq 'revoke' || $choice eq 'drop') {          if ($choice eq 'revoke' || $choice eq 'drop') {
             $r->print('<p>'.&mt('Re-enabling will re-activate data for the role.').'</p>');              $r->print('<p>'.&mt('Re-enabling will re-activate data for the role.').'</p>');
Line 4939  sub update_user_list { Line 4984  sub update_user_list {
     if ($choice eq 'drop') {      if ($choice eq 'drop') {
         $linktext = &mt('Display current class roster');          $linktext = &mt('Display current class roster');
     }      }
     $r->print('<a href="javascript:document.studentform.submit()">'.$linktext.'</a></form>'."\n");      $r->print(
           &Apache::lonhtmlcommon::actionbox(
               ['<a href="javascript:document.studentform.submit()">'.$linktext.'</a>'])
          .'</form>'."\n");
 }  }
   
 sub dates_feedback {  sub dates_feedback {
Line 4947  sub dates_feedback { Line 4995  sub dates_feedback {
     my $dates;      my $dates;
     if ($start < $now) {      if ($start < $now) {
         if ($end == 0) {          if ($end == 0) {
             $dates .= &mt('role(s) active now; no end date');              $dates = &mt('role(s) active now; no end date');
         } elsif ($end > $now) {          } elsif ($end > $now) {
             $dates = &mt('role(s) active now; ends [_1].',&Apache::lonlocal::locallocaltime($end));              $dates = &mt('role(s) active now; ends [_1].',&Apache::lonlocal::locallocaltime($end));
         } else {          } else {
Line 5144  sub setsections_javascript { Line 5192  sub setsections_javascript {
                     acor => 'A coordinator role will be added with access to all sections',                      acor => 'A coordinator role will be added with access to all sections',
                     inea => 'In each course, each user may only have one student role at a time.',                      inea => 'In each course, each user may only have one student role at a time.',
                     inco => 'In each community, each user may only have one member role at a time.',                      inco => 'In each community, each user may only have one member role at a time.',
                     youh => 'You had selected ',                      youh => 'You had selected',
                     secs => 'sections.',                      secs => 'sections.',
                     plmo => 'Please modify your selections so they include no more than one section.',                      plmo => 'Please modify your selections so they include no more than one section.',
                     mayn => 'may not be used as the name for a section, as it is a reserved word.',                      mayn => 'may not be used as the name for a section, as it is a reserved word.',

Removed from v.1.142  
changed lines
  Added in v.1.149


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