--- loncom/interface/lonparmset.pm 2019/02/18 13:46:05 1.590 +++ loncom/interface/lonparmset.pm 2019/04/09 13:45:57 1.592 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to set parameters for assessments # -# $Id: lonparmset.pm,v 1.590 2019/02/18 13:46:05 raeburn Exp $ +# $Id: lonparmset.pm,v 1.592 2019/04/09 13:45:57 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1071,8 +1071,12 @@ sub plink { my ($type,$dis,$value,$marker,$return,$call,$recursive,$extra)=@_; my $winvalue=$value; unless ($winvalue) { - if ((&isdateparm($type) || (&is_specialstring($type))) { + if (&isdateparm($type) || (&is_specialstring($type))) { $winvalue=$env{'form.recent_'.$type}; + } elsif ($type eq 'string_yesno') { + if ($env{'form.recent_string'} =~ /^(yes|no)$/i) { + $winvalue=$env{'form.recent_string'}; + } } else { $winvalue=$env{'form.recent_'.(split(/\_/,$type))[0]}; } @@ -1108,14 +1112,14 @@ sub page_js { $pjump_def function psub() { - var specstring = /^string_/i; + var specstring = /^string_!(yesno|any)/i; if (document.parmform.pres_marker.value!='') { document.parmform.action+='#'+document.parmform.pres_marker.value; var typedef=new Array(); typedef=document.parmform.pres_type.value.split('_'); if (document.parmform.pres_type.value!='') { if ((typedef[0]=='date') || - (specstring.test(document.parmform.pres_type.value) && (typedef[1]!='yesno'))) { + (specstring.test(document.parmform.pres_type.value))) { eval('document.parmform.recent_'+ document.parmform.pres_type.value+ '.value=document.parmform.pres_value.value;');