--- loncom/interface/lonprintout.pm 2008/03/24 00:03:05 1.519.2.2
+++ loncom/interface/lonprintout.pm 2008/03/28 14:52:52 1.524
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Printout
#
-# $Id: lonprintout.pm,v 1.519.2.2 2008/03/24 00:03:05 raeburn Exp $
+# $Id: lonprintout.pm,v 1.524 2008/03/28 14:52:52 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -116,7 +116,7 @@ sub annotate {
# the number of times requested by the caller.
# If we still have a proble, no text is appended to the
# output and we set some global variables.
-# to indicate to the caller an SSI error occured.
+# to indicate to the caller an SSI error occurred.
# All of this is supposed to deal with the issues described
# in LonCAPA BZ 5631 see:
# http://bugs.lon-capa.org/show_bug.cgi?id=5631
@@ -132,10 +132,10 @@ sub annotate {
# On success, returns the rendered resource identified by the resource parameter.
# Side Effects:
# The following global variables can be set:
-# ssi_error - If an unrecoverable error occured this becomes true.
+# ssi_error - If an unrecoverable error occurred this becomes true.
# It is up to the caller to initialize this to false
# if desired.
-# ssi_last_error_resource - If an unrecoverable error occured, this is the value
+# ssi_last_error_resource - If an unrecoverable error occurred, this is the value
# of the resource that could not be rendered by the ssi
# call.
# ssi_last_error - The error string fetched from the ssi response
@@ -158,6 +158,22 @@ sub ssi_with_retries {
}
+sub get_student_view_with_retries {
+ my ($curresline,$retries,$username,$userdomain,$courseid,$target,$moreenv)=@_;
+
+ my ($content, $response) = &Apache::loncommon::get_student_view_with_retries($curresline,$retries,$username,$userdomain,$courseid,$target,$moreenv);
+ if (!$response->is_success) {
+ $ssi_error = 1;
+ $ssi_last_error_resource = $curresline;
+ $ssi_last_error = $response->code . " " . $response->message;
+
+ &Apache::lonnet::logthis("Error in SSI (student view) resource: $curresline Error: $ssi_last_error");
+ }
+
+ return $content;
+
+}
+
#
# printf_style_subst item format_string repl
#
@@ -1474,8 +1490,8 @@ ENDPART
}
if ($helper->{'VARS'}->{'style_file'}=~/\w/) {
- &Apache::lonnet::appenv('construct.style' =>
- $helper->{'VARS'}->{'style_file'});
+ &Apache::lonnet::appenv({'construct.style' =>
+ $helper->{'VARS'}->{'style_file'}});
} elsif ($env{'construct.style'}) {
&Apache::lonnet::delenv('construct\\.style');
}
@@ -1518,7 +1534,7 @@ ENDPART
$rndseed=$helper->{'VARS'}->{'curseed'};
}
$form{'rndseed'}=$rndseed;
- &Apache::lonnet::appenv(%moreenv);
+ &Apache::lonnet::appenv(\%moreenv);
&Apache::lonxml::clear_problem_counter();
@@ -1666,7 +1682,8 @@ ENDPART
my $pbreakresources = keys %page_breaks;
for (my $i=0;$i<=$#master_seq;$i++) {
- &Apache::lonenc::reset_enc();
+ &Apache::lonenc::reset_enc();
+
# Note due to document structure, not allowed to put \newpage
# prior to the first resource
@@ -1676,10 +1693,11 @@ ENDPART
$result.="\\newpage\n";
}
}
- my ($sequence,$middle_thingy,$urlp)=&Apache::lonnet::decode_symb($master_seq[$i]);
+ my ($sequence,$middle_thingy,$urlp)=&Apache::lonnet::decode_symb($master_seq[$i]);
$urlp=&Apache::lonnet::clutter($urlp);
$form{'symb'}=$master_seq[$i];
+
my $assignment=&Apache::lonxml::latex_special_symbols(&Apache::lonnet::gettitle($sequence),'header'); #title of the assignment which contains this problem
if ($selectionmade==7) {$helper->{VARS}->{'assignment'}=$assignment;}
@@ -1989,7 +2007,7 @@ ENDPART
}
for (my $i=0;$i<=$#list_of_files;$i++) {
- &Apache::lonenc::reset_enc();
+ &Apache::lonenc::reset_enc();
my $urlp = $list_of_files[$i];
$urlp=~s|//|/|;
@@ -2092,12 +2110,12 @@ ENDPART
if ($ssi_error) {
my $helpurl = &Apache::loncommon::top_nav_help('Helpdesk');
- my $end_page = &Apache::loncommon::end_page();
- $r->print('
+ my $end_page = &Apache::loncommon::end_page();
+ $r->print('
-
- '.&mt('One of the resources ([_1]) you chose to print could not be rendered due to an unrecoverable error when communicating with a server:',$ssi_last_error_resource).'
+ '.&mt('One of the resources ([_1]) you chose to print could not be rendered due to an unrecoverable error when communicating with a server:',$ssi_last_error_resource).'
'.$ssi_last_error.'