--- loncom/homework/structuretags.pm 2003/10/15 22:24:06 1.200.2.4
+++ loncom/homework/structuretags.pm 2003/08/13 17:54:12 1.203
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# definition of tags that give a structure to a document
#
-# $Id: structuretags.pm,v 1.200.2.4 2003/10/15 22:24:06 albertel Exp $
+# $Id: structuretags.pm,v 1.203 2003/08/13 17:54:12 sakharuk Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -72,7 +72,7 @@ sub end_tex {
sub page_start {
my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
my %found;
- foreach my $taginside (@$tagstack) {
+ foreach my $taginside ($tagstack) {
foreach my $taglookedfor ('html','body','form') {
if ($taginside =~ /^$taglookedfor$/i) {$found{$taglookedfor} = 1;}
}
@@ -363,8 +363,7 @@ sub start_problem {
if (( $status eq 'CLOSED' ) ||
( $status eq 'UNCHECKEDOUT') ||
( $status eq 'BANNED') ||
- ( $status eq 'UNAVAILABLE') ||
- ( $status eq 'INVALID_ACCESS')) {
+ ( $status eq 'UNAVAILABLE')) {
my $bodytext=&Apache::lonxml::get_all_text("/problem",$parser);
if ( $target eq "web" ) {
$result.= $head_tag_start.'';
@@ -374,7 +373,7 @@ sub start_problem {
} else {
$result.='
Not open to be viewed
';
}
- if ($status eq 'CLOSED' || $status eq 'INVALID_ACCESS') {
+ if ($status eq 'CLOSED') {
$msg.='The problem '.$accessmsg;
} elsif ($status eq 'UNCHECKEDOUT') {
$msg.=&checkout_msg;
@@ -406,8 +405,7 @@ sub start_problem {
}
}
} elsif ($status eq 'SHOW_ANSWER' || $status eq 'CANNOT_ANSWER'
- || $status eq 'CLOSED' || $status eq 'UNAVALAILABLE' ||
- $status eq 'INVALID_ACCESS') {
+ || $status eq 'CLOSED' || $status eq 'UNAVALAILABLE') {
$result.=$head_tag_start.
"$name\n$body_tag_start\n";
}
@@ -445,14 +443,19 @@ sub start_problem {
my $due_file_content = $due_file_content[$#due_file_content];
chomp $due_file_content;
my $name_of_resourse= &get_resource_name($parstack,$safeeval);
+ if (not $name_of_resourse=~/\S+/) {
+ $name_of_resourse=$ENV{'request.uri'};
+ $name_of_resourse=~/\/([^\/]+)$/;
+ $name_of_resourse=$1;
+ }
if ($due_file_content ne $duedate) {
$temp_file = Apache::File->new('>'.$filename);
print $temp_file "$duedate\n";
if (not $ENV{'request.symb'} =~ m/\.page_/) {
if(not $duedate=~m/1969/ and $Apache::lonhomework::type ne 'exam') {
- $result .= '\begin{document} \typeout{STAMPOFPASSEDRESOURCESTART Resource "'.$name_of_resourse.'"
located in
'.$ENV{'request.uri'}.'
STAMPOFPASSEDRESOURCEEND} \noindent\textit{Due date: '.$duedate.'} \vskip 1 mm\noindent '.$startminipage;
+ $result .= '\begin{document} \typeout{STAMPOFPASSEDRESOURCESTART Resource "'.$name_of_resourse.'"
located in
'.$ENV{'request.uri'}.'
STAMPOFPASSEDRESOURCEEND}\addcontentsline{toc}{subsection}{'.$name_of_resourse.'} \noindent\textit{Due date: '.$duedate.'} \vskip 1 mm\noindent '.$startminipage;
} else {
- $result .= '\begin{document} \typeout{STAMPOFPASSEDRESOURCESTART Resource "'.$name_of_resourse.'"
located in
'.$ENV{'request.uri'}.'
STAMPOFPASSEDRESOURCEEND} \noindent \vskip 1 mm \noindent'.$startminipage;
+ $result .= '\begin{document} \typeout{STAMPOFPASSEDRESOURCESTART Resource "'.$name_of_resourse.'"
located in
'.$ENV{'request.uri'}.'
STAMPOFPASSEDRESOURCEEND}\addcontentsline{toc}{subsection}{'.$name_of_resourse.'} \noindent \vskip 1 mm \noindent'.$startminipage;
if ($Apache::lonhomework::type eq 'exam' and $allow_print_points==1) { $result .= '\fbox{\textit{'.$weight.' pt}}';}
}
} else {
@@ -460,7 +463,7 @@ sub start_problem {
}
} else {
if (not $ENV{'request.symb'} =~ m/\.page_/) {
- $result .= '\begin{document} \typeout{STAMPOFPASSEDRESOURCESTART Resource "'.$name_of_resourse.'"
located in
'.$ENV{'request.uri'}.'
STAMPOFPASSEDRESOURCEEND} \noindent \vskip 1 mm\noindent'.$startminipage;
+ $result .= '\begin{document} \typeout{STAMPOFPASSEDRESOURCESTART Resource "'.$name_of_resourse.'"
located in
'.$ENV{'request.uri'}.'
STAMPOFPASSEDRESOURCEEND}\addcontentsline{toc}{subsection}{'.$name_of_resourse.'} \noindent \vskip 1 mm\noindent'.$startminipage;
if (($Apache::lonhomework::type eq 'exam') and ($allow_print_points==1)) { $result .= '\fbox{\textit{'.$weight.' pt}}';}
} else {
$result .= '\vskip 1mm \\\\\\\\';
@@ -510,7 +513,7 @@ sub end_problem {
$result.="