version 1.29, 2007/12/22 22:42:58
|
version 1.35, 2007/12/26 13:55:32
|
Line 304 sub print_upload_manager_header {
|
Line 304 sub print_upload_manager_header {
|
my $javascript_validations = |
my $javascript_validations = |
&javascript_validations('upload',$krbdefdom,$password_choice,undef, |
&javascript_validations('upload',$krbdefdom,$password_choice,undef, |
$env{'request.role.domain'},$context, |
$env{'request.role.domain'},$context, |
$permission,$groupslist); |
$groupslist); |
my $checked=(($env{'form.noFirstLine'})?' checked="checked" ':''); |
my $checked=(($env{'form.noFirstLine'})?' checked="checked" ':''); |
$r->print(&mt('Total number of records found in file: <b>[_1]</b>.',$distotal). |
$r->print(&mt('Total number of records found in file: <b>[_1]</b>.',$distotal). |
"<br />\n"); |
"<br />\n"); |
Line 332 sub print_upload_manager_header {
|
Line 332 sub print_upload_manager_header {
|
############################################################### |
############################################################### |
sub javascript_validations { |
sub javascript_validations { |
my ($mode,$krbdefdom,$curr_authtype,$curr_authfield,$domain, |
my ($mode,$krbdefdom,$curr_authtype,$curr_authfield,$domain, |
$context,$permission,$groupslist)=@_; |
$context,$groupslist)=@_; |
|
|
my %param = ( |
my %param = ( |
kerb_def_dom => $krbdefdom, |
kerb_def_dom => $krbdefdom, |
Line 1264 sub print_userlist {
|
Line 1264 sub print_userlist {
|
if ($env{'form.showrole'} eq 'Any') { |
if ($env{'form.showrole'} eq 'Any') { |
$roleselected = ' selected="selected" '; |
$roleselected = ' selected="selected" '; |
} |
} |
my $role_select; |
my ($role_select,$cnum,$cdom); |
if ($context eq 'domain') { |
if ($context eq 'domain') { |
$role_select = &domain_roles_select(); |
$role_select = &domain_roles_select(); |
$r->print('<label>'.&mt('Role Type: [_1]',$role_select).'</label>'); |
$r->print('<label>'.&mt('Role Type: [_1]',$role_select).'</label>'); |
Line 1288 sub print_userlist {
|
Line 1288 sub print_userlist {
|
} |
} |
$role_select .= '</select>'; |
$role_select .= '</select>'; |
$r->print('<label>'.&mt('Role: [_1]',$role_select).'</label>'); |
$r->print('<label>'.&mt('Role: [_1]',$role_select).'</label>'); |
|
if ($context eq 'course') { |
|
($cnum,$cdom) = &get_course_identity(); |
|
$r->print(§ion_group_filter($cnum,$cdom)); |
|
} |
} |
} |
if (!(($context eq 'domain') && ($env{'form.roletype'} eq 'course'))) { |
if (!(($context eq 'domain') && ($env{'form.roletype'} eq 'course'))) { |
$r->print(' '.&list_submit_button(&mt('Update Display')). |
$r->print(' '.&list_submit_button(&mt('Update Display')). |
Line 1307 sub print_userlist {
|
Line 1311 sub print_userlist {
|
&Apache::lonhtmlcommon::row_closure(1). |
&Apache::lonhtmlcommon::row_closure(1). |
&Apache::lonhtmlcommon::end_pick_box().'</p>'. |
&Apache::lonhtmlcommon::end_pick_box().'</p>'. |
'<p>'.&list_submit_button(&mt('Update Display')). |
'<p>'.&list_submit_button(&mt('Update Display')). |
"\n</p>\n"); |
"\n".'</p><span class="LC_warning">'.&mt('Warning: data retrieval for multiple courses can take considerable time, as this operation is not currently optimized.').'</span>'."\n"); |
if ($env{'form.coursepick'}) { |
if ($env{'form.coursepick'}) { |
$r->print('<hr />'.&mt('Searching').' ...<br /> <br />'); |
$r->print('<hr />'.&mt('Searching').' ...<br /> <br />'); |
} |
} |
Line 1331 sub print_userlist {
|
Line 1335 sub print_userlist {
|
$userlist{$student} = $classlist->{$student}; |
$userlist{$student} = $classlist->{$student}; |
} |
} |
} |
} |
my $cid = $env{'request.course.id'}; |
|
my ($cnum,$cdom) = &get_course_identity($cid); |
|
my $showroles; |
my $showroles; |
if ($env{'form.showrole'} ne 'Any') { |
if ($env{'form.showrole'} ne 'Any') { |
$showroles = [$env{'form.showrole'}]; |
$showroles = [$env{'form.showrole'}]; |
Line 1468 sub print_userlist {
|
Line 1470 sub print_userlist {
|
$env{'form.phase'}.'" /></form>'); |
$env{'form.phase'}.'" /></form>'); |
} |
} |
|
|
|
sub section_group_filter { |
|
my ($cnum,$cdom) = @_; |
|
my @filters; |
|
if ($env{'request.course.sec'} eq '') { |
|
@filters = ('sec'); |
|
} |
|
push(@filters,'grp'); |
|
my %name = ( |
|
sec => 'secfilter', |
|
grp => 'grpfilter', |
|
); |
|
my %title = &Apache::lonlocal::texthash ( |
|
sec => 'Section(s)', |
|
grp => 'Group(s)', |
|
all => 'all', |
|
none => 'none', |
|
); |
|
my ($output,@options); |
|
foreach my $item (@filters) { |
|
my $markup; |
|
if ($env{'form.'.$name{$item}} eq '') { |
|
$env{'form.'.$name{$item}} = 'all'; |
|
} |
|
if ($item eq 'sec') { |
|
if ($env{'form.showrole'} eq 'cc') { |
|
$env{'form.'.$name{$item}} = 'none'; |
|
} |
|
my %sections_count = &Apache::loncommon::get_sections($cdom,$cnum); |
|
@options = sort(keys(%sections_count)); |
|
} elsif ($item eq 'grp') { |
|
my %curr_groups = &Apache::longroup::coursegroups(); |
|
@options = sort(keys(%curr_groups)); |
|
} |
|
if (@options > 0) { |
|
my $currsel; |
|
$markup = '<select name="'.$name{$item}.'" />'."\n"; |
|
foreach my $option ('all','none',@options) { |
|
$currsel = ''; |
|
if ($env{'form.'.$name{$item}} eq $option) { |
|
$currsel = ' selected="selected" '; |
|
} |
|
$markup .= ' <option value="'.$option.'"'.$currsel.'>'; |
|
if (($option eq 'all') || ($option eq 'none')) { |
|
$markup .= $title{$option}; |
|
} else { |
|
$markup .= $option; |
|
} |
|
$markup .= '</option>'."\n"; |
|
} |
|
$markup .= '</select>'."\n"; |
|
$output .= (' 'x3).'<label>'.$title{$item}.': '.$markup.'</label>'; |
|
} |
|
} |
|
return $output; |
|
} |
|
|
sub list_submit_button { |
sub list_submit_button { |
my ($text) = @_; |
my ($text) = @_; |
return '<input type="button" name="updatedisplay" value="'.$text.'" onclick="javascript:display_update()" />'; |
return '<input type="button" name="updatedisplay" value="'.$text.'" onclick="javascript:display_update()" />'; |
Line 2047 END
|
Line 2105 END
|
$env{'request.role.domain'})) { |
$env{'request.role.domain'})) { |
$canchange{$role} = 1; |
$canchange{$role} = 1; |
} |
} |
|
} elsif ($setting eq 'author') { |
|
if (&Apache::lonnet::allowed('c'.$role, |
|
$env{'request.role.domain'})) { |
|
$canchange{$role} = 1; |
|
} |
} |
} |
} elsif ($context eq 'author') { |
} elsif ($context eq 'author') { |
if (&Apache::lonnet::allowed('c'.$role, |
if (&Apache::lonnet::allowed('c'.$role, |
Line 2158 END
|
Line 2221 END
|
$index{$idx} = $i++; |
$index{$idx} = $i++; |
} |
} |
my $usercount = 0; |
my $usercount = 0; |
|
my ($secfilter,$grpfilter); |
|
if ($context eq 'course') { |
|
$secfilter = $env{'form.secfilter'}; |
|
$grpfilter = $env{'form.grpfilter'}; |
|
if ($secfilter eq '') { |
|
$secfilter = 'all'; |
|
} |
|
if ($grpfilter eq '') { |
|
$grpfilter = 'all'; |
|
} |
|
} |
# Get groups, role, permanent e-mail so we can sort on them if |
# Get groups, role, permanent e-mail so we can sort on them if |
# necessary. |
# necessary. |
foreach my $user (keys(%{$userlist})) { |
foreach my $user (keys(%{$userlist})) { |
Line 2195 END
|
Line 2269 END
|
delete($userlist->{$user}); |
delete($userlist->{$user}); |
next; |
next; |
} |
} |
if (ref($classgroups) eq 'HASH') { |
if ($context eq 'course') { |
$groups = $classgroups->{$user}; |
my @ac_groups; |
} |
if (ref($classgroups) eq 'HASH') { |
if (ref($groups->{active}) eq 'HASH') { |
$groups = $classgroups->{$user}; |
$userlist->{$user}->[$index{'groups'}] = join(', ',keys(%{$groups->{'active'}})); |
} |
|
if (ref($groups->{'active'}) eq 'HASH') { |
|
@ac_groups = keys(%{$groups->{'active'}}); |
|
$userlist->{$user}->[$index{'groups'}] = join(', ',@ac_groups); |
|
} |
|
if ($mode ne 'autoenroll') { |
|
my $section = $userlist->{$user}->[$index{'section'}]; |
|
if ($secfilter eq 'none') { |
|
if ($section ne '') { |
|
delete($userlist->{$user}); |
|
next; |
|
} |
|
} elsif ($secfilter ne 'all') { |
|
if ($section ne $secfilter) { |
|
delete($userlist->{$user}); |
|
next; |
|
} |
|
} |
|
if ($grpfilter eq 'none') { |
|
if (@ac_groups > 0) { |
|
delete($userlist->{$user}); |
|
next; |
|
} |
|
} elsif ($grpfilter ne 'all') { |
|
if (!grep(/^\Q$grpfilter\E$/,@ac_groups)) { |
|
delete($userlist->{$user}); |
|
next; |
|
} |
|
} |
|
} |
} |
} |
my %emails = &Apache::loncommon::getemails($uname,$udom); |
my %emails = &Apache::loncommon::getemails($uname,$udom); |
if ($emails{'permanentemail'} =~ /\S/) { |
if ($emails{'permanentemail'} =~ /\S/) { |
Line 2736 sub results_header_row {
|
Line 2839 sub results_header_row {
|
$description .= &mt('All users in course with [_1] roles',$rolefilter); |
$description .= &mt('All users in course with [_1] roles',$rolefilter); |
} |
} |
} |
} |
|
my $constraint; |
my $viewablesec = &viewable_section($permission); |
my $viewablesec = &viewable_section($permission); |
if ($viewablesec ne '') { |
if ($viewablesec ne '') { |
if ($env{'form.showrole'} eq 'st') { |
if ($env{'form.showrole'} eq 'st') { |
$description .= ' '.&mt('(section [_1] only)',$viewablesec); |
$constraint = &mt('only users in section "[_1]"',$viewablesec); |
} elsif ($env{'form.showrole'} ne 'cc') { |
} elsif ($env{'form.showrole'} ne 'cc') { |
$description .= ' '.&mt('(only users affiliated with no section or section [_1])',$viewablesec); |
$constraint = &mt('only users affiliated with no section or section "[_1]"',$viewablesec); |
|
} |
|
if (($env{'form.grpfilter'} ne 'all') && ($env{'form.grpfilter'} ne '')) { |
|
if ($env{'form.grpfilter'} eq 'none') { |
|
$constraint .= &mt(' and not in any group'); |
|
} else { |
|
$constraint .= &mt(' and members of group: "[_1]"',$env{'form.grpfilter'}); |
|
} |
|
} |
|
} else { |
|
if (($env{'form.secfilter'} ne 'all') && ($env{'form.secfilter'} ne '')) { |
|
if ($env{'form.secfilter'} eq 'none') { |
|
$constraint = &mt('only users affiliated with no section'); |
|
} else { |
|
$constraint = &mt('only users affiliated with section "[_1]"',$env{'form.secfilter'}); |
|
} |
|
} |
|
if (($env{'form.grpfilter'} ne 'all') && ($env{'form.grpfilter'} ne '')) { |
|
if ($env{'form.grpfilter'} eq 'none') { |
|
if ($constraint eq '') { |
|
$constraint = &mt('only users not in any group'); |
|
} else { |
|
$constraint .= &mt(' and also not in any group'); |
|
} |
|
} else { |
|
if ($constraint eq '') { |
|
$constraint = &mt('only members of group: "[_1]"',$env{'form.grpfilter'}); |
|
} else { |
|
$constraint .= &mt(' and also members of group: "[_1]"'.$env{'form.grpfilter'}); |
|
} |
|
} |
} |
} |
} |
} |
|
if ($constraint ne '') { |
|
$description .= ' ('.$constraint.')'; |
|
} |
} elsif ($context eq 'author') { |
} elsif ($context eq 'author') { |
$description = |
$description = |
&mt('Author space for <span class="LC_cusr_emph">[_1]</span>', |
&mt('Author space for <span class="LC_cusr_emph">[_1]</span>', |
Line 2841 sub viewable_section {
|
Line 2978 sub viewable_section {
|
################################################# |
################################################# |
################################################# |
################################################# |
sub show_drop_list { |
sub show_drop_list { |
my ($r,$classlist,$keylist,$nosort,$permission) = @_; |
my ($r,$classlist,$nosort,$permission) = @_; |
my $cid = $env{'request.course.id'}; |
my $cid = $env{'request.course.id'}; |
my ($cnum,$cdom) = &get_course_identity($cid); |
my ($cnum,$cdom) = &get_course_identity($cid); |
if (! exists($env{'form.sortby'})) { |
if (! exists($env{'form.sortby'})) { |
Line 2852 sub show_drop_list {
|
Line 2989 sub show_drop_list {
|
if ($sortby !~ /^(username|domain|section|groups|fullname|id|start|end)$/) { |
if ($sortby !~ /^(username|domain|section|groups|fullname|id|start|end)$/) { |
$sortby = 'username'; |
$sortby = 'username'; |
} |
} |
my ($classgroups) = &Apache::loncoursedata::get_group_memberships( |
|
$classlist,$keylist,$cdom,$cnum); |
|
# |
|
my $action = "drop"; |
my $action = "drop"; |
my $check_uncheck_js = &Apache::loncommon::check_uncheck_jscript(); |
my $check_uncheck_js = &Apache::loncommon::check_uncheck_jscript(); |
$r->print(<<END); |
$r->print(<<END); |
Line 2867 $check_uncheck_js
|
Line 3001 $check_uncheck_js
|
<p> |
<p> |
<input type="hidden" name="phase" value="four"> |
<input type="hidden" name="phase" value="four"> |
END |
END |
|
my ($indexhash,$keylist) = &make_keylist_array(); |
my %lt=&Apache::lonlocal::texthash('usrn' => "username", |
my $studentcount = 0; |
'dom' => "domain", |
if (ref($classlist) eq 'HASH') { |
'sn' => "student name", |
foreach my $student (keys(%{$classlist})) { |
'sec' => "section", |
my $sdata = $classlist->{$student}; |
'start' => "start date", |
my $status = $sdata->[$indexhash->{'status'}]; |
'end' => "end date", |
my $section = $sdata->[$indexhash->{'section'}]; |
'groups' => "active groups", |
if ($status ne 'Active') { |
); |
delete($classlist->{$student}); |
|
next; |
|
} |
|
if ($env{'request.course.sec'} ne '') { |
|
if ($section ne $env{'request.course.sec'}) { |
|
delete($classlist->{$student}); |
|
next; |
|
} |
|
} |
|
$studentcount ++; |
|
} |
|
} |
|
if (!$studentcount) { |
|
$r->print(&mt('There are no students to drop.')); |
|
return; |
|
} |
|
my ($classgroups) = &Apache::loncoursedata::get_group_memberships( |
|
$classlist,$keylist,$cdom,$cnum); |
|
my %lt=&Apache::lonlocal::texthash('usrn' => "username", |
|
'dom' => "domain", |
|
'sn' => "student name", |
|
'sec' => "section", |
|
'start' => "start date", |
|
'end' => "end date", |
|
'groups' => "active groups", |
|
); |
if ($nosort) { |
if ($nosort) { |
$r->print(&Apache::loncommon::start_data_table(). |
$r->print(&Apache::loncommon::start_data_table(). |
&Apache::loncommon::start_data_table_header_row()); |
&Apache::loncommon::start_data_table_header_row()); |
Line 2918 END
|
Line 3077 END
|
} |
} |
# |
# |
# Sort the students |
# Sort the students |
my %index; |
my $index = $indexhash->{$sortby}; |
my $i; |
my $second = $indexhash->{'username'}; |
foreach (@$keylist) { |
my $third = $indexhash->{'domain'}; |
$index{$_} = $i++; |
|
} |
|
$index{'groups'} = scalar(@$keylist); |
|
my $index = $index{$sortby}; |
|
my $second = $index{'username'}; |
|
my $third = $index{'domain'}; |
|
my @Sorted_Students = sort { |
my @Sorted_Students = sort { |
lc($classlist->{$a}->[$index]) cmp lc($classlist->{$b}->[$index]) |
lc($classlist->{$a}->[$index]) cmp lc($classlist->{$b}->[$index]) |
|| |
|| |
lc($classlist->{$a}->[$second]) cmp lc($classlist->{$b}->[$second]) |
lc($classlist->{$a}->[$second]) cmp lc($classlist->{$b}->[$second]) |
|| |
|| |
lc($classlist->{$a}->[$third]) cmp lc($classlist->{$b}->[$third]) |
lc($classlist->{$a}->[$third]) cmp lc($classlist->{$b}->[$third]) |
} (keys(%$classlist)); |
} (keys(%{$classlist})); |
foreach my $student (@Sorted_Students) { |
foreach my $student (@Sorted_Students) { |
my $error; |
my $error; |
my $sdata = $classlist->{$student}; |
my $sdata = $classlist->{$student}; |
my $username = $sdata->[$index{'username'}]; |
my $username = $sdata->[$indexhash->{'username'}]; |
my $domain = $sdata->[$index{'domain'}]; |
my $domain = $sdata->[$indexhash->{'domain'}]; |
my $section = $sdata->[$index{'section'}]; |
my $section = $sdata->[$indexhash->{'section'}]; |
my $name = $sdata->[$index{'fullname'}]; |
my $name = $sdata->[$indexhash->{'fullname'}]; |
my $id = $sdata->[$index{'id'}]; |
my $id = $sdata->[$indexhash->{'id'}]; |
my $start = $sdata->[$index{'start'}]; |
my $start = $sdata->[$indexhash->{'start'}]; |
my $end = $sdata->[$index{'end'}]; |
my $end = $sdata->[$indexhash->{'end'}]; |
my $groups = $classgroups->{$student}; |
my $groups = $classgroups->{$student}; |
my $active_groups; |
my $active_groups; |
if (ref($groups->{active}) eq 'HASH') { |
if (ref($groups->{active}) eq 'HASH') { |
Line 2959 END
|
Line 3112 END
|
} else { |
} else { |
$end = &Apache::lonlocal::locallocaltime($end); |
$end = &Apache::lonlocal::locallocaltime($end); |
} |
} |
my $status = $sdata->[$index{'status'}]; |
|
next if ($status ne 'Active'); |
|
if ($env{'request.course.sec'} ne '') { |
|
if ($section ne $env{'request.course.sec'}) { |
|
next; |
|
} |
|
} |
|
my $studentkey = $student.':'.$section; |
my $studentkey = $student.':'.$section; |
my $startitem = '<input type="hidden" name="'.$studentkey.'_start" value="'.$sdata->[$index{'start'}].'" />'; |
my $startitem = '<input type="hidden" name="'.$studentkey.'_start" value="'.$sdata->[$indexhash->{'start'}].'" />'; |
# |
# |
$r->print(&Apache::loncommon::start_data_table_row()); |
$r->print(&Apache::loncommon::start_data_table_row()); |
$r->print(<<"END"); |
$r->print(<<"END"); |
Line 3534 sub upfile_drop_add {
|
Line 3680 sub upfile_drop_add {
|
if ($env{'form.fullup'} eq 'yes') { |
if ($env{'form.fullup'} eq 'yes') { |
$r->print('<h3>'.&mt('Students to Drop')."</h3>\n"); |
$r->print('<h3>'.&mt('Students to Drop')."</h3>\n"); |
# Get current classlist |
# Get current classlist |
my ($classlist,$keylist)=&Apache::loncoursedata::get_classlist(); |
my $classlist = &Apache::loncoursedata::get_classlist(); |
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'}.'" />'. |
Line 3542 sub upfile_drop_add {
|
Line 3688 sub upfile_drop_add {
|
'</form>'."\n"); |
'</form>'."\n"); |
} else { |
} else { |
# Remove the students we just added from the list of students. |
# Remove the students we just added from the list of students. |
foreach (@userdata) { |
foreach my $line (@userdata) { |
my %entries=&Apache::loncommon::record_sep($_); |
my %entries=&Apache::loncommon::record_sep($line); |
unless (($entries{$fields{'username'}} eq '') || |
unless (($entries{$fields{'username'}} eq '') || |
(!defined($entries{$fields{'username'}}))) { |
(!defined($entries{$fields{'username'}}))) { |
delete($classlist->{$entries{$fields{'username'}}. |
delete($classlist->{$entries{$fields{'username'}}. |
Line 3551 sub upfile_drop_add {
|
Line 3697 sub upfile_drop_add {
|
} |
} |
} |
} |
# Print out list of dropped students. |
# Print out list of dropped students. |
&show_drop_list($r,$classlist,$keylist,'nosort',$permission); |
&show_drop_list($r,$classlist,'nosort',$permission); |
} |
} |
} |
} |
} # end of unless |
} # end of unless |
Line 3654 sub print_drop_menu {
|
Line 3800 sub print_drop_menu {
|
my ($r,$context,$permission) = @_; |
my ($r,$context,$permission) = @_; |
$r->print('<h3>'.&mt("Drop Students").'</h3>'."\n". |
$r->print('<h3>'.&mt("Drop Students").'</h3>'."\n". |
'<form name="studentform" method="post">'."\n"); |
'<form name="studentform" method="post">'."\n"); |
my $cid=$env{'request.course.id'}; |
my $classlist = &Apache::loncoursedata::get_classlist(); |
my ($classlist,$keylist) = &Apache::loncoursedata::get_classlist(); |
|
if (! defined($classlist)) { |
if (! defined($classlist)) { |
$r->print(&mt('There are no students currently enrolled.')."\n"); |
$r->print(&mt('There are no students currently enrolled.')."\n"); |
return; |
} else { |
|
&show_drop_list($r,$classlist,'nosort',$permission); |
} |
} |
# Print out the available choices |
|
&show_drop_list($r,$classlist,$keylist,$permission); |
|
$r->print('</form>'. &Apache::loncommon::end_page()); |
$r->print('</form>'. &Apache::loncommon::end_page()); |
return; |
return; |
} |
} |
Line 3876 sub update_user_list {
|
Line 4020 sub update_user_list {
|
$plrole,$extent,$uname.':'.$udom,$result).'<br />'); |
$plrole,$extent,$uname.':'.$udom,$result).'<br />'); |
} |
} |
} |
} |
|
$r->print('<form name="studentform" method="post" action="/adm/createuser">'."\n"); |
|
if ($choice eq 'drop') { |
|
$r->print('<input type="hidden" name="action" value="listusers" />'."\n". |
|
'<input type="hidden" name="Status" value="Active" />'."\n". |
|
'<input type="hidden" name="showrole" value="st" />'."\n"); |
|
} else { |
|
foreach my $item ('action','sortby','roletype','showrole','Status','secfilter','grpfilter') { |
|
if ($env{'form.'.$item} ne '') { |
|
$r->print('<input type="hidden" name="'.$item.'" value="'.$env{'form.'.$item}. |
|
'" />'."\n"); |
|
} |
|
} |
|
} |
$r->print('<p><b>'.&mt("$result_text{'ok'}{$choice} role(s) for [quant,_1,user,users,no users].",$count).'</b></p>'); |
$r->print('<p><b>'.&mt("$result_text{'ok'}{$choice} role(s) for [quant,_1,user,users,no users].",$count).'</b></p>'); |
if ($count > 0) { |
if ($count > 0) { |
if ($choice eq 'revoke' || $choice eq 'drop') { |
if ($choice eq 'revoke' || $choice eq 'drop') { |
Line 3889 sub update_user_list {
|
Line 4046 sub update_user_list {
|
$r->print(&make_dates_default($startdate,$enddate,$context)); |
$r->print(&make_dates_default($startdate,$enddate,$context)); |
} |
} |
} |
} |
|
my $linktext = &mt('Display User Lists'); |
|
if ($choice eq 'drop') { |
|
$linktext = &mt('Display current class roster'); |
|
} |
|
$r->print('<a href="javascript:document.studentform.submit()">'.$linktext.'</a></form>'."\n"); |
} |
} |
|
|
sub classlist_drop { |
sub classlist_drop { |