[LON-CAPA-cvs] cvs: loncom(version_2_11_X) /interface lonsyllabus.pm
raeburn
raeburn at source.lon-capa.org
Sat Jan 1 15:45:09 EST 2022
raeburn Sat Jan 1 20:45:09 2022 EDT
Modified files: (Branch: version_2_11_X)
/loncom/interface lonsyllabus.pm
Log:
- For 2.11
Backport 1.149, 1.150
Index: loncom/interface/lonsyllabus.pm
diff -u loncom/interface/lonsyllabus.pm:1.138.2.6 loncom/interface/lonsyllabus.pm:1.138.2.7
--- loncom/interface/lonsyllabus.pm:1.138.2.6 Mon Jan 20 17:08:08 2020
+++ loncom/interface/lonsyllabus.pm Sat Jan 1 20:45:09 2022
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Syllabus
#
-# $Id: lonsyllabus.pm,v 1.138.2.6 2020/01/20 17:08:08 raeburn Exp $
+# $Id: lonsyllabus.pm,v 1.138.2.7 2022/01/01 20:45:09 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -187,7 +187,8 @@
unless ($allowed && $forceedit) {
if (($env{'user.name'} eq 'public') && ($env{'user.domain'} eq 'public') &&
($ENV{'SERVER_PORT'} == 443) && ($external =~ m{^http://}) && !($env{'form.usehttp'})) {
- unless (&Apache::lonnet::uses_sts()) {
+ my $hostname = $r->hostname();
+ unless ((&Apache::lonnet::uses_sts()) || (&Apache::lonnet::waf_allssl($hostname))) {
&redirect_to_http($r);
return OK;
}
@@ -316,6 +317,8 @@
my $hostname = &Apache::lonnet::hostname($homeserver);
my $protocol = $Apache::lonnet::protocol{$homeserver};
$protocol = 'http' if ($protocol ne 'https');
+ my $alias = &Apache::lonnet::use_proxy_alias($r,$homeserver);
+ $hostname = $alias if ($alias ne '');
my $link = $protocol.'://'.$hostname.$r->uri;
$r->print('<div class="LC_left_float">'
.'<span class="LC_help_open_topic LC_info">'
@@ -325,7 +328,7 @@
.'</span>'
.'</div><div style="padding:0;clear:both;margin:0;border:0"></div>'."\n");
my $lonhost = $r->dir_config('lonHostID');
- $r->print(&chooser($external,$uploaded,$minimal,$cdom,$cnum,$lonhost,
+ $r->print(&chooser($r,$external,$uploaded,$minimal,$cdom,$cnum,$lonhost,
\%syllabusfields,\%syllabus));
}
} else {
@@ -788,7 +791,7 @@
}
sub chooser {
- my ($external,$uploaded,$minimal,$cdom,$cnum,$lonhost,$fields,$values) = @_;
+ my ($r,$external,$uploaded,$minimal,$cdom,$cnum,$lonhost,$fields,$values) = @_;
my %lt = &Apache::lonlocal::texthash(
'type' => 'Syllabus Type',
'url' => 'External URL',
@@ -853,7 +856,7 @@
'<div id="minimal" class="LC_left_float" style="display: '.$display{'minimal'}.'">'."\n".
'<fieldset><legend>'.$lt{'minimal'}.'</legend>';
if ($minimal) {
- my ($absurl,$filename,$depbutton) = &syllabus_file_info($minimal,$cnum,$cdom,$lonhost,'minimal');
+ my ($absurl,$filename,$depbutton) = &syllabus_file_info($r,$minimal,$cnum,$cdom,$lonhost,'minimal');
$output .= '<a href="javascript:extUrlPreview('."'currminimal'".');">'.$lt{'pr'}.'</a>'.
'<input type="hidden" name="minimalfile" value="'.&HTML::Entities::encode($absurl).'?inhibitmenu=yes" id="currminimal" />'.
$depbutton;
@@ -866,7 +869,7 @@
'<div id="file" class="LC_left_float" style="display: '.$display{'file'}.'">'."\n".
'<fieldset><legend>'.$lt{'file'}.'</legend>';
if ($uploaded) {
- my ($absurl,$filename,$depbutton) = &syllabus_file_info($uploaded,$cnum,$cdom,$lonhost,'file');
+ my ($absurl,$filename,$depbutton) = &syllabus_file_info($r,$uploaded,$cnum,$cdom,$lonhost,'file');
$output .= '<span class="LC_nobreak">'.$lt{'curr'}.' '.
'<input type="hidden" name="uploadedfile" value="'.&HTML::Entities::encode($absurl).'?inhibitmenu=yes" id="currfile" />'.
'<a href="javascript:extUrlPreview('."'currfile'".');">'.$filename.'</a></span>'.$depbutton.
@@ -901,10 +904,12 @@
}
sub syllabus_file_info {
- my ($item,$cnum,$cdom,$lonhost,$context) = @_;
+ my ($r,$item,$cnum,$cdom,$lonhost,$context) = @_;
my $hostname = &Apache::lonnet::hostname($lonhost);
my $protocol = $Apache::lonnet::protocol{$lonhost};
$protocol = 'http' if ($protocol ne 'https');
+ my $alias = &Apache::lonnet::use_proxy_alias($r,$lonhost);
+ $hostname = $alias if ($alias ne '');
my $absurl = $protocol.'://'.$hostname.$item;
my ($filename) = ($item =~ m{([^/]+)$});
my $file=&Apache::lonnet::filelocation("",$item);
More information about the LON-CAPA-cvs
mailing list