Automated Enrollment Manager
@@ -1121,16 +1122,34 @@ onclick="javascript:document.photoupdate
}
my $status_select = &Apache::lonhtmlcommon::StatusOptions($env{'form.Status'});
# Get current classlist
- my ($classlist,$keylist)=&Apache::loncoursedata::get_classlist();
+ my %userlist;
+ my ($indexhash,$keylist) = &Apache::lonuserutils::make_keylist_array();
+ my $classlist = &Apache::loncoursedata::get_classlist();
+ my $secidx = &Apache::loncoursedata::CL_SECTION();
+ my ($permission,$allowed) = &Apache::lonuserutils::get_permission();
+ foreach my $student (keys(%{$classlist})) {
+ if (exists($permission->{'view_section'})) {
+ if ($classlist->{$student}[$secidx] ne $permission->{'view_section'}) {
+ next;
+ } else {
+ $userlist{$student} = $classlist->{$student};
+ }
+ } else {
+ $userlist{$student} = $classlist->{$student};
+ }
+ }
+
if (! defined($classlist)) {
- $r->print(&mt('There are no students either currently or previously enrolled.').
- "\n");
+ $r->print(&mt('There are no students either currently or previously enrolled.')."
+
+
\n");
} else {
$r->print(&mt('Student Status: [_1]',$status_select)."\n");
$r->print(''.
"\n\n");
-
- my ($studentcount,$autocount,$manualcount,$lockcount,$unlockcount) = &Apache::londropadd::show_class_list($r,'autoenroll','nothing',$env{'form.Status'},$classlist,$keylist);
+ my $context = 'course';
+ my $mode = 'autoenroll';
+ my ($studentcount,$autocount,$manualcount,$lockcount,$unlockcount) = &Apache::lonuserutils::show_users_list($r,$context,$mode,$permission,$env{'form.Status'},\%userlist,$keylist);
$r->print("
@@ -1185,6 +1204,14 @@ END
");
+ } else {
+ $r->print('
+
+
+ '.&mt('There are no students with the selected status.').'
+
+
+ ');
}
$r->print("
@@ -2689,7 +2716,7 @@ sub print_viewclass_response {
&Apache::loncommon::get_env_multiple('form.unlockchg'));
foreach my $student (sort @typechglist) {
- my ($uname,$udom) = split/:/,$student;
+ my ($uname,$udom) = split(/:/,$student);
my $sdata = $classlist->{$student};
my $section = $sdata->[$secidx];
my $uid = $sdata->[$ididx];
@@ -2727,7 +2754,7 @@ sub print_viewclass_response {
}
}
foreach my $student (@lockchglist) {
- my ($uname,$udom) = split/:/,$student;
+ my ($uname,$udom) = split(/:/,$student);
my $sdata = $classlist->{$student};
my $section = $sdata->[$secidx];
my $uid = $sdata->[$ididx];
@@ -2756,31 +2783,31 @@ sub print_viewclass_response {
}
}
if ($chgtotal > 0) {
- $response = "You requested a change in enrollment type for $chgtotal students.
\n";
+ $response = &mt('You requested a change in enrollment type for [quant,_1,student].',$chgtotal).'
'."\n";
$classlist = &Apache::loncoursedata::get_classlist($dom,$crs);
if ($chgok > 0) {
- $response .= "The following $chgok changes were successful: ";
+ $response .= &mt('The following [quant,_1,change was,changes were] successful;',$chgtotal).':
';
$response .= &enrolltype_result(\%chg,$classlist,$endidx,$startidx,$ididx,$secidx,$typeidx);
}
if ($chgfail > 0) {
- $response .= "The following $chgfail students were not modified successfully: ";
+ $response .= &mt('The following [quant,_1,student was,students were] not modified successfully',$chgfail).': ';
$response .= &enrolltype_result(\%nochg,$classlist,$endidx,$startidx,$ididx,$secidx,$typeidx);
}
if ($othdom > 0) {
- $response .= "The following $othdom students were not modified because students must be in the same LON-CAPA domain as the course, in order to be set to an enrollment type of 'auto': ";
+ $response .= &mt("The following [quant,_1,student was,students were] not modified because students must be in the same LON-CAPA domain as the course, in order to be set to an enrollment type of 'auto'",$othdom).': ';
$response .= &enrolltype_result(\%otherdom,$classlist,$endidx,$startidx,$ididx,$secidx,$typeidx);
}
$response .= "
";
}
if ($locktotal > 0) {
- $response .= "You requested locking/unlocking for $locktotal manually enrolled students.
'."\n";
$classlist = &Apache::loncoursedata::get_classlist($dom,$crs);
if ($lockok > 0) {
- $response .= "The following $lockok changes were successful: ";
+ $response .= &mt('The following [quant,_1,change was,changes were] successful',$lockok).':
';
$response .= &enrolltype_result(\%lockchg,$classlist,$endidx,$startidx,$ididx,$secidx,$typeidx,$lockedidx);
}
if ($lockfail > 0) {
- $response .= "The following $lockfail students were not modified successfully: ";
+ $response .= &mt('The following [quant,_1,student was,students were] not modified successfully',$lockfail).': ';
$response .= &enrolltype_result(\%nolockchg,$classlist,$endidx,$startidx,$ididx,$secidx,$typeidx,$lockedidx);
}
}
@@ -2790,9 +2817,8 @@ sub print_viewclass_response {
sub enrolltype_result {
my ($changes,$classlist,$endidx,$startidx,$ididx,$secidx,$typeidx,$lockedidx) = @_;
- my $reply = "
-
-
+ my $reply = &Apache::loncommon::start_data_table().
+ &Apache::loncommon::start_data_table_header_row().'
username
domain
ID
@@ -2800,11 +2826,11 @@ sub enrolltype_result {
section
start date
end date
-
enrollment change
-
";
- foreach (sort keys %{$changes}) {
- my $sdata = $classlist->{$_};
- my ($uname,$udom) = split/:/,$_;
+
enrollment change
'."\n".
+ &Apache::loncommon::end_data_table_header_row();
+ foreach my $chg (sort keys %{$changes}) {
+ my $sdata = $classlist->{$chg};
+ my ($uname,$udom) = split(/:/,$chg);
my $section = $sdata->[$secidx];
my $uid = $sdata->[$ididx];
my $start = $sdata->[$startidx];
@@ -2821,24 +2847,23 @@ sub enrolltype_result {
$end = &Apache::lonlocal::locallocaltime($end);
}
if (!defined($section) || ($section eq '')) {
- $section eq ' ';
+ $section = ' ';
}
if (!defined($uid) || ($uid eq '')) {
- $uid = ' ';
+ $uid = ' ';
}
- $reply .= "
-