--- loncom/interface/lonmenu.pm 2017/06/22 02:11:27 1.369.2.71.4.2
+++ loncom/interface/lonmenu.pm 2019/02/22 01:57:36 1.369.2.74
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Routines to control the menu
#
-# $Id: lonmenu.pm,v 1.369.2.71.4.2 2017/06/22 02:11:27 raeburn Exp $
+# $Id: lonmenu.pm,v 1.369.2.74 2019/02/22 01:57:36 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -499,6 +499,9 @@ sub secondary_menu {
next if ($item->[2] eq 'mgr' && !$canmgr);
next if ($item->[2] eq 'vcg' && !$canviewgrps);
next if ($item->[2] eq 'crsedit' && !$canedit && !$canvieweditor);
+ next if ($item->[2] eq 'params' && !$canmodpara && !$canviewpara);
+ next if ($item->[2] eq 'author' && !$author);
+ next if ($item->[2] eq 'cca' && !$canmodifycoauthor);
push(@scndsub,$item);
}
}
@@ -528,6 +531,7 @@ sub secondary_menu {
} else {
$$menuitem[0] =~ s{\?register=1}{};
}
+ $$menuitem[0] = &HTML::Entities::encode($$menuitem[0],'&<>"');
}
$menu .= &prep_menuitem(\@$menuitem);
}
@@ -635,6 +639,20 @@ sub build_submenu {
next unless (($env{'user.name'} ne '') && ($env{'user.domain'} ne ''));
$href =~ s/\[domain\]/$env{'user.domain'}/g;
$href =~ s/\[user\]/$env{'user.name'}/g;
+ } elsif (($href =~ m{^/adm/preferences\?}) && ($href =~ /\[returnurl\]/)) {
+ my $returnurl = $ENV{'REQUEST_URI'};
+ if ($ENV{'REQUEST_URI'} =~ m{/adm/preferences\?action=(?:changedomcoord|authorsettings)\&returnurl=([^\&]+)$}) {
+ $returnurl = $1;
+ }
+ if (($returnurl =~ m{^/adm/createuser($|\?action=)}) ||
+ ($returnurl =~ m{^/priv/$match_domain/$match_username}) ||
+ ($returnurl =~ m{^/res(/?$|/$match_domain/$match_username)})) {
+ $returnurl =~ s{\?.*$}{};
+ $returnurl = '&returnurl='.&HTML::Entities::encode($returnurl,'"<>&\'');
+ } else {
+ undef($returnurl);
+ }
+ $href =~ s/\[returnurl\]/$returnurl/;
}
unless (($href eq '') || ($href =~ /^\#/)) {
$target = ' target="_top"';
@@ -965,7 +983,7 @@ if ($env{'browser.mobile'}) {
$is_mobile = 1;
}
- unless ($env{'request.noversionuri'}=~/\/(bulletinboard|smppg|navmaps|syllabus|aboutme|viewclasslist|portfolio|ext\.tool)(\?|$)/) {
+ unless ($env{'request.noversionuri'}=~/\/(bulletinboard|smppg|navmaps|syllabus|aboutme|viewclasslist|portfolio)(\?|$)/) {
if ((!$env{'request.enc'}) && ($env{'request.noversionuri'} !~ m{^/adm/wrapper/ext/}) && ($env{'request.noversionuri'} !~ m{^/uploaded/$match_domain/$match_courseid/docs/})) {
$menuitems.=(< ';
- if ($type eq 'map') {
- $lt{'miss'} .= &mt('Submissions are missing for [quant,_1,question part,question parts] in this folder.',$missing);
- } else {
- $lt{'miss'} .= &mt('Submissions are missing for [quant,_1,part] in this question.',$missing);
- }
- if ($missing > 1) {
- $lt{'miss'} .= ' '.&mt('If you confirm you are done you will be unable to submit answers for them.').'';
- } else {
- $lt{'miss'} .= ' '.&mt('If you confirm you are done you will be unable to submit an answer for it.').' $lt{'preamble'} $lt{$type} $lt{'proctor'} $lt{'cancel'}
';
- }
- return < $lt{'preamble'} $lt{$type} $lt{'miss'} $lt{'okdone'} $lt{'cancel'}