version 1.402, 2012/12/27 05:28:33
|
version 1.406, 2012/12/31 14:29:08
|
Line 326 sub secondary_menu {
|
Line 326 sub secondary_menu {
|
my $canmgr = &Apache::lonnet::allowed('mgr', $crs_sec); |
my $canmgr = &Apache::lonnet::allowed('mgr', $crs_sec); |
my $author = &getauthor(); |
my $author = &getauthor(); |
|
|
|
my ($canmodifycoauthor); |
|
if ($env{'request.role'} eq "au./$env{'user.domain'}/") { |
|
my $extent = "$env{'user.domain'}/$env{'user.name'}"; |
|
if ((&Apache::lonnet::allowed('cca',$extent)) || |
|
(&Apache::lonnet::allowed('caa',$extent))) { |
|
$canmodifycoauthor = 1; |
|
} |
|
} |
|
|
my %groups = &Apache::lonnet::get_active_groups( |
my %groups = &Apache::lonnet::get_active_groups( |
$env{'user.domain'}, $env{'user.name'}, |
$env{'user.domain'}, $env{'user.name'}, |
$env{'course.' . $env{'request.course.id'} . '.domain'}, |
$env{'course.' . $env{'request.course.id'} . '.domain'}, |
Line 337 sub secondary_menu {
|
Line 346 sub secondary_menu {
|
# evaluate conditions |
# evaluate conditions |
next if ref($menuitem) ne 'ARRAY'; |
next if ref($menuitem) ne 'ARRAY'; |
next if $$menuitem[4] ne 'always' |
next if $$menuitem[4] ne 'always' |
&& $$menuitem[4] ne 'author' |
&& ($$menuitem[4] ne 'author' && $$menuitem[4] ne 'cca') |
&& !$env{'request.course.id'}; |
&& !$env{'request.course.id'}; |
next if $$menuitem[4] =~ /^mdc/ |
next if $$menuitem[4] =~ /^mdc/ |
&& !$canedit; |
&& !$canedit; |
Line 362 sub secondary_menu {
|
Line 371 sub secondary_menu {
|
&& !%groups; |
&& !%groups; |
next if $$menuitem[4] eq 'author' |
next if $$menuitem[4] eq 'author' |
&& !$author; |
&& !$author; |
|
next if $$menuitem[4] eq 'cca' |
|
&& !$canmodifycoauthor; |
|
|
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 |
Line 864 sub prepare_functions {
|
Line 875 sub prepare_functions {
|
$forceedit,$forceview,$forcereg, |
$forceedit,$forceview,$forcereg, |
$env{'form.title'},$env{'form.suppurl'}); |
$env{'form.title'},$env{'form.suppurl'}); |
} |
} |
} elsif ($resurl !~ m{^/?adm/($match_domain)/($match_username)/aboutme$}) { |
} elsif (($resurl =~ m{^/?adm/viewclasslist$}) && |
|
(&Apache::lonnet::allowed('opa',$env{'request.course.id'}))) { |
|
($cfile,$home,$switchserver,$forceedit,$forceview) = |
|
&Apache::lonnet::can_edit_resource($resurl,$cnum,$cdom,$resurl, |
|
$env{'form.symb'}); |
|
$editbutton = &get_editbutton($cfile,$home,$switchserver, |
|
$forceedit,$forceview,$forcereg); |
|
} elsif (($resurl !~ m{^/?adm/($match_domain)/($match_username)/aboutme$}) && |
|
($resurl ne '/cgi-bin/printout.pl')) { |
if ($env{'request.filename'}) { |
if ($env{'request.filename'}) { |
my $file=&Apache::lonnet::declutter($env{'request.filename'}); |
my $file=&Apache::lonnet::declutter($env{'request.filename'}); |
($cfile,$home,$switchserver,$forceedit,$forceview) = |
($cfile,$home,$switchserver,$forceedit,$forceview) = |
Line 918 sub prepare_functions {
|
Line 937 sub prepare_functions {
|
'Add records'); |
'Add records'); |
} |
} |
} |
} |
} elsif ($resurl =~ m{^/?adm/viewclasslist}) { |
|
# This applies to viewclasslist page for users in a course |
|
if (&Apache::lonnet::allowed('opa',$env{'request.course.id'})) { |
|
&switch('','',6,4,'pparm.png','Settings', |
|
'', |
|
"go('/adm/courseprefs?actions=classlists&phase=display')", |
|
'Student-viewable classlist options'); |
|
} |
|
} |
} |
if (($env{'form.folderpath'} =~ /^supplemental/) && |
if (($env{'form.folderpath'} =~ /^supplemental/) && |
(&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) && |
(&Apache::lonnet::allowed('mdc',$env{'request.course.id'})) && |
Line 979 sub advtools_crumbs {
|
Line 990 sub advtools_crumbs {
|
'advtools', @funcs[61,71,72,73,74,92]); |
'advtools', @funcs[61,71,72,73,74,92]); |
} elsif ($env{'request.noversionuri'} eq '/adm/viewclasslist') { |
} elsif ($env{'request.noversionuri'} eq '/adm/viewclasslist') { |
&Apache::lonhtmlcommon::add_breadcrumb_tool( |
&Apache::lonhtmlcommon::add_breadcrumb_tool( |
'advtools', @funcs[64]); |
'advtools', @funcs[61]); |
} |
} |
} |
} |
|
|
Line 1707 sub roles_selector {
|
Line 1718 sub roles_selector {
|
} |
} |
foreach my $role (sort(keys(%courseroles))) { |
foreach my $role (sort(keys(%courseroles))) { |
if ($role =~ /^cr/) { |
if ($role =~ /^cr/) { |
my $include; |
my $include; |
if ($env{'request.role'} =~ m{^\Q$role\E}) { |
if ($env{'request.role'} =~ m{^\Q$role\E}) { |
if ($seccount{$role} > 1) { |
if ($seccount{$role} > 1) { |
$include = 1; |
$include = 1; |
} |
} |
} else { |
} else { |
$include = 1; |
$include = 1; |
} |
} |
if ($include) { |
if ($include) { |
push(@submenu,['javascript:adhocRole('."'$role'".')', |
push(@submenu,['javascript:adhocRole('."'$role'".')', |
&Apache::lonnet::plaintext($role)]); |
&Apache::lonnet::plaintext($role)]); |
} |
} |
} |
} |
} |
} |
if (@submenu > 0) { |
if (@submenu > 0) { |