--- loncom/homework/structuretags.pm 2019/11/06 16:20:06 1.569 +++ loncom/homework/structuretags.pm 2019/11/07 02:58:37 1.570 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: structuretags.pm,v 1.569 2019/11/06 16:20:06 raeburn Exp $ +# $Id: structuretags.pm,v 1.570 2019/11/07 02:58:37 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -667,7 +667,7 @@ sub get_resource_name { } sub setup_rndseed { - my ($safeeval,$target,$probpartlist)=@_; + my ($safeeval,$target,$probpartlist,$prevparttype)=@_; my ($symb)=&Apache::lonnet::whichuser(); my ($questiontype,$set_safespace,$rndseed,$numtries,$reqtries); if ($target eq 'analyze') { @@ -784,15 +784,16 @@ sub setup_rndseed { if ($target eq 'grade') { $Apache::lonhomework::rawrndseed = $rndseed; } + } elsif ($prevparttype eq 'randomizetry') { + if ($env{'form.0.rndseed'} ne '') { + $set_safespace = 1; + $rndseed = $env{'form.0.rndseed'}; + } } if ($set_safespace) { if ($safeeval) { &Apache::lonxml::debug("Setting rndseed to $rndseed"); &Apache::run::run('$external::randomseed="'.$rndseed.'";',$safeeval); - my $prevparttype; - if (@Apache::inputtags::partlist > 1) { - $prevparttype = &Apache::lonnet::EXT("resource.$Apache::inputtags::partlist[-2].type"); - } if (($Apache::lonhomework::type eq 'randomizetry') || ($prevparttype eq 'randomizetry')) { &Apache::lonxml::debug("Setting randomizetrypart to $Apache::inputtags::part"); &Apache::run::run('$external::randomizetrypart="'.$Apache::inputtags::part.'";',$safeeval); @@ -1908,7 +1909,7 @@ sub start_problem { $form_tag_start.=&practice_problem_header(); } $form_tag_start.='