version 1.32, 2003/12/08 19:43:03
|
version 1.33, 2004/01/14 16:47:39
|
Line 160 sub filename {
|
Line 160 sub filename {
|
if ($newfilename !~ /\w/ || $newfilename =~ /^\W*$/) { |
if ($newfilename !~ /\w/ || $newfilename =~ /^\W*$/) { |
$newfilename = 'default_'.$self->{'type'}; |
$newfilename = 'default_'.$self->{'type'}; |
} |
} |
if ($newfilename !~ /^default\.$self->{'type'}$/ ) { |
if ($newfilename !~ /^default\.$self->{'type'}$/ && |
|
$newfilename !~ /^\/res\/(.*)spreadsheet$/) { |
if ($newfilename !~ /_$self->{'type'}$/) { |
if ($newfilename !~ /_$self->{'type'}$/) { |
$newfilename =~ s/[\s_]*$//; |
$newfilename =~ s/[\s_]*$//; |
$newfilename .= '_'.$self->{'type'}; |
$newfilename .= '_'.$self->{'type'}; |
Line 1209 sub display {
|
Line 1210 sub display {
|
} elsif ($outputmode eq 'csv') { |
} elsif ($outputmode eq 'csv') { |
$self->compute($r); |
$self->compute($r); |
$self->outsheet_csv($r); |
$self->outsheet_csv($r); |
|
} elsif ($outputmode eq 'xml') { |
|
# $self->compute($r); |
|
$self->outsheet_xml($r); |
} |
} |
$self->cleanup(); |
$self->cleanup(); |
return; |
return; |
Line 1356 sub output_options {
|
Line 1360 sub output_options {
|
description => 'HTML'}, |
description => 'HTML'}, |
{value => 'excel', |
{value => 'excel', |
description => 'Excel'}, |
description => 'Excel'}, |
|
# {value => 'xml', |
|
# description => 'XML'}, |
{value => 'csv', |
{value => 'csv', |
description => 'Comma Separated Values'},); |
description => 'Comma Separated Values'},); |
} |
} |
Line 1555 sub outsheet_xml {
|
Line 1561 sub outsheet_xml {
|
my $col = $1; |
my $col = $1; |
$Str .= '<template col="'.$col.'">'.$formula.'</template>'."\n"; |
$Str .= '<template col="'.$col.'">'.$formula.'</template>'."\n"; |
} else { |
} else { |
my ($row,$col) = ($cell =~ /^([A-z])(\d+)/); |
my ($col,$row) = ($cell =~ /^([A-z])(\d+)/); |
next if (! defined($row) || ! defined($col)); |
next if (! defined($row) || ! defined($col)); |
$Str .= '<field row="'.$row.'" col="'.$col.'" >'.$formula.'</cell>' |
next if ($row != 0); |
|
$Str .= |
|
'<field row="'.$row.'" col="'.$col.'" >'.$formula.'</field>' |
."\n"; |
."\n"; |
} |
} |
} |
} |
$Str.="</spreadsheet>"; |
$Str.="</spreadsheet>"; |
|
# $r->print("<pre>\n\n\n".$Str."\n\n\n</pre>"); |
return $Str; |
return $Str; |
} |
} |
|
|
Line 1643 sub load {
|
Line 1652 sub load {
|
# Not cached, need to read |
# Not cached, need to read |
if (! defined($filename)) { |
if (! defined($filename)) { |
$formulas = $self->load_system_default_sheet(); |
$formulas = $self->load_system_default_sheet(); |
} elsif($self->filename() =~ /^\/res\/.*\.spreadsheet$/) { |
} elsif($filename =~ /^\/res\/.*\.spreadsheet$/) { |
# Load a spreadsheet definition file |
# Load a spreadsheet definition file |
my $sheetxml=&Apache::lonnet::getfile |
my $sheetxml=&Apache::lonnet::getfile |
(&Apache::lonnet::filelocation('',$filename)); |
(&Apache::lonnet::filelocation('',$filename)); |