[LON-CAPA-cvs] cvs: loncom /interface lonaboutme.pm
raeburn
raeburn@source.lon-capa.org
Mon, 29 Mar 2010 12:21:38 -0000
This is a MIME encoded message
--raeburn1269865298
Content-Type: text/plain
raeburn Mon Mar 29 12:21:38 2010 EDT
Modified files:
/loncom/interface lonaboutme.pm
Log:
- Propagate register=1 from aboutme page (both course page, and user page)
when included in a course, e.g., when displaying list of available
group or user portfolio files.
--raeburn1269865298
Content-Type: text/plain
Content-Disposition: attachment; filename="raeburn-20100329122138.txt"
Index: loncom/interface/lonaboutme.pm
diff -u loncom/interface/lonaboutme.pm:1.145 loncom/interface/lonaboutme.pm:1.146
--- loncom/interface/lonaboutme.pm:1.145 Thu Mar 18 08:56:00 2010
+++ loncom/interface/lonaboutme.pm Mon Mar 29 12:21:38 2010
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Personal Information Page
#
-# $Id: lonaboutme.pm,v 1.145 2010/03/18 08:56:00 wenzelju Exp $
+# $Id: lonaboutme.pm,v 1.146 2010/03/29 12:21:38 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -168,16 +168,22 @@
if ($is_course) {
if ($target ne 'tex') {
- my $brcrum = [{href=>"/adm/navmaps",text=>"Course Contents"},
- {href=>"/adm/aboutme",text=>"Course Information"}];
- my $start_page =
- &Apache::loncommon::start_page(
- "Course Information",
- undef,
- {'function' => $env{'forcestudent'},
- 'domain' => $cdom,
- 'force_register' => $env{'forceregister'},
- 'bread_crumbs' => $brcrum});
+ my $args = {'function' => $env{'forcestudent'},
+ 'domain' => $cdom};
+ if ($env{'form.register'}) {
+ $args->{'force_register'} = $env{'form.register'};
+ } else {
+ my %coursedescription =
+ &Apache::lonnet::coursedescription($cdom.'_'.$cnum);
+ my $cdescr = $coursedescription{'description'};
+ my $brcrum = [{href=>"/adm/$cdom/$cnum/aboutme",
+ text=>&mt('Course Information - [_1]',$cdescr),
+ no_mt=>1}
+ ];
+ $args->{'bread_crumbs'} = $brcrum;
+ }
+ my $start_page = &Apache::loncommon::start_page(
+ "Course Information",undef,$args);
$r->print($start_page);
$r->print('<h2>'.&mt('Group Portfolio').'</h2>');
&print_portfiles_link($r,$is_course);
@@ -190,11 +196,6 @@
my $forcestudent='';
if ($env{'form.forcestudent'}) { $forcestudent='student'; };
- my $forceregister = '';
- if ($forcestudent eq '') {
- $forceregister = $env{'form.register'};
- }
-
#------------Get rights
my %courseenv=&Apache::lonnet::dump('environment',$cdom,$cnum);
my %syllabus=&Apache::lonnet::dump('aboutme',$cdom,$cnum);
@@ -209,18 +210,13 @@
my $rss_link = &Apache::lonrss::rss_link($cnum,$cdom);
my $args = {'function' => undef,
'domain' => $cdom,
-# 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'}) {
+ 'force_register' => $env{'form.register'},
+ };
+ if ($env{'form.popup'}) { # Don't show breadcrumbs in popup window
$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"}];
+ } elsif (!$env{'form.register'}) { #Don't show breadcrumbs twice, when this page is part of course content and you call it
+ $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);
@@ -526,6 +522,8 @@
}
$output .= '</ul>';
$output .= '</div>';
+ } elsif ($is_course) {
+ $output .= '<div class="LC_info">'.&mt('There are currently no publicly accessible or password protected group portfolio files.').'</div>';
}
$r->print($output);
return;
@@ -565,34 +563,47 @@
my ($r,$is_course) = @_;
my ($cdom,$cnum,$name) = &aboutme_info($r,$is_course);
my $query_string = &build_query_string();
- &Apache::lonhtmlcommon::clear_breadcrumbs();
- my $forcestudent='';
- if ($env{'form.forcestudent'}) { $forcestudent='student'; };
-
+ my $args = {'domain' => $cdom};
+ if ($env{'form.forcestudent'}) {
+ $args->{'function'} = 'student';
+ }
my $output;
if ($is_course) {
- $output =
- &Apache::loncommon::start_page('Viewable group portfolio files',undef,
- {'function' => $forcestudent,
- 'domain' => $cdom,});
- $output .= '<h3>'.&mt('Group Portfolio files').'</h3>';
- } else {
- $output =
- &Apache::loncommon::start_page('Viewable portfolio files',undef,
- {'function' => $forcestudent,
- 'domain' => $cdom,});
- if (!($env{'user.name'} eq 'public' && $env{'user.domain'} eq 'public')) {
- &Apache::lonhtmlcommon::add_breadcrumb
- ({href=>"/adm/$cdom/$cnum/aboutme".$query_string,
- text=>&mt('Personal Information Page - [_1]',$name),
- title=>&mt('Go to personal information page for [_1]', $name)},
- {href=>"/adm/$cdom/$cnum/aboutme/portfolio",
- text=>&mt('Viewable files - [_1]', $name),
- title=>&mt('Viewable portfolio files for [_1]', $name)}
- );
- $output .= &Apache::lonhtmlcommon::breadcrumbs(&mt('Viewable portfolio files.'));
+ if (($env{'request.course.id'} eq $cdom.'_'.$cnum) &&
+ ($env{'form.register'})) {
+ $args->{force_register} = $env{'form.register'};
+ } else {
+ my %coursedescription = &Apache::lonnet::coursedescription($cdom.'_'.$cnum);
+ my $cdescr = $coursedescription{'description'};
+ my $brcrum = [{href=>"/adm/$cdom/$cnum/aboutme".$query_string,
+ text=>&mt('Course Information - [_1]',$cdescr),
+ no_mt=>1},
+ {href=>"/adm/$cdom/$cnum/aboutme/portfolio".$query_string,
+ text=>'Viewable group portfolio files'}
+ ];
+ $args->{bread_crumbs} = $brcrum;
}
- $output .= '<h3>'.&mt('Portfolio files for [_1]',$name).'</h3>';
+ $output = &Apache::loncommon::start_page('Viewable group portfolio files',undef,$args).
+ '<h3>'.&mt('Group Portfolio files').'</h3>';
+ } else {
+ if ($env{'request.course.id'} && $env{'form.register'}) {
+ $args->{force_register} = $env{'form.register'};
+ } else {
+ my $brcrum = [{href => "/adm/$cdom/$cnum/aboutme".$query_string,
+ text => &mt('Personal Information Page - [_1]',$name),
+ title => &mt('Go to personal information page for [_1]',$name),
+ no_mt => 1},
+ {href => "/adm/$cdom/$cnum/aboutme/portfolio".$query_string,
+ text => 'Viewable files',
+ title => &mt('Viewable portfolio files for [_1]',$name),
+ no_mt => 1}
+ ];
+ $args->{bread_crumbs} = $brcrum;
+ }
+ $output =
+ &Apache::loncommon::start_page('Viewable portfolio files',
+ undef,$args).
+ '<h3>'.&mt('Portfolio files for [_1]',$name).'</h3>';
}
$r->print($output);
return;
@@ -622,23 +633,28 @@
}
$output .= '>'.$lt{$type}.'</option>';
}
- $output .= '</select>'."\n".
- '<input type="submit" name="portaccessbutton" value="'.
- &mt('Update display').'" />';
- $output .= '</form><br /><br />';
+ $output .= '</select>'."\n";
+ if ($env{'form.register'}) {
+ $output .= '<input type="hidden" name="register" value="'.$env{'form.register'}.'" />'."\n";
+ }
+ $output .= '<input type="submit" name="portaccessbutton" value="'.
+ &mt('Update display').'" />'.
+ '</form><br /><br />';
$r->print($output);
my $filecounts = &portfolio_files($r,'listfiles',\%lt,$is_course,
$cdom,$cnum,$name);
if (!($env{'user.name'} eq 'public' && $env{'user.domain'} eq 'public')) {
- my $query_string = &build_query_string();
- $r->print('<br /><br /><a href="/adm/'.$cdom.'/'.$cnum.
- '/aboutme'.$query_string.'">');
- if ($is_course) {
- $r->print(&mt('Course Information page'));
- } else {
- $r->print(&mt('Information about [_1]',$name));
+ if ($env{'request.course.id'} && $env{'form.register'}) {
+ my $query_string = &build_query_string();
+ $r->print('<br /><a href="/adm/'.$cdom.'/'.$cnum.
+ '/aboutme'.$query_string.'">');
+ if ($is_course) {
+ $r->print(&mt('Course Information page'));
+ } else {
+ $r->print(&mt('Information about [_1]',$name));
+ }
+ $r->print('</a>');
}
- $r->print('</a>');
}
return;
}
--raeburn1269865298--