version 1.82, 2002/04/09 18:41:11
|
version 1.83, 2002/04/10 15:30:13
|
Line 774 sub outrowassess {
|
Line 774 sub outrowassess {
|
'n','o','p','q','r','s','t','u','v','w','x','y','z') { |
'n','o','p','q','r','s','t','u','v','w','x','y','z') { |
my $fm=$f{$_.$n}; |
my $fm=$f{$_.$n}; |
$fm=~s/[\'\"]/\&\#34;/g; |
$fm=~s/[\'\"]/\&\#34;/g; |
$cols[$#cols+1]="'$_$n','$fm'".'___eq___'.$v{$_.$n}; |
push(@cols,"'$_$n','$fm'".'___eq___'.$v{$_.$n}); |
} |
} |
return @cols; |
return @cols; |
} |
} |
Line 1189 sub readsheet {
|
Line 1189 sub readsheet {
|
my $cdom=&getcdom($safeeval); |
my $cdom=&getcdom($safeeval); |
my $chome=&getchome($safeeval); |
my $chome=&getchome($safeeval); |
|
|
if (! defined($fn) || $fn eq '') { |
if (! defined($fn)) { |
# There is no filename. Look for defaults in course and global, cache |
# There is no filename. Look for defaults in course and global, cache |
unless ($fn=$defaultsheets{$cnum.'_'.$cdom.'_'.$stype}) { |
unless ($fn=$defaultsheets{$cnum.'_'.$cdom.'_'.$stype}) { |
my %tmphash = &Apache::lonnet::get('environment', |
my %tmphash = &Apache::lonnet::get('environment', |
Line 1203 sub readsheet {
|
Line 1203 sub readsheet {
|
} |
} |
$defaultsheets{$cnum.'_'.$cdom.'_'.$stype}=$fn; |
$defaultsheets{$cnum.'_'.$cdom.'_'.$stype}=$fn; |
} |
} |
} else { |
|
# We do have a filename, do a get on it. |
|
my %tmphash = &Apache::lonnet::get('environment', |
|
[$fn], |
|
$cdom,$cnum); |
|
my ($tmp) = keys(%tmphash); |
|
if ($tmp =~ /^(con_lost|error|no_such_host)/i) { |
|
# On error, grab the default filename |
|
$fn = 'default_'.$stype; |
|
} else { |
|
$fn = $tmphash{$fn}; |
|
} |
|
$defaultsheets{$cnum.'_'.$cdom.'_'.$stype}=$fn; |
|
} |
} |
|
|
# ---------------------------------------------------------- fn now has a value |
# ---------------------------------------------------------- fn now has a value |
Line 1242 sub readsheet {
|
Line 1229 sub readsheet {
|
} else { |
} else { |
$sheetxml='<field row="0" col="A">"Error"</field>'; |
$sheetxml='<field row="0" col="A">"Error"</field>'; |
} |
} |
%f=&parse_sheet(\$sheetxml); |
%f=%{&parse_sheet(\$sheetxml)}; |
} elsif($fn=~/\/*\.spreadsheet$/) { |
} elsif($fn=~/\/*\.spreadsheet$/) { |
my $sheetxml=''; |
my $sheetxml=&Apache::lonnet::getfile |
my $fh; |
(&Apache::lonnet::filelocation('',$fn)); |
my $dfn=$fn; |
print "<pre>$sheetxml</pre>"; |
$dfn=~s/\_/\./g; |
if ($sheetxml == -1) { |
|
|
if ($fn !~ /^$Apache::lonnet::perlvar{'lonDocRoot'}\/res/) { |
|
$fn = $Apache::lonnet::perlvar{'lonDocRoot'}.'/res'.$fn; |
|
} |
|
if ($fn !~ /^$Apache::lonnet::perlvar{'lonDocRoot'}/) { |
|
$fn = $Apache::lonnet::perlvar{'lonDocRoot'}.$fn; |
|
} |
|
if ($fh=Apache::File->new($fn)) { |
|
$sheetxml=join('',<$fh>); |
|
} else { |
|
$sheetxml='<field row="0" col="A">"Error loading spreadsheet ' |
$sheetxml='<field row="0" col="A">"Error loading spreadsheet ' |
.$fn.'"</field>'; |
.$fn.'"</field>'; |
} |
} |
%f=&parse_sheet(\$sheetxml); |
%f=%{&parse_sheet(\$sheetxml)}; |
|
print "<pre>"; |
|
foreach (sort( keys(%f))) { |
|
print "$_ = $f{$_}\n"; |
|
} |
|
print "</pre>"; |
} else { |
} else { |
my $sheet=''; |
my $sheet=''; |
my %tmphash = &Apache::lonnet::dump($fn,$cdom,$cnum); |
my %tmphash = &Apache::lonnet::dump($fn,$cdom,$cnum); |