--- loncom/interface/courseprefs.pm 2015/09/13 19:55:34 1.73 +++ loncom/interface/courseprefs.pm 2015/09/13 21:48:05 1.74 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler to set configuration settings for a course # -# $Id: courseprefs.pm,v 1.73 2015/09/13 19:55:34 raeburn Exp $ +# $Id: courseprefs.pm,v 1.74 2015/09/13 21:48:05 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2568,7 +2568,7 @@ sub display_loncaparev_constraints { foreach my $valuematch (@{$Apache::lonrelrequtils::checkparmsmatch{$item}}) { if ($value =~ /$valuematch/) { my $stdtype = &Apache::lonparmset::standard_parameter_types($item); - $found{$item}{'valname'} = &get_param_description($stdtype,$value,1); + $found{$item}{'valname'} = &get_param_description($stdtype,$value,1); $found{$item}{'rev'} = $Apache::lonnet::needsrelease{'parameter:'.$item.'::'.$valuematch}; last; @@ -2703,7 +2703,7 @@ sub display_loncaparev_constraints { if (keys(%comm_blocks) > 0) { foreach my $block (keys(%comm_blocks)) { if ($block =~ /^firstaccess____(.+)$/) { - my $rev = $Apache::lonnet::needsrelease{'course:commblock:timer'}; + my $rev = $Apache::lonnet::needsrelease{'course:commblock:timer:'}; if (ref($comm_blocks{$block}) eq 'HASH') { push(@{$fromblocks{'timer'}{$rev}},&unescape($comm_blocks{$block}{'event'}). ' '.&mt('set by [_1]', @@ -2718,14 +2718,14 @@ sub display_loncaparev_constraints { if (ref($comm_blocks{$block}{'blocks'}) eq 'HASH') { if (ref($comm_blocks{$block}{'blocks'}{'docs'}) eq 'HASH') { if (keys(%{$comm_blocks{$block}{'blocks'}{'docs'}}) > 0) { - my $rev = $Apache::lonnet::needsrelease{'course:commblock:docs'}; + my $rev = $Apache::lonnet::needsrelease{'course:commblock:docs:'}; push(@{$fromblocks{'docs'}{$rev}},&unescape($comm_blocks{$block}{'event'}). ' '. &mt('set by [_1]', &Apache::loncommon::plainname(split(/:/,$comm_blocks{$block}{'setter'})))); } } elsif ($comm_blocks{$block}{'blocks'}{'printout'} eq 'on') { - my $rev = $Apache::lonnet::needsrelease{'course:commblock:printout'}; + my $rev = $Apache::lonnet::needsrelease{'course:commblock:printout:'}; push(@{$fromblocks{'printout'}{$rev}},&unescape($comm_blocks{$block}{'event'}). ' '. &mt('set by [_1]', @@ -2769,9 +2769,9 @@ sub display_loncaparev_constraints { if (defined($navmap)) { my %anonsubms=&Apache::lonnet::dump('nohist_anonsurveys',$cdom,$cnum); - my $rev_anonsurv=$Apache::lonnet::needsrelease{'parameter:type:anonsurvey'}; + my $rev_anonsurv=$Apache::lonnet::needsrelease{'parameter:type:anonsurvey:'}; my %randtrysubms=&Apache::lonnet::dump('nohist_randomizetry',$cdom,$cnum); - my $rev_randtry=$Apache::lonnet::needsrelease{'parameter:type:randomizetry'}; + my $rev_randtry=$Apache::lonnet::needsrelease{'parameter:type:randomizetry:'}; my $stdtype=&Apache::lonparmset::standard_parameter_types('type'); my $stdname=&Apache::lonparmset::standard_parameter_names('type'); my $valanon=&get_param_description($stdtype,'anonsurvey'); @@ -3083,9 +3083,17 @@ sub releases_by_map { sub get_param_description { my ($stdtype,$value,$regexp) = @_; my ($name,$parammatches,$paramstrings,@possibles); - $paramstrings = &Apache::lonparmset::standard_string_options($stdtype); + if ($stdtype =~ /^string/) { + $paramstrings = &Apache::lonparmset::standard_string_options($stdtype); + } elsif ($stdtype eq 'date_interval') { + $paramstrings = &Apache::lonparmset::standard_interval_options($stdtype); + } if ($regexp) { - $parammatches = &Apache::lonparmset::standard_string_matches($stdtype); + if ($stdtype =~ /^string/) { + $parammatches = &Apache::lonparmset::standard_string_matches($stdtype); + } elsif ($stdtype eq 'date_interval') { + $parammatches = &Apache::lonparmset::standard_interval_matches($stdtype); + } if (ref($parammatches) eq 'ARRAY') { @possibles = @{$parammatches}; } else {