--- loncom/interface/lonpickstudent.pm 2011/06/07 20:18:59 1.30
+++ loncom/interface/lonpickstudent.pm 2023/09/28 15:56:48 1.34
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Pick a student from the classlist
#
-# $Id: lonpickstudent.pm,v 1.30 2011/06/07 20:18:59 www Exp $
+# $Id: lonpickstudent.pm,v 1.34 2023/09/28 15:56:48 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -50,18 +50,20 @@ sub handler {
&Apache::loncommon::get_unprocessed_cgi
($ENV{'QUERY_STRING'},['filter','form','unameelement','udomelement',
- 'roles','courseadvonly','clicker']);
+ 'roles','courseadv','clicker','identelement']);
# Allowed?
my $allowed;
- my $scope = $env{'request.course.id'};
- if (!($allowed = &Apache::lonnet::allowed('srm',$scope))) {
- $scope .= '/'.$env{'request.course.sec'};
- $allowed = &Apache::lonnet::allowed('srm',$scope);
- if ($allowed) { $allowed = 'section'; }
+ if ($env{'request.course.id'}) {
+ if (!($allowed = &Apache::lonnet::allowed('srm',$env{'request.course.id'}))) {
+ if ($env{'request.course.sec'}) {
+ $allowed = &Apache::lonnet::allowed('srm',
+ "$env{'request.course.id'}/$env{'request.course.sec'}");
+ if ($allowed) { $allowed = 'section'; }
+ }
+ }
}
- unless (($env{'form.roles'}) ||
- (($env{'request.course.id'}) && ($allowed))) {
+ unless (($env{'form.roles'}) || ($allowed)) {
$r->print(&mt('No context.').
&Apache::loncommon::end_page());
return OK;
@@ -77,16 +79,23 @@ sub handler {
FILTER
- foreach my $name ('form','unameelement','udomelement','roles') {
+ foreach my $name ('form','unameelement','udomelement','roles','courseadv','clicker','identelement') {
my $value = &HTML::Entities::encode($env{"form.$name"},'<>&"');
$filterbutton .= <
'.
- &mt('Showing users with a name starting with [_1]',
- $filterbutton).'
';
+ unless ($env{'form.courseadv'} eq 'only') {
+ if ($env{'request.course.id'}) {
+ my $crstype = &Apache::loncommon::course_type();
+ my $showrole = &Apache::lonnet::plaintext('st',$crstype);
+ $filtermsg = &mt("Showing users with role of '[_1]' with name starting: [_2]",
+ $showrole,$filterbutton);
+ } else {
+ $filtermsg =
+ &mt('Showing users with a name starting with [_1]',
+ $filterbutton);
+ }
}
if ($filter eq '') {
$filter = '.'
@@ -97,45 +106,74 @@ HIDDEN
$r->print(<
'.$filtermsg.'
'); + } $r->rflush(); - unless ($env{'form.courseadvonly'}) { + unless ($env{'form.courseadv'} eq 'only') { # ------------------------------------------------------------------ Students @@ -202,7 +240,7 @@ ENDSCRIPT } $result .=&Apache::loncommon::start_data_table_row(). '