--- loncom/interface/lonblockingmenu.pm 2012/04/05 21:36:28 1.7 +++ loncom/interface/lonblockingmenu.pm 2012/04/10 00:28:04 1.8 @@ -2,7 +2,7 @@ # Routines for configuring blocking of access to collaborative functions, # and specific resources during an exam # -# $Id: lonblockingmenu.pm,v 1.7 2012/04/05 21:36:28 raeburn Exp $ +# $Id: lonblockingmenu.pm,v 1.8 2012/04/10 00:28:04 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -238,23 +238,6 @@ Output: None Side Effects: prints web form elements (in a table) for current blocks. -=item &path_to_trigger() - -Provides hierarchy of names of folders/sub-folders containing the current -item identified as an item with an interval timer set, to be used as a -trigger. - -Inputs: 3 - - $navmap - navmaps object - - - $map - url for map (either the trigger itself, or map containing - the resource, which is the trigger). - - - $type - type of trigger: map or resource. - -Outputs: 1 @pathitems - array of folder/subfolder names. - - =item &convlim() Convert a time interval used for a timed quiz (in seconds) to @@ -1129,46 +1112,6 @@ END return; } -sub path_to_trigger { - my ($navmap,$map,$type) = @_; - my @pathitems; - if (ref($navmap)) { - my $mapres = $navmap->getResourceByUrl($map); - if (ref($mapres)) { - my $pcslist = $mapres->map_hierarchy(); - if ($pcslist ne '') { - my @pcs = split(/,/,$pcslist); - foreach my $pc (@pcs) { - if ($pc == 1) { - push(@pathitems,&mt('Main Course Documents')); - } else { - my $res = $navmap->getByMapPc($pc); - if (ref($res)) { - my $title = $res->compTitle(); - $title =~ s/\W+/_/g; - if ($title ne '') { - push(@pathitems,$title); - } - } - } - } - } - } - if ($type eq 'resource') { - if ($mapres->{ID} eq '0.0') { - push(@pathitems,&mt('Main Course Documents')); - } else { - my $maptitle = $mapres->compTitle(); - $maptitle =~ s/\W+/_/g; - if ($maptitle ne '') { - push(@pathitems,$maptitle); - } - } - } - } - return @pathitems; -} - sub convlim { my ($timelimit) = @_; my $output; @@ -1460,10 +1403,12 @@ sub show_timer_path { return unless(ref($navmap)); my @pathitems; if ($type eq 'map') { - @pathitems = &path_to_trigger($navmap,$item,$type); + @pathitems = + &Apache::loncommon::get_folder_hierarchy($navmap,$item); } elsif ($type eq 'resource') { my ($map,$id,$resource) = &Apache::lonnet::decode_symb($item); - @pathitems = &path_to_trigger($navmap,$map,$type); + @pathitems = + &Apache::loncommon::get_folder_hierarchy($navmap,$map,1); } if (@pathitems) { return join(' » ',@pathitems);