--- loncom/interface/lonpickstudent.pm 2002/12/26 15:15:34 1.1 +++ loncom/interface/lonpickstudent.pm 2003/01/06 13:53:26 1.3 @@ -1,7 +1,7 @@ # The LearningOnline Network # Pick a student from the classlist # -# $Id: lonpickstudent.pm,v 1.1 2002/12/26 15:15:34 www Exp $ +# $Id: lonpickstudent.pm,v 1.3 2003/01/06 13:53:26 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -53,31 +53,67 @@ ENDDOCUMENT $r->print('Not in a course'); return OK; } + + unless (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { + $r->print('No course listing'); + return OK; + } + + &Apache::loncommon::get_unprocessed_cgi - ($ENV{'QUERY_STRING'},['filter']); + ($ENV{'QUERY_STRING'},['filter','form','unameelement','udomelement']); + my $filter=$ENV{'form.filter'}; + $filter=~s/\W//g; + unless ($filter) { $filter='.'; } - my $classlist=&Apache::loncoursedata::DownloadClasslist - ($ENV{'request.course.id'}, - 'Not downloaded',$r->connection); + my $classlist=&Apache::loncoursedata::get_classlist(); # --------------------------------------- There is such a user, get environment $r->print(&Apache::loncommon::bodytag("Selecting a User")); - - my $allowed=&Apache::lonnet::allowed('srm',$ENV{'request.course.id'}); - + $r->print(< +function gochoose(uname,udom) { + opener.document.$ENV{'form.form'}.$ENV{'form.unameelement'}.value=uname; + var slct=opener.document.$ENV{'form.form'}.$ENV{'form.udomelement'}; + var i; + for (i=0;i +ENDSCRIPT + + $r->print('

'.$ENV{'course.'.$ENV{'request.course.id'}.'.description'}. + '

'); + if ($filter ne '.') { + $r->print('Name starting with "'.$filter.'"
'); + } + $r->print('
'); foreach (sort keys %$classlist) { - if ($_=~/^(\w+)\:(\w+)\:studentInformation$/) { + # the following undefs are for 'domain', and 'username' respectively. + my (undef,undef,$end,$start,$id,$section,$fullname,$status)= + @{$classlist->{$_}}; + if ($_=~/^(\w+)\:(\w+)$/) { my ($uname,$udom)=($1,$2); - $r->print($classlist->{$_}->{'lastname'}.', '. - $classlist->{$_}->{'firstname'}.' '. - $classlist->{$_}->{'middlename'}.' '. - $classlist->{$_}->{'generation'}.'
'); + if (($uname=~/^$filter/) || + ($fullname=~/^$filter/i)) { + $r->print(''. + ''); + } } } - $r->print(''); + $r->print('
'. + ''.$uname.''.$udom. + ''. + &Apache::loncommon::aboutmewrapper( + $fullname, + $uname,$udom).''.$id.''.$section. + '
'); return OK; }