--- loncom/interface/Attic/lonspreadsheet.pm 2001/10/17 21:11:22 1.70 +++ loncom/interface/Attic/lonspreadsheet.pm 2001/10/17 22:09:53 1.71 @@ -677,7 +677,11 @@ sub rown { } else { $defaultbg='#E0FF'; } - $rowdata.="\n$n"; + unless ($ENV{'form.showcsv'}) { + $rowdata.="\n$n"; + } else { + $rowdata.="\n".'"'.$n.'"'; + } my $showf=0; my $proc; my $maxred; @@ -700,6 +704,7 @@ sub rown { if ((($vl ne '') || ($vl eq '0')) && (($showf==1) || ($sheettype ne 'studentcalc'))) { $dataflag=1; } if ($showf==0) { $vl=$_; } + unless ($ENV{'form.showcsv'}) { if ($showf<=$maxred) { $bgcolor='#FFDDDD'; } if (($n==0) && ($showf<=26)) { $bgcolor='#CCCCFF'; } if (($showf>$maxred) || ((!$n) && ($showf>0))) { @@ -712,10 +717,13 @@ sub rown { } else { $rowdata.=' '.$vl.' '; } + } else { + $rowdata.=',"'.$vl.'"'; + } $showf++; } $safeeval->reval($proc.'('.$n.')'); if ($ENV{'form.showall'} || ($dataflag)) { - return $rowdata.''; + return $rowdata.($ENV{'form.showcsv'}?'':''); } else { return ''; } @@ -738,7 +746,9 @@ sub outsheet { $realm='Course'; } my $maxyellow=52-$maxred; - my $tabledata= + my $tabledata; + unless ($ENV{'form.showcsv'}) { + $tabledata= ''. '
'. $realm.'print($tabledata); + my $row; my $maxrow=&getmaxrow($safeeval); - $tabledata.=&rown($safeeval,'-').&rown($safeeval,0); - $r->print($tabledata); my @sortby=(); my @sortidx=(); @@ -783,7 +795,7 @@ sub outsheet { for ($row=0;$row<$maxrow;$row++) { my $thisrow=&rown($safeeval,$sortidx[$row]+1); if ($thisrow) { - if ($n/25==int($n/25)) { + if (($n/25==int($n/25)) && (!$ENV{'form.showcsv'})) { $r->print("
\n
\n"); $r->rflush(); $r->print(''); @@ -799,7 +811,7 @@ sub outsheet { $r->print($thisrow); } } - $r->print('
 '.$what.'
'); + $r->print($ENV{'form.showcsv'}?'':''); } # @@ -1141,13 +1153,19 @@ sub updateclasssheet { my ($sname,$sdom)=split(/\:/,$name); my $ssec=&Apache::lonnet::usection($sdom,$sname,$cid); if ($ssec==-1) { + unless ($ENV{'form.showcsv'}) { $rowlabel='Data not available: '.$name. ''; + } else { + $rowlabel='ERROR","'.$name. + '","Data not available","","","'; + } } else { my %reply=&Apache::lonnet::idrget($sdom,$sname); my $reply=&Apache::lonnet::reply('get:'.$sdom.':'.$sname. ':environment:firstname&middlename&lastname&generation', &Apache::lonnet::homeserver($sname,$sdom)); + unless ($ENV{'form.showcsv'}) { $rowlabel=''. $ssec.' '.$reply{$sname}.'
'; @@ -1155,6 +1173,16 @@ sub updateclasssheet { $rowlabel.=&Apache::lonnet::unescape($_).' '; } split(/\&/,$reply); $rowlabel.='
'; + } else { + $rowlabel=$ssec.'","'.$reply{$sname}.'"'; + my $ncount=0; + map { + $rowlabel.=',"'.&Apache::lonnet::unescape($_).'"'; + $ncount++; + } split(/\&/,$reply); + unless ($ncount==4) { $rowlabel.=',""'; } + $rowlabel=~s/\"$//; + } } $currentlist{&Apache::lonnet::unescape($name)}=$rowlabel; }