version 1.25, 2007/12/22 04:23:05
|
version 1.26, 2007/12/22 04:58:45
|
Line 1990 END
|
Line 1990 END
|
$context,$permission,$mode); |
$context,$permission,$mode); |
$r->print('<b>'.$results_description.'</b><br />'); |
$r->print('<b>'.$results_description.'</b><br />'); |
} |
} |
my ($output,$actionselect); |
my ($output,$actionselect,%canchange,%canchangesec); |
if ($mode eq 'html' || $mode eq 'view' || $mode eq 'autoenroll') { |
if ($mode eq 'html' || $mode eq 'view' || $mode eq 'autoenroll') { |
if ($mode ne 'autoenroll') { |
if ($mode ne 'autoenroll') { |
if ($permission->{'cusr'}) { |
if ($permission->{'cusr'}) { |
Line 2029 $lt{'ac'}: $actionselect <input typ
|
Line 2029 $lt{'ac'}: $actionselect <input typ
|
<p><input type="button" value="$lt{'ca'}" onclick="javascript:checkAll(document.studentform.actionlist)" /> |
<p><input type="button" value="$lt{'ca'}" onclick="javascript:checkAll(document.studentform.actionlist)" /> |
<input type="button" value="$lt{'ua'}" onclick="javascript:uncheckAll(document.studentform.actionlist)" /> |
<input type="button" value="$lt{'ua'}" onclick="javascript:uncheckAll(document.studentform.actionlist)" /> |
END |
END |
|
my @allroles; |
|
if ($env{'form.showrole'} eq 'Any') { |
|
my $custom = 1; |
|
if ($context eq 'domain') { |
|
@allroles = &roles_by_context($setting,$custom); |
|
} else { |
|
@allroles = &roles_by_context($context,$custom); |
|
} |
|
} else { |
|
@allroles = ($env{'form.showrole'}); |
|
} |
|
foreach my $role (@allroles) { |
|
if ($context eq 'domain') { |
|
if ($setting eq 'domain') { |
|
if (&Apache::lonnet::allowed('c'.$role, |
|
$env{'request.role.domain'})) { |
|
$canchange{$role} = 1; |
|
} |
|
} |
|
} elsif ($context eq 'author') { |
|
if (&Apache::lonnet::allowed('c'.$role, |
|
$env{'user.domain'}.'/'.$env{'user.name'})) { |
|
$canchange{$role} = 1; |
|
} |
|
} elsif ($context eq 'course') { |
|
if (&Apache::lonnet::allowed('c'.$role,$env{'request.course.id'})) { |
|
$canchange{$role} = 1; |
|
} elsif ($env{'request.course.sec'} ne '') { |
|
if (&Apache::lonnet::allowed('c'.$role,$env{'request.course.id'}.'/'.$env{'request.course.sec'})) { |
|
$canchangesec{$role} = $env{'request.course.sec'}; |
|
} |
|
} |
|
} |
|
} |
} |
} |
} |
} |
$output .= "\n<p>\n". |
$output .= "\n<p>\n". |
Line 2242 END
|
Line 2276 END
|
$r->print("<td>$rowcount</td>\n"); |
$r->print("<td>$rowcount</td>\n"); |
$checkval; |
$checkval; |
if ($actionselect) { |
if ($actionselect) { |
$checkval = $user; |
my $showcheckbox; |
if ($context eq 'course') { |
if ($role =~ /^cr\//) { |
if ($role eq 'st') { |
$showcheckbox = $canchange{'cr'}; |
$checkval .= ':st'; |
} else { |
|
$showcheckbox = $canchange{$role}; |
|
} |
|
if (!$showcheckbox) { |
|
if ($context eq 'course') { |
|
if ($canchangesec{$role} ne '') { |
|
if ($canchangesec{$role} eq $in{'section'}) { |
|
$showcheckbox = 1; |
|
} |
|
} |
} |
} |
$checkval .= ':'.$in{'section'}; |
} |
if ($role eq 'st') { |
if ($showcheckbox) { |
$checkval .= ':'.$in{'type'}.':'.$in{'lockedtype'}; |
$checkval = $user; |
|
if ($context eq 'course') { |
|
if ($role eq 'st') { |
|
$checkval .= ':st'; |
|
} |
|
$checkval .= ':'.$in{'section'}; |
|
if ($role eq 'st') { |
|
$checkval .= ':'.$in{'type'}.':'. |
|
$in{'lockedtype'}; |
|
} |
} |
} |
|
$r->print('<td><input type="checkbox" name="'. |
|
'actionlist" value="'.$checkval.'"></td>'); |
|
} else { |
|
$r->print('<td> </td>'); |
} |
} |
$r->print('<td><input type="checkbox" name="actionlist" value="'. |
|
$checkval.'"></td>'); |
|
} |
} |
} |
} |
foreach my $item (@cols) { |
foreach my $item (@cols) { |
Line 2386 sub select_actions {
|
Line 2440 sub select_actions {
|
if ($context eq 'domain' && $setting eq 'course') { |
if ($context eq 'domain' && $setting eq 'course') { |
return; |
return; |
} |
} |
|
if ($context eq 'course') { |
|
if ($env{'form.showrole'} ne 'Any') { |
|
if (!&Apache::lonnet::allowed('c'.$env{'form.showrole'}, |
|
$env{'request.course.id'})) { |
|
if ($env{'request.course.sec'} eq '') { |
|
return; |
|
} else { |
|
if (!&Apache::lonnet::allowed('c'.$env{'form.showrole'},$env{'request.course.id'}.'/'.$env{'request.course.sec'})) { |
|
return; |
|
} |
|
} |
|
} |
|
} |
|
} |
if ($statusmode eq 'Any') { |
if ($statusmode eq 'Any') { |
$options .= ' |
$options .= ' |
<option value="chgdates">'.$lt{'chgdates'}.'</option>'; |
<option value="chgdates">'.$lt{'chgdates'}.'</option>'; |
Line 2412 sub select_actions {
|
Line 2480 sub select_actions {
|
<option value="delete">'.$lt{'delete'}.'</option>'; |
<option value="delete">'.$lt{'delete'}.'</option>'; |
} |
} |
if (($context eq 'course') || ($context eq 'domain' && $setting eq 'course')) { |
if (($context eq 'course') || ($context eq 'domain' && $setting eq 'course')) { |
if ($statusmode ne 'Expired') { |
if (($statusmode ne 'Expired') && ($env{'request.course.sec'} eq '')) { |
$options .= ' |
$options .= ' |
<option value="chgsec">'.$lt{'chgsec'}.'</option>'; |
<option value="chgsec">'.$lt{'chgsec'}.'</option>'; |
$choices{'sections'} = 1; |
$choices{'sections'} = 1; |
Line 2519 END
|
Line 2587 END
|
if (($env{'form.bulkaction'} eq 'reenable') || |
if (($env{'form.bulkaction'} eq 'reenable') || |
($env{'form.bulkaction'} eq 'activate') || |
($env{'form.bulkaction'} eq 'activate') || |
($env{'form.bulkaction'} eq 'chgdates')) { |
($env{'form.bulkaction'} eq 'chgdates')) { |
$output .= <<"END"; |
if ($env{'request.course.sec'} eq '') { |
|
$output .= <<"END"; |
|
|
if (formname.makedatesdefault.checked == true) { |
if (formname.makedatesdefault.checked == true) { |
opener.document.$callingform.makedatesdefault.value = 1; |
opener.document.$callingform.makedatesdefault.value = 1; |
Line 2529 END
|
Line 2598 END
|
} |
} |
|
|
END |
END |
|
} |
} |
} |
} |
} |
$output .= <<"END"; |
$output .= <<"END"; |
Line 2578 END
|
Line 2648 END
|
$date_items; |
$date_items; |
if ($context eq 'course' && $env{'form.bulkaction'} eq 'chgsec') { |
if ($context eq 'course' && $env{'form.bulkaction'} eq 'chgsec') { |
my ($cnum,$cdom) = &get_course_identity(); |
my ($cnum,$cdom) = &get_course_identity(); |
my %sections_count = |
|
&Apache::loncommon::get_sections($cdom,$cnum); |
|
my $info; |
my $info; |
if ($env{'form.showrole'} eq 'st') { |
if ($env{'form.showrole'} eq 'st') { |
$output .= '<p>'.$lt{'fors'}.'</p>'; |
$output .= '<p>'.$lt{'fors'}.'</p>'; |
} elsif ($env{'form.shorole'} eq 'Any') { |
} elsif ($env{'form.showrole'} eq 'Any') { |
$output .= '<p>'.$lt{'fors'}.'</p>'. |
$output .= '<p>'.$lt{'fors'}.'</p>'. |
'<p>'.$lt{'forn'}.' '; |
'<p>'.$lt{'forn'}.' '; |
$info = $lt{'reta'}; |
$info = $lt{'reta'}; |
Line 2604 END
|
Line 2672 END
|
} else { |
} else { |
$info = '<input type="hidden" name="retainsec" value="0" />'; |
$info = '<input type="hidden" name="retainsec" value="0" />'; |
} |
} |
my $sections_select .= &course_sections(\%sections_count,$env{'form.showrole'}); |
|
my $rowtitle = &mt('New section to assign'); |
my $rowtitle = &mt('New section to assign'); |
my $secbox = §ion_picker($cdom,$cnum,$env{'form.showrole'},$rowtitle,$permission,$context); |
my $secbox = §ion_picker($cdom,$cnum,$env{'form.showrole'},$rowtitle,$permission,$context); |
$output .= $info.$secbox; |
$output .= $info.$secbox; |
Line 2669 sub results_header_row {
|
Line 2736 sub results_header_row {
|
$description .= &mt('All users in course with [_1] roles',$rolefilter); |
$description .= &mt('All users in course with [_1] roles',$rolefilter); |
} |
} |
} |
} |
if (exists($permission->{'view_section'})) { |
my $viewablesec = &viewable_section($permission); |
|
if ($viewablesec ne '') { |
if ($env{'form.showrole'} eq 'st') { |
if ($env{'form.showrole'} eq 'st') { |
$description .= ' '.&mt('(section [_1] only)',$permission->{'view_section'}); |
$description .= ' '.&mt('(section [_1] only)',$viewablesec); |
} elsif ($env{'form.showrole'} eq 'any') { |
} elsif ($env{'form.showrole'} ne 'cc') { |
$description .= ' '.&mt('(section [_1] only)',$permission->{'view_section'}); |
$description .= ' '.&mt('(only users affiliated with no section or section [_1])',$viewablesec); |
} |
} |
} |
} |
} elsif ($context eq 'author') { |
} elsif ($context eq 'author') { |