--- loncom/homework/structuretags.pm 2004/03/08 23:18:21 1.244 +++ loncom/homework/structuretags.pm 2004/05/04 19:32:28 1.247 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: structuretags.pm,v 1.244 2004/03/08 23:18:21 albertel Exp $ +# $Id: structuretags.pm,v 1.247 2004/05/04 19:32:28 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -120,6 +120,7 @@ sub page_start { $body_tag_start.=$help; } } + $body_tag_start.=&Apache::lonxml::message_location(); } my $form_tag_start; if (!defined($found{'form'})) { @@ -152,7 +153,8 @@ sub setup_rndseed { my ($safeeval)=@_; my $rndseed; my ($symb)=&Apache::lonxml::whichuser(); - if ($ENV{'request.state'} eq "construct" || $symb eq '') { + if ($ENV{'request.state'} eq "construct" || $symb eq '' || + $Apache::lonhomework::history{'resource.CODE'}) { $rndseed=$ENV{'form.rndseed'}; if (!$rndseed) { $rndseed=$Apache::lonhomework::history{'rndseed'}; @@ -172,6 +174,9 @@ sub setup_rndseed { if (defined($rndseed) && $rndseed ne int($rndseed)) { $rndseed=join(',',&Math::Random::random_seed_from_phrase($rndseed)); } + if ($Apache::lonhomework::history{'resource.CODE'}) { + $rndseed=&Apache::lonnet::rndseed(); + } if ($safeeval) { &Apache::lonxml::debug("Setting rndseed to $rndseed"); &Apache::run::run('$external::randomseed='.$rndseed.';',$safeeval); @@ -404,8 +409,8 @@ sub start_problem { $Apache::lonhomework::scantronmode=1; } + &initialize_storage(); if ($target ne 'analyze') { - &initialize_storage(); if ($target eq 'web') { &Apache::lonhomework::showhash(%Apache::lonhomework::history); } @@ -481,9 +486,9 @@ sub start_problem { $result.= $head_tag_start.''; my $msg=$body_tag_start; if ($status eq 'UNAVAILABLE') { - $result.='

'.&mt('Unable to determine if this resource is open due to network problems. Please try again later.').'

'; + $msg.='

'.&mt('Unable to determine if this resource is open due to network problems. Please try again later.').'

'; } else { - $result.='

'.&mt('Not open to be viewed').'

'; + $msg.='

'.&mt('Not open to be viewed').'

'; } if ($status eq 'CLOSED' || $status eq 'INVALID_ACCESS') { $msg.='The problem '.$accessmsg;