--- loncom/interface/lonsyllabus.pm 2022/09/18 22:33:45 1.151
+++ loncom/interface/lonsyllabus.pm 2025/03/16 21:04:09 1.157
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Syllabus
#
-# $Id: lonsyllabus.pm,v 1.151 2022/09/18 22:33:45 raeburn Exp $
+# $Id: lonsyllabus.pm,v 1.157 2025/03/16 21:04:09 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -40,6 +40,7 @@ use Apache::lonannounce;
use Apache::lonlocal;
use Apache::lonhtmlcommon;
use Apache::lonspeller();
+use Apache::lonwrapper();
use HTML::Entities();
sub handler {
@@ -152,8 +153,20 @@ sub handler {
&Apache::structuretags::reset_problem_globals();
my $oldfile = $env{'request.filename'};
$env{'request.filename'} = $item;
+ my $oldinhibit;
+ if ($env{'form.only_body'}) {
+ $oldinhibit = $env{'form.inhibitmenu'};
+ $env{'form.inhibitmenu'} = 'yes';
+ }
my $result = &Apache::lonxml::xmlparse($r,$target,$filecontents,
'',%mystyle);
+ if ($env{'form.only_body'}) {
+ if ($oldinhibit ne '') {
+ $env{'form.inhibitmenu'} = $oldinhibit;
+ } else {
+ delete($env{'form.inhibitmenu'});
+ }
+ }
&Apache::structuretags::reset_problem_globals();
&Apache::lonhomework::finished_parsing();
$env{'request.filename'} = $oldfile;
@@ -170,6 +183,7 @@ sub handler {
} else {
my $brcrum;
if ($env{'form.folderpath'} =~ /^supplemental/) {
+ &Apache::loncommon::validate_folderpath(1,'',$cnum,$cdom);
my $title = $env{'form.title'};
if ($title eq '') {
$title = &mt('Syllabus');
@@ -205,10 +219,12 @@ sub handler {
$is_pdf = 1;
}
if ($env{'form.folderpath'} =~ /^supplemental/) {
+ &Apache::loncommon::validate_folderpath(1,'',$cnum,$cdom);
my $title = $env{'form.title'};
if ($title eq '') {
$title = &mt('Syllabus');
}
+ $title = &HTML::Entities::encode($title,'\'"<>&');
$brcrum =
&Apache::lonhtmlcommon::docs_breadcrumbs(undef,$crstype,undef,$title,1);
}
@@ -432,7 +448,7 @@ sub handler {
'box_111_showrssfeeds',$display);
my ($numfeeds,$hiddenfeeds,$rsslinktext);
my $feeds=&Apache::lonrss::advertisefeeds($cnum,$cdom,$forceedit,\$numfeeds,
- \$hiddenfeeds);
+ \$hiddenfeeds,1);
if ($numfeeds) {
$r->print($feeds);
$rsslinktext = &mt('New RSS Feed or Blog');
@@ -460,7 +476,7 @@ sub handler {
&Apache::lontemplate::print_end_template($r);
} else {
unless ($hidefeeds) {
- my $feeds = &Apache::lonrss::advertisefeeds($cnum,$cdom,$forceedit);
+ my $feeds = &Apache::lonrss::advertisefeeds($cnum,$cdom,$forceedit,'','',1);
if ($feeds ne '') {
&Apache::lontemplate::print_start_template($r,&mt('RSS Feeds and Blogs'),'LC_Box');
$r->print($feeds);
@@ -505,7 +521,7 @@ sub handler {
$r->print($urls);
$r->print("