version 1.21, 2002/05/27 00:24:05
|
version 1.22, 2002/05/29 17:58:45
|
Line 749 sub usection {
|
Line 749 sub usection {
|
my ($udom,$unam,$courseid,$ActiveFlag)=@_; |
my ($udom,$unam,$courseid,$ActiveFlag)=@_; |
$courseid=~s/\_/\//g; |
$courseid=~s/\_/\//g; |
$courseid=~s/^(\w)/\/$1/; |
$courseid=~s/^(\w)/\/$1/; |
foreach (split(/\&/,&Apache::lonnet::reply('dump:'. |
|
$udom.':'.$unam.':roles', |
my %result=&Apache::lonnet::dump('roles',$udom,$unam); |
&Apache::lonnet::homeserver($unam,$udom)))){ |
foreach my $key (keys (%result)) { |
my ($key,$value)=split(/\=/,$_); |
my $value=$result{$key}; |
$key=&Apache::lonnet::unescape($key); |
|
if ($key=~/^$courseid(?:\/)*(\w+)*\_st$/) { |
if ($key=~/^$courseid(?:\/)*(\w+)*\_st$/) { |
my $section=$1; |
my $section=$1; |
if ($key eq $courseid.'_st') { $section=''; } |
if ($key eq $courseid.'_st') { $section=''; } |
my ($dummy,$end,$start)=split(/\_/,&Apache::lonnet::unescape($value)); |
my ($dummy,$end,$start)=split(/\_/,$value); |
if ( $ActiveFlag ne 'Any' ) { |
if ( $ActiveFlag ne 'Any' ) { |
my $now=time; |
my $now=time; |
my $notactive=0; |
my $notactive=0; |
Line 1401 sub ClassList {
|
Line 1400 sub ClassList {
|
&GetStatus(); |
&GetStatus(); |
|
|
$cid=$ENV{'request.course.id'}; |
$cid=$ENV{'request.course.id'}; |
my $chome=$ENV{'course.'.$cid.'.home'}; |
|
my ($cdom,$cnum)=split(/\_/,$cid); |
my ($cdom,$cnum)=split(/\_/,$cid); |
# ----------------------- Get first and last resource, see if there is anything |
# ----------------------- Get first and last resource, see if there is anything |
$firstres=$hash{'map_start_/res/'.$ENV{'request.course.uri'}}; |
$firstres=$hash{'map_start_/res/'.$ENV{'request.course.uri'}}; |
Line 1418 sub ClassList {
|
Line 1416 sub ClassList {
|
# foreach my $KeyPoint(sort keys(%students)) { |
# foreach my $KeyPoint(sort keys(%students)) { |
|
|
|
|
my $classlst=&Apache::lonnet::reply('dump:'.$cdom.':'.$cnum.':classlist',$chome); |
my %classlist=&Apache::lonnet::dump('classlist',$cdom,$cnum); |
|
|
my $StudNo = 0; |
my $StudNo = 0; |
my $now=time; |
my $now=time; |
unless ($classlst=~/^error\:/) { |
foreach my $name (keys (%classlist)) { |
foreach my $KeyPoint(sort split(/\&/,$classlst)) { |
my $value=$classlist{$name}; |
my ($name,$value)=split(/\=/,$KeyPoint); |
my ($end,$start)=split(/\:/,$value); |
my ($end,$start)=split(/\:/,&Apache::lonnet::unescape($value)); |
my $active=1; |
my $active=1; |
my $Status=$ENV{'form.status'}; |
my $Status=$ENV{'form.status'}; |
$Status = ($Status) ? $Status : 'Active'; |
$Status = ($Status) ? $Status : 'Active'; |
if ( ( ($end) && $now > $end ) && |
if ( ( ($end) && $now > $end ) && |
( ($Status eq 'Active') ) ) { $active=0; } |
( ($Status eq 'Active') ) ) { $active=0; } |
if ( ($Status eq 'Expired') && |
|
($end == 0 || $now < $end) ) { $active=0; } |
if ( ($Status eq 'Expired') && |
if ($active) { |
($end == 0 || $now < $end) ) { $active=0; } |
my $thisindex=$#students+1; |
|
$students[$thisindex]=$name; |
if ($active) { |
my ($sname,$sdom)=split(/\:/,$name); |
my $thisindex=$#students+1; |
my $ssec=&usection($sdom,$sname,$cid,$Status); |
$name=&Apache::lonnet::unescape($name); |
if ($ssec==-1 || $ssec eq 'adm' ) {next;} |
$students[$thisindex]=$name; |
$ssec=($ssec) ? $ssec : '(none)'; |
my ($sname,$sdom)=split(/\:/,$name); |
#$ssec=(int($ssec)) ? int($ssec) : $ssec; |
my $ssec=&usection($sdom,$sname,$cid,$Status); |
$section{$ssec}=$ssec; |
if ($ssec==-1 || $ssec eq 'adm' ) {next;} |
if ($CurSec eq 'All Sections' || $ssec eq $CurSec) { |
$ssec=($ssec) ? $ssec : '(none)'; |
$students[$StudNo]=$name; |
#$ssec=(int($ssec)) ? int($ssec) : $ssec; |
$StuBox{$sname}=$sdom; |
$section{$ssec}=$ssec; |
} |
if ($CurSec eq 'All Sections' || $ssec eq $CurSec) { |
$StudNo++; |
$students[$StudNo]=$name; |
|
$StuBox{$sname}=$sdom; |
|
} |
|
$StudNo++; |
|
} |
|
} |
} |
} |
} |
else { |
|
$r->print('<h1>Could not access course data</h1>'); |
|
} |
|
$r->print("Total number of students : ".($#students+1)); |
$r->print("Total number of students : ".($#students+1)); |
$r->rflush(); |
$r->rflush(); |
# --------------- Find all assessments and put them into some linear-like order |
# --------------- Find all assessments and put them into some linear-like order |