version 1.283, 2009/10/04 17:47:21
|
version 1.287, 2009/10/15 21:00:07
|
Line 113 The javascript is usually similar to "go
|
Line 113 The javascript is usually similar to "go
|
|
|
=item get_nav_status() |
=item get_nav_status() |
|
|
=item convert_menu_function() |
|
|
|
FIXME this needs to move into mydesktab and the other locations |
|
the text is generated |
|
|
|
=item hidden_button_check() |
=item hidden_button_check() |
|
|
=item roles_selector() |
=item roles_selector() |
Line 187 sub primary_menu {
|
Line 182 sub primary_menu {
|
|
|
|
|
if ($$menuitem[3] eq 'Help') { # special treatment for helplink |
if ($$menuitem[3] eq 'Help') { # special treatment for helplink |
$menu .= Apache::loncommon::top_nav_help('Help'); |
$menu .= '<li>'.Apache::loncommon::top_nav_help('Help').'</li>'; |
} else { |
} else { |
$menu .= prep_menuitem(\@$menuitem); |
$menu .= prep_menuitem(\@$menuitem); |
} |
} |
} |
} |
|
|
return "<ol class=\"LC_smallMenu LC_right\">$menu</ol>"; |
return "<ol class=\"LC_primary_menu LC_right\">$menu</ol>"; |
} |
} |
|
|
|
|
sub secondary_menu { |
sub secondary_menu { |
my $menu; |
my $menu; |
|
|
|
my $crstype = &Apache::loncommon::course_type(); |
|
my $canedit = &Apache::lonnet::allowed('mdc', $env{'request.course.id'}); |
|
my $canviewgrps = &Apache::lonnet::allowed('vcg', $env{'request.course.id'} |
|
. ($env{'request.course.sec'} ? "/$env{'request.course.sec'}" |
|
: '')); |
|
my $showlink = &show_return_link(); |
|
my %groups = &Apache::lonnet::get_active_groups( |
|
$env{'user.domain'}, $env{'user.name'}, |
|
$env{'course.' . $env{'request.course.id'} . '.domain'}, |
|
$env{'course.' . $env{'request.course.id'} . '.num'}); |
foreach my $menuitem (@secondary_menu) { |
foreach my $menuitem (@secondary_menu) { |
# evaluate conditions |
# evaluate conditions |
next if $$menuitem[4] ne 'always' |
next if $$menuitem[4] ne 'always' |
&& !$env{'request.course.id'}; |
&& !$env{'request.course.id'}; |
next if $$menuitem[4] eq 'showreturn' |
next if $$menuitem[4] eq 'showreturn' |
&& !show_return_link() |
&& !$showlink |
&& !($env{'request.state'} eq 'construct'); |
&& !($env{'request.state'} eq 'construct'); |
next if $$menuitem[4] =~ /^mdc/ |
next if $$menuitem[4] =~ /^mdc/ |
&& !Apache::lonnet::allowed('mdc', $env{'request.course.id'}); |
&& !$canedit; |
next if $$menuitem[4] =~ /nogrp$/ |
next if $$menuitem[4] eq 'mdcCourse' |
&& Apache::loncommon::course_type() eq 'Group'; |
&& $crstype eq 'Community'; |
next if $$menuitem[4] =~ /group$/ |
next if $$menuitem[4] eq 'mdcCommunity' |
&& Apache::loncommon::course_type() ne 'Group'; |
&& $crstype ne 'Community'; |
next if $$menuitem[4] eq 'remotenav' |
next if $$menuitem[4] =~ /^remotenav/ |
&& $env{'environment.remotenavmap'} ne 'on'; |
&& $env{'environment.remotenavmap'} ne 'on'; |
next if $$menuitem[4] eq 'noremotenav' |
next if $$menuitem[4] =~ /noremotenav/ |
&& $env{'environment.remotenavmap'} eq 'on'; |
&& $env{'environment.remotenavmap'} eq 'on'; |
next if $$menuitem[4] =~ /showgroups$/ |
next if $$menuitem[4] =~ /showgroups$/ |
&& !Apache::lonnet::allowed('vcg', $env{'request.course.id'} |
&& $canviewgrps |
. ($env{'request.course.sec'} ? "/$env{'request.course.sec'}" |
&& !%groups; |
: '')) |
|
&& !Apache::lonnet::get_active_groups( |
|
$env{'user.domain'}, $env{'user.name'}, |
|
$env{'course.' . $env{'request.course.id'} . '.domain'}, |
|
$env{'course.' . $env{'request.course.id'} . '.num'}); |
|
|
|
|
if ($$menuitem[3] eq 'Roles' && $env{'request.course.id'}) { |
if($$menuitem[3] eq 'Roles' && $env{'request.course.id'}) { |
|
# special treatment for role selector |
# special treatment for role selector |
my $roles_selector = roles_selector( |
my $roles_selector = roles_selector( |
$env{'course.' . $env{'request.course.id'} . '.domain'}, |
$env{'course.' . $env{'request.course.id'} . '.domain'}, |
Line 259 sub secondary_menu {
|
Line 258 sub secondary_menu {
|
$menu =~ s/\[symb\]/$escsymb/g; |
$menu =~ s/\[symb\]/$escsymb/g; |
} |
} |
|
|
return "<ul id=\"LC_TabMainMenuContent\">$menu</ul>"; |
return "<ul id=\"LC_secondary_menu\">$menu</ul>"; |
} |
} |
|
|
|
|
Line 280 sub initlittle {
|
Line 279 sub initlittle {
|
'login' => 'Log In', |
'login' => 'Log In', |
'launch' => 'Launch Remote Control', |
'launch' => 'Launch Remote Control', |
'groups' => 'Groups', |
'groups' => 'Groups', |
'gdoc' => 'Group Documents', |
'gdoc' => 'Community Documents', |
); |
); |
} |
} |
|
|
Line 363 sub menubuttons {
|
Line 362 sub menubuttons {
|
|
|
if ($env{'user.name'} eq 'public' && $env{'user.domain'} eq 'public') { |
if ($env{'user.name'} eq 'public' && $env{'user.domain'} eq 'public') { |
return (<<ENDINLINEMENU); |
return (<<ENDINLINEMENU); |
<ol class="LC_smallMenu LC_right"> |
<ol class="LC_primary_menu LC_right"> |
<li>$logo</li> |
<li>$logo</li> |
<li><a href="/adm/roles" target="_top">$lt{'login'}</a></li> |
<li><a href="/adm/roles" target="_top">$lt{'login'}</a></li> |
</ol> |
</ol> |
Line 381 ENDINLINEMENU
|
Line 380 ENDINLINEMENU
|
$navmaps=(<<ENDNAV); |
$navmaps=(<<ENDNAV); |
<li><a href="$link" target="_top">$lt{'nav'}</a></li> |
<li><a href="$link" target="_top">$lt{'nav'}</a></li> |
ENDNAV |
ENDNAV |
my $is_group = (&Apache::loncommon::course_type() eq 'Group'); |
my $is_community = |
|
(&Apache::loncommon::course_type() eq 'Community'); |
if (&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) { |
if (&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) { |
my $text = ($is_group) ? $lt{'gdoc'} : $lt{'docs'}; |
my $text = ($is_community) ? $lt{'gdoc'} : $lt{'docs'}; |
$docs=(<<ENDDOCS); |
$docs=(<<ENDDOCS); |
<li><a href="/adm/coursedocs" target="_top">$text</a></li> |
<li><a href="/adm/coursedocs" target="_top">$text</a></li> |
ENDDOCS |
ENDDOCS |
Line 427 ENDCRELOAD
|
Line 427 ENDCRELOAD
|
$utility |
$utility |
// ]]> |
// ]]> |
</script> |
</script> |
<ol class="LC_smallMenu LC_right"> |
<ol class="LC_primary_menu LC_right"> |
<li>$logo</li> |
<li>$logo</li> |
<li>$messagelink</li> |
<li>$messagelink</li> |
<li>$roles</li> |
<li>$roles</li> |
<li>$helplink</li> |
<li>$helplink</li> |
<li><a href="/adm/logout" target="_top">$lt{'exit'}</a></li> |
<li><a href="/adm/logout" target="_top">$lt{'exit'}</a></li> |
</ol> |
</ol> |
<ul id="LC_TabMainMenuContent"> |
<ul id="LC_secondary_menu"> |
<li><a href="/adm/menu" target="_top">$lt{'main'}</a></li> |
<li><a href="/adm/menu" target="_top">$lt{'main'}</a></li> |
$reloadlink |
$reloadlink |
$navmaps |
$navmaps |
Line 1317 sub rawconfig {
|
Line 1317 sub rawconfig {
|
$prt=~s/\$requested_domain/$requested_domain/g; |
$prt=~s/\$requested_domain/$requested_domain/g; |
if ($category_names{$cat}!~/\w/) { $cat='oth'; } |
if ($category_names{$cat}!~/\w/) { $cat='oth'; } |
my $type = &Apache::loncommon::course_type(); |
my $type = &Apache::loncommon::course_type(); |
# |
|
# I don't think we support this |
|
# |
|
# if ($type eq 'Group') { |
|
# $desc = &convert_menu_function($desc,$type); |
|
# } |
|
if ($pro eq 'clear') { |
if ($pro eq 'clear') { |
$output.=&clear($row,$col); |
$output.=&clear($row,$col); |
} elsif ($pro eq 'any') { |
} elsif ($pro eq 'any') { |
Line 1714 sub get_nav_status {
|
Line 1708 sub get_nav_status {
|
return $navstatus; |
return $navstatus; |
} |
} |
|
|
#FIXME this needs to move into mydesk.tab and the other locations |
|
# the text is generated |
|
# |
|
# We currently do not support this anyway. |
|
# |
|
#sub convert_menu_function { |
|
# my ($rolename,$type) = @_; |
|
# if ($type eq 'Group') { |
|
# $rolename =~ s/student/member/g; |
|
# $rolename =~ s/group/team/g; |
|
# $rolename =~ s/course/group/g; |
|
# $rolename =~ s/Course/Group/g; |
|
# } |
|
# return $rolename; |
|
#} |
|
|
|
sub hidden_button_check { |
sub hidden_button_check { |
my $hidden; |
my $hidden; |
if ($env{'request.course.id'} eq '') { |
if ($env{'request.course.id'} eq '') { |
Line 1744 sub hidden_button_check {
|
Line 1722 sub hidden_button_check {
|
|
|
sub roles_selector { |
sub roles_selector { |
my ($cdom,$cnum) = @_; |
my ($cdom,$cnum) = @_; |
|
my $crstype = $env{'course.'.$env{'request.course.id'}.'.type'}; |
|
if ($crstype eq '') { |
|
$crstype = 'Course'; |
|
} |
my $now = time; |
my $now = time; |
my (%courseroles,%seccount); |
my (%courseroles,%seccount); |
my $is_cc; |
my $is_cc; |
Line 1793 sub roles_selector {
|
Line 1775 sub roles_selector {
|
} |
} |
} |
} |
} |
} |
|
my $switchtext; |
|
if ($crstype eq 'Community') { |
|
$switchtext = &mt('Switch community role to...') |
|
} else { |
|
$switchtext = &mt('Switch course role to...') |
|
} |
my @roles_order = ('cc','in','ta','ep','ad','st'); |
my @roles_order = ('cc','in','ta','ep','ad','st'); |
if (keys(%courseroles) > 1) { |
if (keys(%courseroles) > 1) { |
$role_selector = &jump_to_role($cdom,$cnum,\%seccount,\%courseroles); |
$role_selector = &jump_to_role($cdom,$cnum,\%seccount,\%courseroles); |
$role_selector .= '<form name="rolechooser" method="post" action="/adm/roles"> |
$role_selector .= '<form name="rolechooser" method="post" action="/adm/roles"> |
<select name="switchrole" onchange="javascript:adhocRole('."'switchrole'".')">'; |
<select name="switchrole" onchange="javascript:adhocRole('."'switchrole'".')">'; |
$role_selector .= '<option value="">'.&mt('Switch course role to...').'</option>'; |
$role_selector .= '<option value="">'.$switchtext.'</option>'; |
foreach my $role (@roles_order) { |
foreach my $role (@roles_order) { |
if (defined($courseroles{$role})) { |
if (defined($courseroles{$role})) { |
$role_selector .= "\n".'<option value="'.$role.'">'.&Apache::lonnet::plaintext($role).'</option>'; |
$role_selector .= "\n".'<option value="'.$role.'">'.&Apache::lonnet::plaintext($role).'</option>'; |