--- loncom/homework/structuretags.pm 2002/08/26 21:01:52 1.108
+++ loncom/homework/structuretags.pm 2002/09/26 20:45:00 1.118
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# definition of tags that give a structure to a document
#
-# $Id: structuretags.pm,v 1.108 2002/08/26 21:01:52 albertel Exp $
+# $Id: structuretags.pm,v 1.118 2002/09/26 20:45:00 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -161,7 +161,7 @@ sub problem_web_to_edit_header {
Show All Foils
+ $result.= ' /> Show All Foils
';
}
@@ -297,7 +297,9 @@ sub start_problem {
$msg.=&checkout_msg;
}
$result.=$msg.' ';
- }
+ } elsif ($target eq 'tex') {
+ $result.="\\begin{document}\\noindent \\vskip 1 mm \\begin{minipage}{\\textwidth}\\vskip 0 mm Problem is not open to be viewed. It $accessmsg \\vskip 0 mm ";
+ }
} elsif ($target eq 'web') {
my $name= &get_resource_name($parstack,$safeeval);
if ($status eq 'CAN_ANSWER') {
@@ -345,18 +347,18 @@ sub start_problem {
print $temp_file "$duedate\n";
if (not $ENV{'request.symb'} =~ m/\.page_/) {
if(not $duedate=~m/1969/) {
- $result .= '\begin{document} \noindent\textit{Due date: '.$duedate.'} \vskip 1 mm';
+ $result .= '\begin{document} \noindent\textit{Due date: '.$duedate.'} \vskip 1 mm \begin{minipage}{\textwidth}';
} else {
- $result .= '\begin{document} \noindent \vskip 1 mm';
+ $result .= '\begin{document} \noindent \vskip 1 mm \begin{minipage}{\textwidth}';
}
} else {
- $result .= '\parbox{\minipagewidth}{\vskip 1mm\textit{Due date: '.$duedate.'} \\\\\\\\';
+ $result .= '\vskip 1mm\textit{Due date: '.$duedate.'} \\\\\\\\';
}
} else {
if (not $ENV{'request.symb'} =~ m/\.page_/) {
- $result .= '\begin{document} \noindent \vskip 1 mm';
+ $result .= '\begin{document} \noindent \vskip 1 mm\begin{minipage}{\textwidth}';
} else {
- $result .= '\parbox{\minipagewidth}{\vskip 1mm \\\\\\\\';
+ $result .= '\vskip 1mm \\\\\\\\';
}
}
}
@@ -393,8 +395,8 @@ sub end_problem {
$result.= $gradestatus;
}
if (
- (($target eq 'web' || $target eq 'tex') && ($ENV{'request.state'} ne 'construct')) ||
- ($target eq 'answer')
+ (($target eq 'web') && ($ENV{'request.state'} ne 'construct')) ||
+ ($target eq 'answer') || ($target eq 'tex')
) {
if ($status eq 'CAN_ANSWER') {
if ($target ne 'tex') {
@@ -411,9 +413,9 @@ sub end_problem {
} else {
$result .= '\vskip 0.5mm\noindent\makebox[\textwidth/$number_of_columns][b]{\hrulefill}';
if (not $ENV{'request.symb'} =~ m/\.page_/) {
- $result .= '\end{document} ';
+ $result .= '\end{minipage}\end{document} ';
} else {
- $result .= '} ';
+ $result .= '';
}
}
}
@@ -450,9 +452,11 @@ sub html_to_tex {
sub start_library {
my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
- my ($result,$head_tag_start,$body_tag_start,$form_tag_start)=
- &page_start($target,$token,$tagstack,$parstack,$parser,$safeeval);
+ my ($result,$head_tag_start,$body_tag_start,$form_tag_start);
+
if ($target eq 'edit') {
+ ($result,$head_tag_start,$body_tag_start,$form_tag_start)=
+ &page_start($target,$token,$tagstack,$parstack,$parser,$safeeval);
$result.=$head_tag_start."".$body_tag_start.$form_tag_start.
&problem_edit_header();
my $temp=&Apache::edit::insertlist($target,$token);
@@ -460,7 +464,10 @@ sub start_library {
} elsif ($target eq 'modified') {
$result=$token->[4];
$result.=&Apache::edit::handle_insert();
- } elsif ($target eq 'web' && $ENV{'request.state'} eq "construct" ) {
+ } elsif ($target eq 'web' && $$tagstack[0] ne 'problem' &&
+ $ENV{'request.state'} eq "construct" ) {
+ ($result,$head_tag_start,$body_tag_start,$form_tag_start)=
+ &page_start($target,$token,$tagstack,$parstack,$parser,$safeeval);
my $name=&get_resource_name($parstack,$safeeval);
my $rndseed=&setup_rndseed($safeeval);
$result.="$head_tag_start$name
@@ -476,7 +483,8 @@ sub end_library {
my $result='';
if ($target eq 'edit') {
$result=&problem_edit_footer();
- } elsif ($target eq 'web' && $ENV{'request.state'} eq "construct") {
+ } elsif ($target eq 'web' && $$tagstack[0] ne 'problem' &&
+ $ENV{'request.state'} eq "construct") {
$result.='