version 1.6, 2006/02/21 18:56:00
|
version 1.8, 2006/02/23 17:23:09
|
Line 145 sub display_groups {
|
Line 145 sub display_groups {
|
file => 'Files', |
file => 'Files', |
dibd => 'Discussion Boards', |
dibd => 'Discussion Boards', |
dius => 'Disk Use', |
dius => 'Disk Use', |
); |
nogr => 'No groups exist.', |
$r->print('<br /><br />'); |
crng => 'Create a new group', |
|
alth => 'Although your current role has privileges'. |
|
' to view any existing groups in this course,'. |
|
' you do not have privileges to create new'. |
|
' groups.', |
|
); |
if ($view_permission) { |
if ($view_permission) { |
if (!defined($action)) { |
if (!defined($action)) { |
$action = 'view'; |
$action = 'view'; |
} |
} |
my %curr_groups; |
my %curr_groups; |
if (&Apache::loncommon::coursegroups(\%curr_groups,$cdom,$cnum)) { |
if (&Apache::loncommon::coursegroups(\%curr_groups,$cdom,$cnum)) { |
|
$r->print('<br /><br />'); |
$r->print(&Apache::lonhtmlcommon::start_pick_box()); |
$r->print(&Apache::lonhtmlcommon::start_pick_box()); |
$r->print(<<"END"); |
$r->print(<<"END"); |
<table border="0" cellpadding="4" cellspacing="1"> |
<table border="0" cellpadding="4" cellspacing="1"> |
Line 251 END
|
Line 257 END
|
$r->print('</table>'); |
$r->print('</table>'); |
$r->print(&Apache::lonhtmlcommon::end_pick_box()); |
$r->print(&Apache::lonhtmlcommon::end_pick_box()); |
} else { |
} else { |
$r->print('No groups exist'); |
$r->print($lt{'nogr'}); |
|
if ($manage_permission) { |
|
$r->print('<br /><br /><a href="/adm/coursegroups?action=create&refpage='.$env{'form.refpage'}.'">'.$lt{'crng'}.'</a>'); |
|
} else { |
|
$r->print('<br /><br />'.$lt{'crng'}); |
|
|
|
} |
} |
} |
} else { |
} else { |
my @coursegroups = split(/:/,$env{'request.course.groups'}); |
my @coursegroups = split(/:/,$env{'request.course.groups'}); |
if (@coursegroups > 0) { |
if (@coursegroups > 0) { |
|
$r->print('<br /><br />'); |
my %curr_groups; |
my %curr_groups; |
if (&Apache::loncommon::coursegroups(\%curr_groups,$cdom,$cnum)) { |
if (&Apache::loncommon::coursegroups(\%curr_groups,$cdom,$cnum)) { |
foreach my $group (@coursegroups) { |
foreach my $group (@coursegroups) { |
Line 473 sub group_administration {
|
Line 486 sub group_administration {
|
} |
} |
if ($state eq 'pick_members') { |
if ($state eq 'pick_members') { |
if ((keys(%users) > 0) && (@tools > 0)) { |
if ((keys(%users) > 0) && (@tools > 0)) { |
|
if ($granularity eq 'Yes') { |
|
$elements{$action}{'pick_members'}{'togglefunc'} = 'checkbox'; |
|
} |
foreach my $tool (@tools) { |
foreach my $tool (@tools) { |
if ($granularity eq 'Yes') { |
if ($granularity eq 'Yes') { |
$elements{$action}{'pick_members'}{'user_'.$tool} = 'checkbox'; |
$elements{$action}{'pick_members'}{'user_'.$tool} = 'checkbox'; |
Line 527 sub group_administration {
|
Line 543 sub group_administration {
|
$elements{$action}{'change_members'}{'reenable'} = 'checkbox'; |
$elements{$action}{'change_members'}{'reenable'} = 'checkbox'; |
} |
} |
if ($numusers) { |
if ($numusers) { |
|
if ($granularity eq 'Yes') { |
|
$elements{$action}{'change_members'}{'togglefunc'} = 'checkbox'; |
|
} |
foreach my $tool (@tools) { |
foreach my $tool (@tools) { |
if ($granularity eq 'Yes') { |
if ($granularity eq 'Yes') { |
$elements{$action}{'change_members'}{'user_'.$tool} = 'checkbox'; |
$elements{$action}{'change_members'}{'user_'.$tool} = 'checkbox'; |
Line 763 function changeSort(caller) {
|
Line 782 function changeSort(caller) {
|
\@sections,\%states,\%navbuttons,$rowColor1,$rowColor2); |
\@sections,\%states,\%navbuttons,$rowColor1,$rowColor2); |
last; |
last; |
} else { |
} else { |
if (($state =~ /^\w+result$/) && ($i > 0)) { |
if (($state eq 'result') && ($i > 0)) { |
&Apache::lonhtmlcommon::add_breadcrumb( |
&Apache::lonhtmlcommon::add_breadcrumb( |
{href=>"javascript:backPage(document.$state,'$states{$action}[0]')", |
{href=>"javascript:backPage(document.$state,'$states{$action}[0]')", |
text=>"$trail{$action}{$states{$action}[$i]}"}); |
text=>"$trail{$action}{$states{$action}[$i]}"}); |
Line 971 sub onload_action {
|
Line 990 sub onload_action {
|
} |
} |
if (($action eq 'modify') && |
if (($action eq 'modify') && |
($state eq 'change_settings' || $state eq 'change_members' || |
($state eq 'change_settings' || $state eq 'change_members' || |
$state eq 'change_privs') || $state eq 'add_members') { |
$state eq 'change_privs' || $state eq 'add_members' || |
|
$state eq 'pick_members')) { |
$loaditems = |
$loaditems = |
'onload="javascript:setFormElements(document.'.$state.')"'; |
'onload="javascript:setFormElements(document.'.$state.')"'; |
} |
} |
Line 1136 END
|
Line 1156 END
|
} |
} |
my @allfunctions = sort(keys (%{$functions})); |
my @allfunctions = sort(keys (%{$functions})); |
for (my $i=0; $i<$halfnum; $i++) { |
for (my $i=0; $i<$halfnum; $i++) { |
$r->print('<td><input type="checkbox" name="tool" value="'. |
$r->print('<td><label><input type="checkbox" name="tool" value="'. |
$allfunctions[$i].'" /> '. |
$allfunctions[$i].'" /> '. |
$$functions{$allfunctions[$i]}.'</td> |
$$functions{$allfunctions[$i]}.'</label></td> |
<td> </td><td> </td>'); |
<td> </td><td> </td>'); |
} |
} |
$r->print('<td><input type="button" value="check all" '. |
$r->print('<td><input type="button" value="check all" '. |
'onclick="javascript:checkAll(document.'.$formname.'.tool)" />'. |
'onclick="javascript:checkAll(document.'.$formname.'.tool)" />'. |
'</td></tr><tr><td> </td>'); |
'</td></tr><tr><td> </td>'); |
for (my $j=$halfnum; $j<@allfunctions; $j++) { |
for (my $j=$halfnum; $j<@allfunctions; $j++) { |
$r->print('<td><input type="checkbox" name="tool" value="'. |
$r->print('<td><label><input type="checkbox" name="tool" value="'. |
$allfunctions[$j].'" /> '. |
$allfunctions[$j].'" /> '. |
$$functions{$allfunctions[$j]}.'</td> |
$$functions{$allfunctions[$j]}.'</label></td> |
<td> </td><td> </td>'); |
<td> </td><td> </td>'); |
} |
} |
if ($remnum) { |
if ($remnum) { |
Line 1161 END
|
Line 1181 END
|
</tr> |
</tr> |
<tr> |
<tr> |
<td><b>Granularity:</b></td> |
<td><b>Granularity:</b></td> |
<td colspan="9">'.$lt{'doyo'}.' <input type="radio" name="granularity" value="Yes" />'.&mt('Yes').' <input type="radio" name="granularity" value="No" checked="checked" />'.&mt('No')); |
<td colspan="9">'.$lt{'doyo'}.' <label><input type="radio" name="granularity" value="Yes" />'.&mt('Yes').'</label> <label><input type="radio" name="granularity" value="No" checked="checked" />'.&mt('No').'</label>'); |
if ($action eq 'modify') { |
if ($action eq 'modify') { |
$r->print(' ('.&mt('Currently set to "[_1]"', |
$r->print(' ('.&mt('Currently set to "[_1]"', |
$$stored{'granularity'}).')'); |
$$stored{'granularity'}).')'); |
Line 1309 sub choose_members_form {
|
Line 1329 sub choose_members_form {
|
my %origmembers; |
my %origmembers; |
$r->print(&Apache::lonhtmlcommon::echo_form_input( |
$r->print(&Apache::lonhtmlcommon::echo_form_input( |
['origin','action','state','page','member','specificity','branch', |
['origin','action','state','page','member','specificity','branch', |
'defpriv','autorole','autoadd','autodrop','sortby'], |
'defpriv','autorole','autoadd','autodrop','sortby','togglefunc'], |
\@regexps)); |
\@regexps)); |
my $earlyout = &validate_groupname($groupname,$action,$cdom,$cnum); |
my $earlyout = &validate_groupname($groupname,$action,$cdom,$cnum); |
$r->print(' |
$r->print(' |
Line 1599 sub pick_new_members {
|
Line 1619 sub pick_new_members {
|
if ($granularity eq 'Yes') { |
if ($granularity eq 'Yes') { |
$r->print('<tr bgcolor="#cccccc"> |
$r->print('<tr bgcolor="#cccccc"> |
<td colspan="5"> </td> |
<td colspan="5"> </td> |
<td align="center"><small><nobr><b>All:</b> '); |
<td align="center"><small><nobr><b>'.&mt('All:').'</b> '); |
foreach my $tool (@{$available}) { |
foreach my $tool (@{$available}) { |
$r->print('<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);"'. |
'<b>'.$tool.'</b> '); |
' value="'.$tool.'">'.'<b>'.$tool.'</b></label> '); |
} |
} |
$r->print('</nobr></small></td></tr>'); |
$r->print('</nobr></small></td></tr>'); |
} |
} |
Line 1753 sub privilege_specificity {
|
Line 1773 sub privilege_specificity {
|
} |
} |
if ($totaloptionalprivs) { |
if ($totaloptionalprivs) { |
$r->print(' |
$r->print(' |
<br /><br /><nobr><input type="radio" name="specificity" value="No" '.$specific{'No'}.' /> '.$lt{'algm'}.'</nobr><br/> |
<br /><br /><label><nobr><input type="radio" name="specificity" value="No" '.$specific{'No'}.' /> '.$lt{'algm'}.'</nobr></label><br/> |
<nobr><input type="radio" name="specificity" value="Yes" '.$specific{'Yes'}.' /> '.$lt{'smgp'}.'</nobr> |
<label><nobr><input type="radio" name="specificity" value="Yes" '.$specific{'Yes'}.' /> '.$lt{'smgp'}.'</nobr></label> |
</td> |
</td> |
</tr> |
</tr> |
<tr> |
<tr> |
Line 1876 sub default_privileges {
|
Line 1896 sub default_privileges {
|
$dynamic .= '</tr> |
$dynamic .= '</tr> |
<tr bgcolor="'.$rowColor1.'">'."\n"; |
<tr bgcolor="'.$rowColor1.'">'."\n"; |
} |
} |
$dynamic .= '<td><input type="checkbox" name="defpriv" value="'.$priv.'" />'.$$toolprivs{$tool}{$priv}.'</td>'."\n"; |
$dynamic .= '<td><label><input type="checkbox" name="defpriv" value="'.$priv.'" />'.$$toolprivs{$tool}{$priv}.'</label></td>'."\n"; |
} |
} |
} |
} |
if ($dynamic eq '') { |
if ($dynamic eq '') { |
Line 1982 sub change_members_form {
|
Line 2002 sub change_members_form {
|
my @regexps = ('user_','userpriv_'); |
my @regexps = ('user_','userpriv_'); |
$r->print(&Apache::lonhtmlcommon::echo_form_input( |
$r->print(&Apache::lonhtmlcommon::echo_form_input( |
['origin','action','state','page','expire','deletion', |
['origin','action','state','page','expire','deletion', |
'reenable','activate','changepriv','sortby'], |
'reenable','activate','changepriv','sortby', |
\@regexps)); |
'togglefunc'],\@regexps)); |
my $rowimg = 1; |
my $rowimg = 1; |
my @available = (); |
my @available = (); |
my @unavailable = (); |
my @unavailable = (); |
Line 2204 END
|
Line 2224 END
|
<td colspan="'.$colspan.'" align="center"><small><nobr><b>'.&mt('All:'). |
<td colspan="'.$colspan.'" align="center"><small><nobr><b>'.&mt('All:'). |
'</b> '); |
'</b> '); |
foreach my $tool (@{$available}) { |
foreach my $tool (@{$available}) { |
$r->print('<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);"'. |
'<b>'.$tool.'</b> '); |
' value="'.$tool.'">'.'<b>'.$tool.'</b></label> '); |
} |
} |
$r->print('</nobr></small></td></tr>'); |
$r->print('</nobr></small></td></tr>'); |
} |
} |
Line 2243 END
|
Line 2263 END
|
$r->print('<tr bgcolor="'.$rowColor.'"> |
$r->print('<tr bgcolor="'.$rowColor.'"> |
<td><small>'); |
<td><small>'); |
if ($current{$user}{changestate} eq 'reenable') { |
if ($current{$user}{changestate} eq 'reenable') { |
$r->print('<nobr>'. |
$r->print('<nobr><label>'. |
'<input type="checkbox" name="reenable" value="'.$user.'" />'. |
'<input type="checkbox" name="reenable" value="'.$user.'" />'. |
$lt{'reen'}.'</nobr><br />'); |
$lt{'reen'}.'</label></nobr><br />'); |
} elsif ($current{$user}{changestate} eq 'expire') { |
} elsif ($current{$user}{changestate} eq 'expire') { |
$r->print('<nobr>'. |
$r->print('<nobr><label>'. |
'<input type="checkbox" name="expire" value="'.$user.'" />'. |
'<input type="checkbox" name="expire" value="'.$user.'" />'. |
$lt{'expi'}.'</nobr><br />'); |
$lt{'expi'}.'</label></nobr><br />'); |
} elsif ($current{$user}{changestate} eq 'activate') { |
} elsif ($current{$user}{changestate} eq 'activate') { |
$r->print('<nobr>'. |
$r->print('<nobr><label>'. |
'<input type="checkbox" name="activate" value="'.$user.'" />'. |
'<input type="checkbox" name="activate" value="'.$user.'" />'. |
$lt{'acti'}.'</nobr><br />'); |
$lt{'acti'}.'</label></nobr><br />'); |
} |
} |
$r->print('<nobr>'. |
$r->print('<nobr><label>'. |
'<input type="checkbox" name="deletion" value="'.$user.'" />'. |
'<input type="checkbox" name="deletion" value="'.$user.'" />'. |
$lt{'dele'}.'</nobr>'); |
$lt{'dele'}.'</label></nobr>'); |
if ($specificity eq 'Yes') { |
if ($specificity eq 'Yes') { |
$r->print('<br /><nobr>'. |
$r->print('<br /><nobr><label>'. |
'<input type="checkbox" name="changepriv" value="'.$user.'" />'.$lt{'chpr'}. |
'<input type="checkbox" name="changepriv" value="'.$user.'" />'.$lt{'chpr'}. |
'</nobr>'); |
'</label></nobr>'); |
} |
} |
$r->print(' |
$r->print(' |
</td> |
</td> |
Line 2274 END
|
Line 2294 END
|
' '); |
' '); |
foreach my $tool (@{$current{$user}{currtools}}) { |
foreach my $tool (@{$current{$user}{currtools}}) { |
if ($granularity eq 'Yes') { |
if ($granularity eq 'Yes') { |
$r->print('<input type="checkbox" |
$r->print('<label><input type="checkbox" '. |
checked="checked" |
'checked="checked" '. |
name="user_'.$tool.'" value="'. |
'name="user_'.$tool.'" value="'. |
$user.'" />'); |
$user.'" />'.$tool.'</label>'); |
} else { |
} else { |
$r->print('<input type="hidden" |
$r->print('<input type="hidden" '. |
checked="checked" |
'checked="checked" '. |
name="user_'.$tool.'" value="'. |
'name="user_'.$tool.'" value="'. |
$user.'" />'); |
$user.'" />'.$tool); |
} |
} |
$r->print($tool.' '); |
$r->print(' '); |
} |
} |
$r->print('</nobr></small></td>'); |
$r->print('</nobr></small></td>'); |
} |
} |
Line 2292 END
|
Line 2312 END
|
$r->print('<td align="left"><small>'); |
$r->print('<td align="left"><small>'); |
if ($granularity eq 'Yes') { |
if ($granularity eq 'Yes') { |
foreach my $tool (@{$current{$user}{newtools}}) { |
foreach my $tool (@{$current{$user}{newtools}}) { |
$r->print('<nobr><input type="checkbox" |
$r->print('<nobr><label><input type="checkbox" |
name="user_'.$tool.'" value="'. |
name="user_'.$tool.'" value="'. |
$user.'" />'.$tool. |
$user.'" />'.$tool. |
'</nobr> '); |
'</label></nobr> '); |
} |
} |
} else { |
} else { |
foreach my $tool (@{$current{$user}{newtools}}) { |
foreach my $tool (@{$current{$user}{newtools}}) { |
Line 2894 sub process_membership {
|
Line 2914 sub process_membership {
|
&Apache::loncommon::get_env_multiple('form.userpriv_'.$priv); |
&Apache::loncommon::get_env_multiple('form.userpriv_'.$priv); |
foreach my $user (@users) { |
foreach my $user (@users) { |
$group_privs{$user} .= $priv.':'; |
$group_privs{$user} .= $priv.':'; |
|
if ($state eq 'memresult') { |
|
unless (exists($$usertools{$user}{$tool})) { |
|
$$usertools{$user}{$tool} = 1; |
|
} |
|
} |
} |
} |
} else { |
} else { |
if (@{$defprivs} > 0) { |
if (@{$defprivs} > 0) { |
Line 2965 sub process_membership {
|
Line 2990 sub process_membership {
|
} |
} |
} |
} |
} |
} |
} |
} |
|
|
foreach my $user (sort(keys(%{$usertools}))) { |
foreach my $user (sort(keys(%{$usertools}))) { |
my $type; |
my $type; |
Line 3004 sub process_membership {
|
Line 3029 sub process_membership {
|
if ($num_ok) { |
if ($num_ok) { |
foreach my $type (sort(keys(%added))) { |
foreach my $type (sort(keys(%added))) { |
$r->print(&mt('The following users were successfully [_1]',$type)); |
$r->print(&mt('The following users were successfully [_1]',$type)); |
if ($type eq 'activated' || $type eq 'added' || $type eq 'reenabled') { |
if (!($type eq 'deleted' || $type eq 'expired')) { |
$r->print(&mt(' with the following privileges')); |
$r->print(&mt(' with the following privileges')); |
} |
} |
$r->print(':<br />'); |
$r->print(':<br />'); |
foreach my $user (@{$added{$type}}) { |
foreach my $user (@{$added{$type}}) { |
my $privlist; |
my $privlist = ''; |
if ($type eq 'activated' || $type eq 'added') { |
if (!($type eq 'deleted' || $type eq 'expired')) { |
|
$privlist = ': '; |
my @privs = split(/:/,$group_privs{$user}); |
my @privs = split(/:/,$group_privs{$user}); |
my $curr_tool = ''; |
my $curr_tool = ''; |
foreach my $priv (@privs) { |
foreach my $priv (@privs) { |
Line 3022 sub process_membership {
|
Line 3048 sub process_membership {
|
} |
} |
$privlist =~ s/, $//; |
$privlist =~ s/, $//; |
} |
} |
$r->print($$userdata{$user}[$$idx{fullname}].' - '.$user.': '.$privlist.'<br />'); |
$r->print($$userdata{$user}[$$idx{fullname}].' - '.$user.$privlist.'<br />'); |
} |
} |
} |
} |
} |
} |
Line 3278 sub member_privs_entries {
|
Line 3304 sub member_privs_entries {
|
if ($privcount == 3) { |
if ($privcount == 3) { |
$dynamic .= '</tr><tr>'; |
$dynamic .= '</tr><tr>'; |
} |
} |
$dynamic .='<td><nobr><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}. |
'</nobr></td>'; |
'</label></nobr></td>'; |
} |
} |
} |
} |
$r->print('<tr><td colspan="2"><nobr>'.$fixed.'</nobr></td></tr><tr>'.$dynamic.'</tr></table></td>'); |
$r->print('<tr><td colspan="2"><nobr>'.$fixed.'</nobr></td></tr><tr>'.$dynamic.'</tr></table></td>'); |
Line 3313 sub date_setting_table {
|
Line 3339 sub date_setting_table {
|
'startdate',$starttime); |
'startdate',$starttime); |
my $endform = &Apache::lonhtmlcommon::date_setter($formname, |
my $endform = &Apache::lonhtmlcommon::date_setter($formname, |
'enddate',$endtime); |
'enddate',$endtime); |
my $perpetual = '<nobr><input type="checkbox" name="no_end_date" /> |
my $perpetual = '<nobr><label><input type="checkbox" name="no_end_date" /> |
no ending date</nobr>'; |
no ending date</label></nobr>'; |
my $start_table = ''; |
my $start_table = ''; |
$start_table .= "<table>\n"; |
$start_table .= "<table>\n"; |
$start_table .= '<tr><td align="right">Default starting date for |
$start_table .= '<tr><td align="right">Default starting date for |