--- loncom/interface/coursecatalog.pm 2016/10/05 13:36:53 1.90 +++ loncom/interface/coursecatalog.pm 2017/02/18 23:39:15 1.91 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler for displaying the course catalog interface # -# $Id: coursecatalog.pm,v 1.90 2016/10/05 13:36:53 raeburn Exp $ +# $Id: coursecatalog.pm,v 1.91 2017/02/18 23:39:15 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -176,8 +176,12 @@ sub handler { $courseinfo{$codedom.'_'.$cnum}{$item}); if ($item eq 'title') { if ($courseinfo{$codedom.'_'.$cnum}{'showsyllabus'}) { + my $usehttp = 0; + if (($ENV{'SERVER_PORT'} == 443) && ($courseinfo{$codedom.'_'.$cnum}{'extsyllplain'})) { + $usehttp = 1; + } $r->print(' '. - ''. + ''. &mt('Syllabus').''); } } @@ -414,7 +418,7 @@ END sub courselink_javascript { return <<"END"; -function ToSyllabus(cdom,cnum) { +function ToSyllabus(cdom,cnum,usehttp) { if (cdom == '' || cdom == null) { return; } @@ -422,6 +426,9 @@ function ToSyllabus(cdom,cnum) { return; } document.linklaunch.action = "/public/"+cdom+"/"+cnum+"/syllabus"; + if (usehttp == 1) { + document.linklaunch.action += '?usehttp=1'; + } document.linklaunch.submit(); } @@ -1275,7 +1282,7 @@ sub build_courseinfo_hash { $cleandesc=~s/'/\\'/g; $cleandesc =~ s/^\s+//; my ($cdom,$cnum)=split(/\_/,$course); - my ($instcode,$singleowner,$ttype,$selfenroll_types, + my ($instcode,$singleowner,$ttype,$selfenroll_types,$extsyllplain, $selfenroll_start,$selfenroll_end,@owners,%ownernames,$categories); if (ref($courses->{$course}) eq 'HASH') { $descr = $courses->{$course}{'description'}; @@ -1286,6 +1293,7 @@ sub build_courseinfo_hash { $selfenroll_start = $courses->{$course}{'selfenroll_start_date'}; $selfenroll_end = $courses->{$course}{'selfenroll_end_date'}; $categories = $courses->{$course}{'categories'}; + $extsyllplain = $courses->{$course}{'extsyllplain'}; push(@owners,$singleowner); if ($courses->{$course}{'co-owners'} ne '') { foreach my $item (split(/,/,$courses->{$course}{'co-owners'})) { @@ -1329,6 +1337,7 @@ sub build_courseinfo_hash { $courseinfo{$course}{'selfenroll_start'} = $selfenroll_start; $courseinfo{$course}{'selfenroll_end'} = $selfenroll_end; $courseinfo{$course}{'categories'} = $categories; + $courseinfo{$course}{'extsyllplain'} = $extsyllplain; my %coursehash = &Apache::lonnet::dump('environment',$cdom,$cnum); my @classids; @@ -1513,7 +1522,8 @@ sub count_students { sub courseinfo_row { my ($info,$knownuser,$details,$countref,$now,$course,$trails,$allitems,$numbers,$canviewall) = @_; my ($cdom,$cnum,$title,$ownerlast,$code,$owner,$seclist,$xlist_items, - $accessdates,$showsyllabus,$counts,$autoenrollment,$output,$categories); + $accessdates,$showsyllabus,$counts,$autoenrollment,$output,$categories, + $extsyllplain); if (ref($info) eq 'HASH') { $cdom = $info->{'cdom'}; $cnum = $info->{'cnum'}; @@ -1527,6 +1537,7 @@ sub courseinfo_row { $counts = $info->{'counts'}; $autoenrollment = $info->{'autoenrollment'}; $showsyllabus = $info->{'showsyllabus'}; + $extsyllplain = $info->{'extsyllplain'}; $categories = $info->{'categories'}; } else { $output = ''.&mt('No information available for [_1].', @@ -1554,7 +1565,11 @@ sub courseinfo_row { ''.$xlist_items.''. ''.$title.' '; if ($showsyllabus) { - $output .= ''.&mt('Syllabus').''; + my $usehttp = 0; + if (($ENV{'SERVER_PORT'} == 443) && ($extsyllplain)) { + $usehttp = 1; + } + $output .= ''.&mt('Syllabus').''; } else { $output .= ' '; }