--- loncom/interface/lonaboutme.pm 2009/05/19 10:03:37 1.134 +++ loncom/interface/lonaboutme.pm 2010/02/21 06:21:50 1.143 @@ -1,7 +1,7 @@ # The LearningOnline Network # Personal Information Page # -# $Id: lonaboutme.pm,v 1.134 2009/05/19 10:03:37 amueller Exp $ +# $Id: lonaboutme.pm,v 1.143 2010/02/21 06:21:50 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -168,7 +168,7 @@ sub handler { if ($is_course) { if ($target ne 'tex') { - my $brcrum = [{href=>"/adm/navmaps",text=>"Navigate Course Contents"}, + my $brcrum = [{href=>"/adm/navmaps",text=>"Course Contents"}, {href=>"/adm/aboutme",text=>"Course Information"}]; my $start_page = &Apache::loncommon::start_page( @@ -203,22 +203,77 @@ sub handler { ($env{'user.domain'} eq $cdom)); if ($forcestudent or $target eq 'tex') { $allowed=0; } - # --------------------------------------- There is such a user, get environment if ($target ne 'tex') { my $rss_link = &Apache::lonrss::rss_link($cnum,$cdom); - my $args = {'function' => $forcestudent, + my $args = {'function' => undef, 'domain' => $cdom, - 'force_register' => $forceregister}; +# if this page is part of course content it looses the menu line when switching from Edit Mode to Public Mode. To avoid +#this, I take take the value of the environment Variable $env{form.register} +# 'force_register' => $forceregister}; + 'force_register' => $env{'form.register'}}; + if ($env{'form.popup'}) { $args->{'no_nav_bar'} = 1; + #Don't show breadcrumbs twice, when this page is part of course content and you call it + } elsif ($env{'form.register'}) { + #do nothing } else { # Don't show breadcrumbs in popup window $args->{'bread_crumbs'} = [{href=>"/adm/$cdom/$cnum/aboutme",text=>"Personal Information Page"}]; } my $start_page = &Apache::loncommon::start_page('Personal Information Page',$rss_link,$args); $r->print($start_page); + } +#----------------Print Functions + if ($target ne 'tex') { + my $functions=&Apache::lonhtmlcommon::start_funclist(); + if ($allowed) { + my $query_string = &build_query_string( + {'forcestudent' => '1', + 'popup' => $env{'form.popup'}}); + $functions.=&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Show Public View').'' + .&Apache::loncommon::help_open_topic( + 'Uploaded_Templates_PublicView')); + } elsif ($privleged) { + my $query_string = &build_query_string( + {'forceedit' => '1', + 'popup' => $env{'form.popup'}}); + $functions.=&Apache::lonhtmlcommon::add_item_funclist( + '' + .&mt('Edit').''); + } + $functions.=&Apache::lonhtmlcommon::add_item_funclist( + &Apache::lontemplate::send_message($r,$cnum,$cdom)); + + if ($env{'request.course.id'} && + &Apache::lonnet::allowed('srm',$env{'request.course.id'}) && + &in_course($cdom,$cnum)) { + if (&Apache::lonnet::allowed('vsa', $env{'request.course.id'}) || + &Apache::lonnet::allowed('vsa', $env{'request.course.id'}.'/'.$env{'request.course.sec'})) { + $functions.=&Apache::lonhtmlcommon::add_item_funclist( + &Apache::loncommon::track_student_link( + 'View recent activity by this student',$cnum,$cdom)); + } + if (&Apache::lonnet::allowed('vgr', $env{'request.course.id'}) || + &Apache::lonnet::allowed('vgr', $env{'request.course.id'}.'/'.$env{'request.course.sec'})) { + $functions.=&Apache::lonhtmlcommon::add_item_funclist( + &Apache::loncommon::slot_reservations_link( + 'Slot reservation history',$cnum,$cdom)); + } + $functions.=&Apache::lonhtmlcommon::add_item_funclist( + &Apache::loncommon::noteswrapper( + &mt('Add Records'),$cnum,$cdom)); + } + $functions.=&Apache::lonhtmlcommon::end_funclist(); + $r->print(&Apache::loncommon::head_subbox($functions)); + } + +# Print Privacy Note + if ($target ne 'tex') { #Print Privacy Note if ($allowed) { $r->print('
'); + $r->print('
'); } if($allowed) { - $r->print(''.&mt('Close window').''); } @@ -479,8 +498,8 @@ sub print_portfiles_link { 'difl' => 'Display file listing', ); if ($filecounts->{'both'} > 0) { - $output = '