--- loncom/interface/loncommon.pm 2009/12/07 17:11:49 1.925.2.1 +++ loncom/interface/loncommon.pm 2009/12/15 05:08:50 1.925.2.5 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common routines # -# $Id: loncommon.pm,v 1.925.2.1 2009/12/07 17:11:49 raeburn Exp $ +# $Id: loncommon.pm,v 1.925.2.5 2009/12/15 05:08:50 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -4467,6 +4467,10 @@ sub bodytag { 'link' => &designparm($function.'.link',$domain),); @design{keys(%$addentries)} = @$addentries{keys(%$addentries)}; + my $custommenu; + if ($env{'environment.remote'} eq 'off') { + $custommenu = &needs_gci_custom(); + } # role and realm my ($role,$realm) = split(/\./,$env{'request.role'},2); if ($role eq 'ca') { @@ -4476,14 +4480,22 @@ sub bodytag { # realm if ($env{'request.course.id'}) { if ($env{'request.role'} !~ /^cr/) { - $role = &Apache::lonnet::plaintext($role,&course_type()); + if (($custommenu) && ($role eq 'cm')) { + undef($role); + } else { + $role = &Apache::lonnet::plaintext($role,&course_type()); + } } if ($env{'request.course.sec'}) { $role .= (' 'x2).'- '.&mt('section:').' '.$env{'request.course.sec'}; } $realm = $env{'course.'.$env{'request.course.id'}.'.description'}; } else { - $role = &Apache::lonnet::plaintext($role); + if (($custommenu) && ($role eq 'cm')) { + undef($role); + } else { + $role = &Apache::lonnet::plaintext($role); + } } if (!$realm) { $realm=' '; } @@ -4534,7 +4546,17 @@ sub bodytag { # $titleinfo = &CSTR_pageheader(); #FIXME: Will be removed once all scripts have their own calls # } - + my $role_selector; + if (($custommenu) && ($env{'request.course.id'}) && + ($env{'course.'.$env{'request.course.id'}.'.domain'} eq 'gcitest') && + ($env{'request.role'} !~ m{^st\./gcitest/$match_courseid})) { + $role_selector = &Apache::lonmenu::roles_selector( + $env{'course.' . $env{'request.course.id'} . '.domain'}, + $env{'course.' . $env{'request.course.id'} . '.num'} ); + if ($role_selector) { + $role_selector = '
'.$role_selector; + } + } if ($env{'request.noversionuri'} =~ m{^/res/adm/pages/}) { if ($dc_info) { @@ -4545,10 +4567,10 @@ sub bodytag { return $bodytag; } - $bodytag .= qq|
$name $role
|; + $bodytag .= qq|
$name $role $role_selector
|; $bodytag .= Apache::lonhtmlcommon::scripttag( - Apache::lonmenu::utilityfunctions(), 'start'); + Apache::lonmenu::utilityfunctions('',$custommenu), 'start'); $bodytag .= Apache::lonmenu::primary_menu(); @@ -4559,7 +4581,12 @@ sub bodytag { #don't show menus for public users if($env{'user.name'} ne 'public' && $env{'user.domain'} ne 'public'){ - $bodytag .= Apache::lonmenu::secondary_menu(); + if (($custommenu) && + ($env{'request.role'} !~ m{^st\./gcitest/$match_courseid})) { + $bodytag .= &Apache::lonmenu::gci_secondary_menu(); + } else { + $bodytag .= Apache::lonmenu::secondary_menu(); + } $bodytag .= Apache::lonmenu::serverform(); $bodytag .= Apache::lonhtmlcommon::scripttag('', 'end'); if ($env{'request.state'} eq 'construct') { @@ -10772,19 +10799,9 @@ sub existing_gcitest_courses { } my ($tstart,$tend) = split(':',$env{$envkey}); if (((!$tstart) || ($tstart < $now)) && ((!$tend) || ($tend > $now))) { - my %coursehash = &Apache::lonnet::coursedescription($cdom.'/'.$cnum); - $courses{$cdom.'_'.$cnum}{'description'} = $coursehash{'description'}; - $courses{$cdom.'_'.$cnum}{'owner'} = $coursehash{'internal.courseowner'}; - if (defined($coursehash{'default_enrollment_start_date'}) ) { - $courses{$cdom.'_'.$cnum}{'startaccess'} = - &Apache::lonlocal::locallocaltime($coursehash{'default_enrollment_start_date'}); - } - if (defined($coursehash{'default_enrollment_end_date'}) ) { - $courses{$cdom.'_'.$cnum}{'endaccess'} = - &Apache::lonlocal::locallocaltime($coursehash{'default_enrollment_end_date'}); - if ($coursehash{'default_enrollment_end_date'} == 0) { - $courses{$cdom.'_'.$cnum}{'endaccess'} = &mt('No ending date'); - } + my $descr = $env{'course.'.$cdom.'_'.$cnum.'.description'}; + if ($descr ne '') { + $courses{$cdom.'_'.$cnum}{'description'} = $descr; } } }