--- loncom/interface/lonmeta.pm 2009/05/28 17:08:32 1.235 +++ loncom/interface/lonmeta.pm 2011/11/14 00:20:34 1.244 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Metadata display handler # -# $Id: lonmeta.pm,v 1.235 2009/05/28 17:08:32 bisitz Exp $ +# $Id: lonmeta.pm,v 1.244 2011/11/14 00:20:34 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -425,7 +425,7 @@ sub select_course { # Pretty printing of metadata field sub prettyprint { - my ($type,$value,$target,$prefix,$form,$noformat)=@_; + my ($type,$value,$target,$prefix,$form)=@_; # $target,$prefix,$form are optional and for filecrumbs only if (! defined($value)) { return ' '; @@ -500,8 +500,8 @@ sub prettyprint { } } $_ = '
  • '.$title.' '. - &Apache::lonhtmlcommon::crumbs($url,$target,$prefix,$form,'0',$noformat). - '
  • ' + &Apache::lonhtmlcommon::crumbs($url,$target,$prefix,$form). + '' } split(/\s*\,\s*/,$value)).''; } # Evaluations @@ -638,7 +638,7 @@ sub prettyinput { if ($values) { if ($only_one) { - $output .= (&Apache::loncommon::select_form($cur_values_inst[0],'new_'.$type,%meta_options)); + $output .= (&Apache::loncommon::select_form($cur_values_inst[0],'new_'.$type,\%meta_options)); } else { $output .= (&Apache::loncommon::multiple_select_form('new_'.$type,\@cur_values_inst,undef,\%meta_options)); } @@ -744,9 +744,19 @@ sub prettyinput { # Create pageheader sub pageheader { - return &Apache::lonhtmlcommon::breadcrumbs() - .&Apache::loncommon::head_subbox( - &Apache::loncommon::CSTR_pageheader()); + my $output = ''; + # No CSTR? Include breadcrumbs + if ($env{'request.state'} ne 'construct') { + # loncommon::bodytag already includes breadcrumbs for CSTR + # by calling lonmenu::innerregister + $output = &Apache::lonhtmlcommon::breadcrumbs(); + } + # CSTR? Include CSTR header + if ($env{'request.state'} eq 'construct') { + $output .= &Apache::loncommon::head_subbox( + &Apache::loncommon::CSTR_pageheader()); + } + return $output; } # Main Handler @@ -765,10 +775,13 @@ sub handler { # Breadcrumbs &Apache::lonhtmlcommon::clear_breadcrumbs(); - &Apache::lonhtmlcommon::add_breadcrumb({ - 'text' => 'Construction Space', - 'href' => &Apache::loncommon::authorspace(), - }); + + if ($env{'request.state'} eq 'construct') { + &Apache::lonhtmlcommon::add_breadcrumb({ + 'text' => 'Construction Space', + 'href' => &Apache::loncommon::authorspace($uri), + }); + } if ($uri=~m:/adm/bombs/(.*)$:) { &Apache::lonhtmlcommon::add_breadcrumb({ @@ -815,7 +828,7 @@ sub handler { {'domain' => $resdomain,})); $r->print(&pageheader()); &present_editable_metadata($r,$uri,'groups'); - } elsif ($uri=~m|^/~|) { + } elsif ($uri=~m|^/priv|) { # Construction space &Apache::lonhtmlcommon::add_breadcrumb({ 'text' => 'Edit Metadata', @@ -833,10 +846,14 @@ sub handler { 'text' => 'Metadata', 'href' => '', }); - $r->print(&Apache::loncommon::start_page('Metadata', - undef, - {'domain' => $resdomain,})); - $r->print(&pageheader()); + $r->print( + &Apache::loncommon::start_page( + 'Metadata', + undef, + {'domain' => $resdomain, + 'only_body' => 1,}) + .'

    '.&mt('Metadata').'

    ' + ); &present_uneditable_metadata($r,$uri); } $r->print(&Apache::loncommon::end_page()); @@ -857,7 +874,7 @@ sub report_bombs { $uri = &Apache::lonnet::declutter($uri); $r->print('

    '.&Apache::lonnet::clutter($uri).'

    '); my ($domain,$author)=($uri=~/^($match_domain)\/($match_username)\//); - if (&Apache::loncacc::constructaccess('/~'.$author.'/',$domain)) { + if (&Apache::loncacc::constructaccess('/priv/'.$domain.'/'.$author.'/')) { if ($env{'form.clearbombs'}) { &Apache::lonmsg::clear_author_res_msg($uri); } @@ -922,9 +939,8 @@ sub present_uneditable_metadata { $versiondisplay='Version: '.$currentversion; } } - # crumbify displayed URL uri target prefix form size - $disuri=&Apache::lonhtmlcommon::crumbs($disuri,undef, undef, undef,'+1'); - $disuri =~ s:
    ::g; + # crumbify displayed URL uri target prefix form + $disuri=&Apache::lonhtmlcommon::crumbs($disuri,undef, undef, undef); # obsolete my $obsolete=$content{'obsolete'}; my $obsoletewarning=''; @@ -1037,7 +1053,7 @@ sub print_dynamic_metadata { } # # Assessment statistics - if ($uri=~/\.(problem|exam|quiz|assess|survey|form)$/) { + if ($uri=~/$LONCAPA::assess_re/) { if (exists($dynmeta{'stdno'}) || exists($dynmeta{'avetries'}) || exists($dynmeta{'difficulty'}) ||