Diff for /loncom/interface/loncoursegroups.pm between versions 1.80.2.4 and 1.81

version 1.80.2.4, 2008/12/24 07:36:39 version 1.81, 2008/12/03 21:59:37
Line 76  sub handler { Line 76  sub handler {
   
     my %functions = (      my %functions = (
                       email => 'E-mail',                        email => 'E-mail',
                       discussion => 'Discussion boards',                        discussion => 'Discussion Boards',
                       chat => 'Chat',                        chat => 'Chat',
                       files => 'File repository',                        files => 'File Repository',
                       roster => 'Membership roster',                        roster => 'Membership Roster',
                       homepage => $ucgpterm.' home page',                        homepage => $ucgpterm.' home page',
                     );                      );
   
Line 349  END Line 349  END
       '<td align="right">'.$quota.'</td>'.        '<td align="right">'.$quota.'</td>'.
       '<td align="right">'.$totalmembers.'</td>'.        '<td align="right">'.$totalmembers.'</td>'.
       '<td align="right">'.        '<td align="right">'.
                                   '<span class="LC_nobreak">'.&mt('Files: [_1]',$totalfiles).'</span><br />'.                                    '<div class="LC_nobreak">'.&mt('Files: [_1]',$totalfiles).'</div>'.
                                   '<span class="LC_nobreak">'.&mt('Folders: [_1]',$totaldirs).'</span>'.                                    '<div class="LC_nobreak">'.&mt('Folders: [_1]',$totaldirs).'</div>'.
                                   '</td>'.                                    '</td>'.
       '<td align="right">'.$boards.'</td>'.        '<td align="right">'.$boards.'</td>'.
       '<td align="right">'.$diskuse.'</td>'.        '<td align="right">'.$diskuse.'</td>'.
Line 1259  sub reenable_folder { Line 1259  sub reenable_folder {
   
 sub modify_folders {  sub modify_folders {
     my ($cdom,$cnum,$groupname) = @_;      my ($cdom,$cnum,$groupname) = @_;
     my ($outcome,$groupmap,$groupmapres,$map,$id,$src);      my $outcome;
     my $navmap = Apache::lonnavmaps::navmap->new();      my $navmap = Apache::lonnavmaps::navmap->new();
     if (!defined($navmap)) {      my $groupmap = '/uploaded/'.$cdom.'/'.$cnum.'/'.'group_folder_'.
         $outcome = '<div class="LC_error">'.  
                    &mt('Error reading course contents.').' '.  
                    &mt('You need to re-initialize the course.').  
                    '</div>';  
         return $outcome;  
     }  
     $groupmap = '/uploaded/'.$cdom.'/'.$cnum.'/'.'group_folder_'.  
                    $groupname.'.sequence';                     $groupname.'.sequence';
     $groupmapres = $navmap->getResourceByUrl($groupmap);      my $groupmapres = $navmap->getResourceByUrl($groupmap);
       my ($map,$id,$src);
     if ($groupmapres) {      if ($groupmapres) {
         ($map,$id,$src)=&Apache::lonnet::decode_symb($groupmapres->symb());          ($map,$id,$src)=&Apache::lonnet::decode_symb($groupmapres->symb());
     }      }
Line 1559  sub open_list_window { Line 1553  sub open_list_window {
     my ($group,$status,$count,$text) = @_;      my ($group,$status,$count,$text) = @_;
     my $entry;      my $entry;
     if ($count > 0) {      if ($count > 0) {
         $entry = '<span class="LC_nobreak"><a href="javascript:openGroupRoster('.          $entry = '<nobr><a href="javascript:openGroupRoster('.
                  "'$group','$status'".')">'.$text.'</a>&nbsp;-&nbsp;'.$count.                   "'$group','$status'".')">'.$text.'</a>&nbsp;-&nbsp;'.$count.
                  '</span><br />';                   '</nobr><br />';
     } else {      } else {
         $entry = '<span class="LC_nobreak">'.$text.'&nbsp;-&nbsp;'.$count.'</span><br />';          $entry = '<nobr>'.$text.'&nbsp;-&nbsp;'.$count.'</nobr><br />';
     }      }
     return $entry;      return $entry;
 }  }
Line 2071  sub pick_new_members { Line 2065  sub pick_new_members {
         if (@{$available} > 0 && $granularity eq 'Yes') {          if (@{$available} > 0 && $granularity eq 'Yes') {
             $r->print('<td>              $r->print('<td>
      <fieldset><legend><b>'.$lt{'setf'}.'</b></legend>       <fieldset><legend><b>'.$lt{'setf'}.'</b></legend>
       <span class="LC_nobreak">        <nobr>
       <input type="button" value="'.&mt('check all').'"        <input type="button" value="'.&mt('check all').'"
         onclick="javascript:checkAllTools(document.'.$formname.')" />          onclick="javascript:checkAllTools(document.'.$formname.')" />
         &nbsp;&nbsp;          &nbsp;&nbsp;
       <input type="button" value="'.&mt('uncheck all').'"        <input type="button" value="'.&mt('uncheck all').'"
         onclick="javascript:uncheckAllTools(document.'.$formname.')" />          onclick="javascript:uncheckAllTools(document.'.$formname.')" />
       </span>        </nobr>
      </fieldset></td>');       </fieldset></td>');
         }          }
         $r->print('</tr></table>          $r->print('</tr></table>
Line 2100  sub pick_new_members { Line 2094  sub pick_new_members {
             if ($granularity eq 'Yes') {              if ($granularity eq 'Yes') {
                 $r->print(&Apache::loncommon::start_data_table_row('LC_data_table_dense LC_data_table_highlight').'                  $r->print(&Apache::loncommon::start_data_table_row('LC_data_table_dense LC_data_table_highlight').'
  <td colspan="6">&nbsp;</td>   <td colspan="6">&nbsp;</td>
  <td align="center"><span class="LC_nobreak"><b>'.&mt('All:').'</b>&nbsp;');   <td align="center"><nobr><b>'.&mt('All:').'</b>&nbsp;');
                 foreach my $tool (@{$available}) {                  foreach my $tool (@{$available}) {
                     $r->print('<label><input type="checkbox" name="togglefunc" '.                      $r->print('<label><input type="checkbox" name="togglefunc" '.
    'onclick="javascript:toggleTools(document.'.$formname.'.user_'.$tool.',this);"'.     'onclick="javascript:toggleTools(document.'.$formname.'.user_'.$tool.',this);"'.
    ' value="'.$tool.'">'.'<b>'.$tool.'</b></label>&nbsp;&nbsp;&nbsp;');     ' value="'.$tool.'">'.'<b>'.$tool.'</b></label>&nbsp;&nbsp;&nbsp;');
                 }                  }
                 $r->print('</span></td></tr>');                  $r->print('</nobr></td></tr>');
             }              }
         }          }
         my %Sortby = ();          my %Sortby = ();
Line 2140  sub pick_new_members { Line 2134  sub pick_new_members {
   '<td>'.$id.'</td>'.    '<td>'.$id.'</td>'.
   '<td>'.$section.'</td>');    '<td>'.$section.'</td>');
                 if (@{$available} > 0) {                  if (@{$available} > 0) {
                     $r->print('<td align="center"><span class="LC_nobreak">'.                      $r->print('<td align="center"><nobr>'.
                               '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');                                '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');
                     foreach my $tool (@{$available}) {                      foreach my $tool (@{$available}) {
                         if ($granularity eq 'Yes') {                          if ($granularity eq 'Yes') {
Line 2151  sub pick_new_members { Line 2145  sub pick_new_members {
                           $tool.'" value="'.$user.'" />'.$tool.'&nbsp;&nbsp;&nbsp;');                            $tool.'" value="'.$user.'" />'.$tool.'&nbsp;&nbsp;&nbsp;');
                         }                          }
                     }                      }
                     $r->print('</span></td>');                      $r->print('</nobr></td>');
                 }                  }
                 $r->print(&Apache::loncommon::end_data_table_row()."\n");                  $r->print(&Apache::loncommon::end_data_table_row()."\n");
             }              }
Line 2238  sub privilege_specificity { Line 2232  sub privilege_specificity {
         if ($totaloptionalprivs) {          if ($totaloptionalprivs) {
             $r->print('              $r->print('
 <br />  <br />
 <label><span class="LC_nobreak"><input type="radio" name="specificity" value="No" '.$specific{'No'}.' />&nbsp;'.$lt{'algm'}.'</span></label><br />  <label><nobr><input type="radio" name="specificity" value="No" '.$specific{'No'}.' />&nbsp;'.$lt{'algm'}.'</nobr></label><br />
 <label><span class="LC_nobreak"><input type="radio" name="specificity" value="Yes" '.$specific{'Yes'}.' />&nbsp;'.$lt{'smgp'}.'</span></label><br /><br />');  <label><nobr><input type="radio" name="specificity" value="Yes" '.$specific{'Yes'}.' />&nbsp;'.$lt{'smgp'}.'</nobr></label><br /><br />');
         } else {          } else {
             $r->print('<input type="hidden" name="specificity" value="No" />');              $r->print('<input type="hidden" name="specificity" value="No" />');
         }          }
Line 2515  sub current_membership { Line 2509  sub current_membership {
                 $r->print(&check_uncheck_tools($r,$available));                  $r->print(&check_uncheck_tools($r,$available));
                 $r->print('                  $r->print('
      <td>       <td>
       <span class="LC_nobreak">        <nobr>
        <fieldset><legend><b>'.$lt{'curf'}.'</b></legend>         <fieldset><legend><b>'.$lt{'curf'}.'</b></legend>
        <input type="button" value="'.&mt('check all').'"         <input type="button" value="'.&mt('check all').'"
        onclick="javascript:checkAllTools(document.'.$formname.')" />         onclick="javascript:checkAllTools(document.'.$formname.')" />
Line 2523  sub current_membership { Line 2517  sub current_membership {
        <input type="button" value="'.&mt('uncheck all').'"         <input type="button" value="'.&mt('uncheck all').'"
         onclick="javascript:uncheckAllTools(document.'.$formname.')" />          onclick="javascript:uncheckAllTools(document.'.$formname.')" />
       </fieldset>        </fieldset>
      </span>       </nobr>
     </td>      </td>
 ');  ');
             }              }
Line 2558  END Line 2552  END
             if ($granularity eq 'Yes') {              if ($granularity eq 'Yes') {
                 $r->print(&Apache::loncommon::start_data_table_row('LC_data_table_dense LC_data_table_highlight').'                  $r->print(&Apache::loncommon::start_data_table_row('LC_data_table_dense LC_data_table_highlight').'
  <td colspan="7">&nbsp;</td>   <td colspan="7">&nbsp;</td>
  <td colspan="'.$colspan.'" align="center"><span class="LC_nobreak"><b>'.&mt('All:').   <td colspan="'.$colspan.'" align="center"><nobr><b>'.&mt('All:').
   '</b>&nbsp;');    '</b>&nbsp;');
                 foreach my $tool (@{$available}) {                  foreach my $tool (@{$available}) {
                     $r->print('<label><input type="checkbox" name="togglefunc"'.                      $r->print('<label><input type="checkbox" name="togglefunc"'.
    ' onclick="javascript:toggleTools(document.'.$formname.'.user_'.$tool.',this);"'.     ' onclick="javascript:toggleTools(document.'.$formname.'.user_'.$tool.',this);"'.
    ' value="'.$tool.'" />'.'<b>'.$tool.'</b></label>&nbsp;&nbsp;&nbsp;');     ' value="'.$tool.'" />'.'<b>'.$tool.'</b></label>&nbsp;&nbsp;&nbsp;');
                 }                  }
                 $r->print('</span></td></tr>');                  $r->print('</nobr></td></tr>');
             }              }
         }          }
         my %Sortby = ();          my %Sortby = ();
Line 2593  END Line 2587  END
                 $r->print(&Apache::loncommon::start_data_table_row('LC_data_table_dense').'                  $r->print(&Apache::loncommon::start_data_table_row('LC_data_table_dense').'
                             <td>');                              <td>');
                 if ($$current{$user}{changestate} eq 'reenable') {                  if ($$current{$user}{changestate} eq 'reenable') {
                     $r->print('<span class="LC_nobreak"><label>'.                       $r->print('<nobr><label>'. 
    '<input type="checkbox" name="reenable" value="'.$user.'" />'.     '<input type="checkbox" name="reenable" value="'.$user.'" />'.
    $lt{'reen'}.'</label></span><br />');     $lt{'reen'}.'</label></nobr><br />');
                 } elsif ($$current{$user}{changestate} eq 'expire') {                  } elsif ($$current{$user}{changestate} eq 'expire') {
                     $r->print('<span class="LC_nobreak"><label>'.                      $r->print('<nobr><label>'.
    '<input type="checkbox" name="expire" value="'.$user.'" />'.     '<input type="checkbox" name="expire" value="'.$user.'" />'.
    $lt{'expi'}.'</label></span><br />');     $lt{'expi'}.'</label></nobr><br />');
                 } elsif ($$current{$user}{changestate} eq 'activate') {                  } elsif ($$current{$user}{changestate} eq 'activate') {
                     $r->print('<span class="LC_nobreak"><label>'.                      $r->print('<nobr><label>'.
    '<input type="checkbox" name="activate" value="'.$user.'" />'.     '<input type="checkbox" name="activate" value="'.$user.'" />'.
    $lt{'acti'}.'</label></span><br />');     $lt{'acti'}.'</label></nobr><br />');
                 }                  }
                 $r->print('<span class="LC_nobreak"><label>'.                  $r->print('<nobr><label>'.
    '<input type="checkbox" name="deletion" value="'.$user.'" />'.     '<input type="checkbox" name="deletion" value="'.$user.'" />'.
    $lt{'dele'}.'</label></span>');     $lt{'dele'}.'</label></nobr>');
                 if ($specificity eq 'Yes') {                  if ($specificity eq 'Yes') {
                     $r->print('<br /><span class="LC_nobreak"><label>'.                      $r->print('<br /><nobr><label>'.
    '<input type="checkbox" name="changepriv" value="'.$user.'" />'.$lt{'chpr'}.     '<input type="checkbox" name="changepriv" value="'.$user.'" />'.$lt{'chpr'}.
    '</label></span>');     '</label></nobr>');
                 }                  }
                 $r->print('                  $r->print('
    </td>'.     </td>'.
Line 2622  END Line 2616  END
    '<td>'.$start.'</td>'.     '<td>'.$start.'</td>'.
    '<td>'.$end.'</td>');     '<td>'.$end.'</td>');
                 if ($hastools) {                  if ($hastools) {
                     $r->print('<td align="left"><span class="LC_nobreak">'.                      $r->print('<td align="left"><nobr>'.
                                   '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');                                    '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');
                     foreach my $tool (@{$$current{$user}{currtools}}) {                      foreach my $tool (@{$$current{$user}{currtools}}) {
                         if ($granularity eq 'Yes') {                          if ($granularity eq 'Yes') {
Line 2638  END Line 2632  END
                          }                           }
                          $r->print('&nbsp;&nbsp;&nbsp;');                           $r->print('&nbsp;&nbsp;&nbsp;');
                     }                      }
                     $r->print('</span></td>');                      $r->print('</nobr></td>');
                 }                  }
                 if ($addtools) {                  if ($addtools) {
                     $r->print('<td align="left">');                      $r->print('<td align="left">');
                     if ($granularity eq 'Yes') {                      if ($granularity eq 'Yes') {
                         foreach my $tool (@{$$current{$user}{newtools}}) {                          foreach my $tool (@{$$current{$user}{newtools}}) {
                             $r->print('<span class="LC_nobreak"><label><input type="checkbox"                              $r->print('<nobr><label><input type="checkbox"
                                           name="user_'.$tool.'" value="'.                                            name="user_'.$tool.'" value="'.
                                           $user.'" />'.$tool.                                            $user.'" />'.$tool.
                                           '</label></span>&nbsp;&nbsp;&nbsp;');                                            '</label></nobr>&nbsp;&nbsp;&nbsp;');
                         }                          }
                     } else {                      } else {
                         foreach my $tool (@{$$current{$user}{newtools}}) {                          foreach my $tool (@{$$current{$user}{newtools}}) {
                             $r->print('<span class="LC_nobreak"><input type="hidden"                               $r->print('<nobr><input type="hidden" 
                                           name="user_'. $tool.'" value="'.                                            name="user_'. $tool.'" value="'.
                                           $user.'" />'.$tool.                                            $user.'" />'.$tool.
                                           '</span>&nbsp;&nbsp;&nbsp;');                                            '</nobr>&nbsp;&nbsp;&nbsp;');
                         }                          }
                     }                      }
                     $r->print('</td>');                      $r->print('</td>');
Line 2675  sub check_uncheck_buttons { Line 2669  sub check_uncheck_buttons {
      <td '.$colspan.'>       <td '.$colspan.'>
        <fieldset>         <fieldset>
        <legend><b>'.$title.'</b></legend>         <legend><b>'.$title.'</b></legend>
       <span class="LC_nobreak">        <nobr>
        <input type="button" value="'.&mt('check all').'"         <input type="button" value="'.&mt('check all').'"
        onclick="javascript:checkAll(document.'.$formname.'.'.$field.')" />         onclick="javascript:checkAll(document.'.$formname.'.'.$field.')" />
        &nbsp;&nbsp;         &nbsp;&nbsp;
        <input type="button" value="'.&mt('uncheck all').'"         <input type="button" value="'.&mt('uncheck all').'"
        onclick="javascript:uncheckAll(document.'.$formname.'.'.$field.')" />         onclick="javascript:uncheckAll(document.'.$formname.'.'.$field.')" />
       </span>        </nobr>
        </fieldset>         </fieldset>
      </td>       </td>
 ');  ');
Line 3228  sub write_group_data { Line 3222  sub write_group_data {
                 my $crspath = '/uploaded/'.$cdom.'/'.$cnum.'/';                  my $crspath = '/uploaded/'.$cdom.'/'.$cnum.'/';
                 my $boardsmap = $crspath.'group_boards_'.$groupname.'.sequence';                  my $boardsmap = $crspath.'group_boards_'.$groupname.'.sequence';
                 my $navmap = Apache::lonnavmaps::navmap->new();                  my $navmap = Apache::lonnavmaps::navmap->new();
                 my ($bbmapres,$error);                  my $bbmapres = $navmap->getResourceByUrl($boardsmap);
                 if (defined($navmap)) {                  undef($navmap);
                     $bbmapres = $navmap->getResourceByUrl($boardsmap);                  if (!$bbmapres) {
                     undef($navmap);                      my $grpmap = $crspath.'group_folder_'.$groupname.'.sequence';
                     if (!$bbmapres) {                      my $disctitle = &mt('Discussion Boards');
                         my $grpmap = $crspath.'group_folder_'.$groupname.'.sequence';                      my $outcome = &map_updater($cdom,$cnum,'group_boards_'.
                         my $disctitle = &mt('Discussion Boards');                                                 $groupname.'.sequence','bbseq',
                         my $outcome = &map_updater($cdom,$cnum,'group_boards_'.                                                 $disctitle,$grpmap);
                                                    $groupname.'.sequence','bbseq',                      my ($furl,$ferr) = 
                                                    $disctitle,$grpmap);                          &Apache::lonuserstate::readmap($cdom.'/'.$cnum);
                         my ($furl,$ferr) =                      $navmap = Apache::lonnavmaps::navmap->new();
                             &Apache::lonuserstate::readmap($cdom.'/'.$cnum);                      # modify parameter
                         # modify parameter                      if ($outcome eq 'ok') {
                         if ($outcome eq 'ok') {                          my $parm_result = &parm_setter($navmap,$cdom,$boardsmap,
                             $navmap = Apache::lonnavmaps::navmap->new();                                                         $groupname);
                             if (defined($navmap)) {                          if ($parm_result) {
                                 my $parm_result = &parm_setter($navmap,$cdom,$boardsmap,                              $r->print('<div class="LC_error">'
                                                                $groupname);                                       .&mt('An error occurred while setting parameters '
                                 if ($parm_result) {                                           .'for Discussion Boards folder: '
                                     $error = &mt('An error occurred while setting parameters '                                           .'[_1]',$parm_result)
                                              .'for Discussion Boards folder: '                                       .'</div>');
                                              .'[_1]',$parm_result);  
                                 } else {  
                                     $r->print('<div class="LC_success">'.  
                                               &mt('Discussion Boards Folder created.')  
                                               .'</div>');  
                                 }  
                                 undef($navmap);  
                             } else {  
                                 $error = &mt('An error occurred while setting parameters '.  
                                              'for Discussion Boards folder: '.  
                                              'Could not retrieve course information' );  
                             }  
                         } else {                          } else {
                             $r->print($outcome);                              $r->print('<div class="LC_success">'
                                        .&mt('Discussion Boards Folder created.')
                                        .'</div>');
                         }                          }
                       } else {
                           $r->print($outcome);
                     }                      }
                 } else {                      undef($navmap);
                     $error = &mt("An error occurred while retrieving the contents of the group's folder.").'<br />'.  
                              &mt('You need to re-initialize the course.');  
                 }  
                 if ($error ne '') {  
                     $r->print('<div class="LC_error">'.$error.'</div>');  
                 }                  }
             }              }
             $r->print('<div class="LC_success">'              $r->print('<div class="LC_success">'
Line 3553  sub automapping { Line 3534  sub automapping {
     }      }
     $r->print(&Apache::lonhtmlcommon::topic_bar($image,$$lt{'endi'}).'      $r->print(&Apache::lonhtmlcommon::topic_bar($image,$$lt{'endi'}).'
     <b>'.$$lt{'gmma'}.':</b><br />'.$$lt{'adds'}.'<br />'.$$lt{'drops'}.'<br /><br />      <b>'.$$lt{'gmma'}.':</b><br />'.$$lt{'adds'}.'<br />'.$$lt{'drops'}.'<br /><br />
    <span class="LC_nobreak">'.$$lt{'auad'}.':&nbsp;     <nobr>'.$$lt{'auad'}.':&nbsp;
     <label><input type="radio" name="autoadd" value="on" />'.&mt('on').'&nbsp;&nbsp;</label><label><input type="radio" name="autoadd" value="off" checked="checked" />'.&mt('off').'</label>');      <label><input type="radio" name="autoadd" value="on" />'.&mt('on').'&nbsp;&nbsp;</label><label><input type="radio" name="autoadd" value="off" checked="checked" />'.&mt('off').'</label>');
     if ($action eq 'modify') {      if ($action eq 'modify') {
         $r->print('&nbsp;&nbsp;&nbsp;&nbsp;('.$$lt{'curr'}.' <b>'.$$lt{$add}.'</b>)');          $r->print('&nbsp;&nbsp;&nbsp;&nbsp;('.$$lt{'curr'}.' <b>'.$$lt{$add}.'</b>)');
     }      }
     $r->print('      $r->print('
     </span><br />      </nobr><br />
     <span class="LC_nobreak">'.$$lt{'auex'}.':&nbsp;      <nobr>'.$$lt{'auex'}.':&nbsp;
     <label><input type="radio" name="autodrop" value="on" />'.&mt('on').'&nbsp;&nbsp;</label><label><input type="radio" name="autodrop" value="off" checked="checked" />'.&mt('off').'</label>');      <label><input type="radio" name="autodrop" value="on" />'.&mt('on').'&nbsp;&nbsp;</label><label><input type="radio" name="autodrop" value="off" checked="checked" />'.&mt('off').'</label>');
     if ($action eq 'modify') {      if ($action eq 'modify') {
         $r->print('&nbsp;&nbsp;&nbsp;&nbsp;('.$$lt{'curr'}.' <b>'.$$lt{$drop}.'</b>)');          $r->print('&nbsp;&nbsp;&nbsp;&nbsp;('.$$lt{'curr'}.' <b>'.$$lt{$drop}.'</b>)');
     }      }
     $r->print('</span><br /><br />'.$$lt{'mapr'});      $r->print('</nobr><br /><br />'.$$lt{'mapr'});
 }  }
   
 sub mapping_settings {  sub mapping_settings {
Line 3725  sub member_privs_entries { Line 3706  sub member_privs_entries {
                         if ($privcount == 3) {                          if ($privcount == 3) {
                             $dynamic .= '</tr><tr>';                              $dynamic .= '</tr><tr>';
                         }                          }
                         $dynamic .='<td><span class="LC_nobreak"><label><input type="checkbox" '.                          $dynamic .='<td><nobr><label><input type="checkbox" '.
                                'name="userpriv_'.$priv.'" value="'.$user.'"';                                 'name="userpriv_'.$priv.'" value="'.$user.'"';
                         if (grep/^\Q$priv\E$/,@{$defprivs}) {                          if (grep/^\Q$priv\E$/,@{$defprivs}) {
                             $dynamic .= ' checked="checked" ';                              $dynamic .= ' checked="checked" ';
                         }                          }
                         $dynamic .= ' />'.$$toolprivs{$tool}{$priv}.                          $dynamic .= ' />'.$$toolprivs{$tool}{$priv}.
                                     '</label></span></td>';                                      '</label></nobr></td>';
                     }                      }
                 }                  }
                 $r->print('<tr><td colspan="2"><span class="LC_nobreak">'.$fixed.'</span></td></tr><tr>'.$dynamic.'</tr></table></td>');                  $r->print('<tr><td colspan="2"><nobr>'.$fixed.'</nobr></td></tr><tr>'.$dynamic.'</tr></table></td>');
             } else {              } else {
                 $r->print('<td valign="top"><table width="100%"><tr><th colspan="2">'.$tool.'</th></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr></table></td>');                  $r->print('<td valign="top"><table width="100%"><tr><th colspan="2">'.$tool.'</th></tr><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr></table></td>');
             }              }
Line 3761  sub date_setting_table { Line 3742  sub date_setting_table {
     my $endform = &Apache::lonhtmlcommon::date_setter($formname,      my $endform = &Apache::lonhtmlcommon::date_setter($formname,
                                                       'enddate',$endtime);                                                        'enddate',$endtime);
     my $perpetual =       my $perpetual = 
  '<span class="LC_nobreak"><label><input type="checkbox" name="no_end_date" />'.   '<nobr><label><input type="checkbox" name="no_end_date" />'.
  &mt('None').'</label></span>';   &mt('None').'</label></nobr>';
     my $table = "<table class=\"LC_descriptive_input\">\n".      my $table = "<table class=\"LC_descriptive_input\">\n".
  '<tr><td class="LC_description">'.&mt('Start:').'</td>'.   '<tr><td class="LC_description">'.&mt('Start:').'</td>'.
         '<td>'.$startform.'</td>'.          '<td>'.$startform.'</td>'.
Line 3806  sub add_group_folder { Line 3787  sub add_group_folder {
                     if ($delresult ne 'ok') {                      if ($delresult ne 'ok') {
                         $warning = $delresult;                          $warning = $delresult;
                     }                      }
                     return $outcome.$warning;                      return $outcome;
                 }                  }
             }              }
             my $delresult = &release_folder_lock($cdom,$cnum,'group_allfolders');              my $delresult = &release_folder_lock($cdom,$cnum,'group_allfolders');
Line 3816  sub add_group_folder { Line 3797  sub add_group_folder {
         } else {          } else {
             $outcome = '<span class="LC_error">'              $outcome = '<span class="LC_error">'
                       .&mt('Could not obtain exclusive lock to check status of the folder for all groups. No group folder added.')                        .&mt('Could not obtain exclusive lock to check status of the folder for all groups. No group folder added.')
                       .'</span>';                        .'</div>';
             return $outcome;              return $outcome;
         }          }
         my $grpfolder = &mt($ucgpterm.' Folder - [_1]',$description);          my $grpfolder = &mt($ucgpterm.' Folder - [_1]',$description);
Line 3847  sub add_group_folder { Line 3828  sub add_group_folder {
     }      }
     my ($furl,$ferr)= &Apache::lonuserstate::readmap($cdom.'/'.$cnum);      my ($furl,$ferr)= &Apache::lonuserstate::readmap($cdom.'/'.$cnum);
     my $navmap = Apache::lonnavmaps::navmap->new();      my $navmap = Apache::lonnavmaps::navmap->new();
     if (!defined($navmap)) {  
         return $warning.'<span class="LC_error">'.&mt('Error retrieving course contents').  
                ' '.&mt('You need to re-initialize the course.').'</span>';  
     }  
     # modify parameters      # modify parameters
     my $parm_result;      my $parm_result;
     if ($action eq 'create') {      if ($action eq 'create') {
Line 3956  sub new_map { Line 3933  sub new_map {
 sub parm_setter {  sub parm_setter {
     my ($navmap,$cdom,$url,$groupname) = @_;      my ($navmap,$cdom,$url,$groupname) = @_;
     my $allresults;      my $allresults;
     if (!defined($navmap)) {  
         $allresults = '<div class="LC_warning">'.  
                       &mt('Parameters not set for [_1] because the contents of the course could not be retrieved.',$url).' '.  
                       &mt('You need to reinitialize the course.').  
                       '</div>';  
         return $allresults;  
     }  
     my %hide_settings = (      my %hide_settings = (
                            'course' =>  {                             'course' =>  {
                                           'num' => 13,                                            'num' => 13,

Removed from v.1.80.2.4  
changed lines
  Added in v.1.81


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