--- loncom/interface/printout.pl 2005/06/04 20:48:33 1.82 +++ loncom/interface/printout.pl 2005/07/05 13:31:27 1.84 @@ -59,11 +59,11 @@ sub is_student { # Debugging: Dump the environment for debugging. # sub dumpenv { - print "
-------------------
"; + print "
-------------------
"; foreach my $key (sort (keys %env)) { - print "
$key -> $env{$key}"; + print "
$key -> $env{$key}"; } - print "
-------------------
"; + print "
-------------------
"; } # @@ -113,7 +113,7 @@ sub send_error_mail { if (&is_student( $courseid, $coursedom)) { # build the subject and message body: - # print "sending message to course coordinators.
"; + # print "sending message to course coordinators.
"; # Todo: Convert badurl into a url from file path: @@ -130,9 +130,9 @@ sub send_error_mail { } my (undef, %receivers) = &Apache::lonfeedback::decide_receiver(undef, 0, 1,1,1); - # print "
sending...section: $env{'request.course.sec'}"; + # print "
sending...section: $env{'request.course.sec'}"; foreach my $dest (keys %receivers) { - # print "
dest is $dest"; + # print "
dest is $dest"; my @destinfo = split(/:/,$dest); my $user = $destinfo[0]; my $dom = $destinfo[1]; @@ -330,39 +330,41 @@ foreach $texfile (@texfile) { $temporary_file = IO::File->new('>'.$logfilename); print $temporary_file 'LOGFILE
'.$body_log_file.'
'."\n"; if ($body_log_file=~m/!\s+Emergency stop/) { - #LaTeX failed to parse tex file - print "

LaTeX could not successfully parse your tex file.

"; - print "It probably has errors in it.
"; my $whereitbegins = rindex $body_log_file,'STAMPOFPASSEDRESOURCESTART'; my $whereitends = rindex $body_log_file,'STAMPOFPASSEDRESOURCEEND'; my $badresource; + my $badtext; if ($whereitbegins!=-1 and $whereitends!=-1) { - my $badtext = substr($body_log_file,$whereitbegins+26, $whereitends-$whereitbegins-26); - print "With very high probability this error occured in ".$badtext."

"; + $badtext = substr($body_log_file,$whereitbegins+26, $whereitends-$whereitbegins-26); $whereitbegins = rindex $badtext,'located in'; if ($whereitbegins != -1) { $badresource = substr($badtext, $whereitbegins+27, length($badtext) - $whereitbegins - 48); - # print "
failing resourcename: $badresource
"; + # print "
failing resourcename: $badresource
"; } } - print "Here are the error messages in the LaTeX log file

";
-	  my $sygnal = 0;
-	  for (my $i=0;$i<=$#content_of_file;$i++) {
-	      if ($content_of_file[$i]=~m/^Runaway argument?/ or $content_of_file[$i]=~m/^!/) {
-		  $sygnal = 1;
-	      } 
-	      if ($content_of_file[$i]=~m/Here is how much of/) {
-		  $sygnal = 0;
-	      } 
-	      if ($sygnal) {
-		  print "$content_of_file[$i]";
-	      }  
-	  }
-	  print "
\n"; + if ($advanced_role) { - # print "
Advanced role
"; + #LaTeX failed to parse tex file + print "

LaTeX could not successfully parse your tex file.

"; + print "It probably has errors in it.
"; + print "With very high probability this error occured in ".$badtext."

"; + print "Here are the error messages in the LaTeX log file
";
+	      my $sygnal = 0;
+	      for (my $i=0;$i<=$#content_of_file;$i++) {
+		  if ($content_of_file[$i]=~m/^Runaway argument?/ or $content_of_file[$i]=~m/^!/) {
+		      $sygnal = 1;
+		  } 
+		  if ($content_of_file[$i]=~m/Here is how much of/) {
+		      $sygnal = 0;
+		  } 
+		  if ($sygnal) {
+		      print "$content_of_file[$i]";
+		  }  
+	      }
+	      print "
\n"; + # print "
Advanced role
"; print "The link to "; $logfilename=~s/\/home\/httpd//; print "Your log file "; @@ -386,9 +388,12 @@ foreach $texfile (@texfile) { # $name_file - is the name of the LaTeX file. # $identifier - is the unique LaTeX identifier.l + print "
There are errors in $badtext"; + print "
These errors prevent this resource from printing correctly"; my $tex_handle = IO::File->new($name_file); my @tex_contents = <$tex_handle>; &send_error_mail($identifier, $badresource, $body_log_file, \@tex_contents); + print "
A message has been sent to the instructor describing this failure
" } } elsif ($body_log_file=~m//) {