[LON-CAPA-cvs] cvs: loncom /interface lonaboutme.pm lonbulletin.pm lonfeedback.pm lonsimplepage.pm lonsyllabus.pm

www lon-capa-cvs@mail.lon-capa.org
Mon, 10 Feb 2003 16:22:28 -0000


www		Mon Feb 10 11:22:28 2003 EDT

  Modified files:              
    /loncom/interface	lonaboutme.pm lonbulletin.pm lonfeedback.pm 
                     	lonsimplepage.pm lonsyllabus.pm 
  Log:
  Bug #1019.
  Allow limited HTML in templates.
  
  
Index: loncom/interface/lonaboutme.pm
diff -u loncom/interface/lonaboutme.pm:1.10 loncom/interface/lonaboutme.pm:1.11
--- loncom/interface/lonaboutme.pm:1.10	Mon Feb 10 10:19:43 2003
+++ loncom/interface/lonaboutme.pm	Mon Feb 10 11:22:28 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # "About Me" Personal Information
 #
-# $Id: lonaboutme.pm,v 1.10 2003/02/10 15:19:43 www Exp $
+# $Id: lonaboutme.pm,v 1.11 2003/02/10 16:22:28 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -90,7 +90,7 @@
        if ($allowed) {
           $r->print('<p><b>Privacy Note:</b> The information you submit can be viewed by anybody who is logged into LON-CAPA. Do not provide information that you are not ready to share publically.</p>'.
 	  '<p><a href="'.$r->uri.'?forcestudent=1">Show Public View</a>'.
- &Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').</p>');
+ &Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').'</p>');
       }
       if (($ENV{'form.uploaddoc.filename'}) &&
           ($ENV{'form.storeupl'}) && ($allowed)) {
@@ -105,8 +105,8 @@
 	   foreach (keys %syllabusfields) {
                my $field=$ENV{'form.'.$_};
                $field=~s/\s+$//s;
-               $field=~s/\</\&lt\;/g;
-               $field=~s/\>/\&gt\;/g;
+               $field=&Apache::lonfeedback::clear_out_html($field,
+                                                           $ENV{'user.adv'});
 	       $syllabus{$_}=$field;
            }
            $syllabus{'uploaded.lastmodified'}=time;
Index: loncom/interface/lonbulletin.pm
diff -u loncom/interface/lonbulletin.pm:1.4 loncom/interface/lonbulletin.pm:1.5
--- loncom/interface/lonbulletin.pm:1.4	Mon Feb 10 10:19:43 2003
+++ loncom/interface/lonbulletin.pm	Mon Feb 10 11:22:28 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network
-# Simple Page Editor
+# Bulletin Board Handler
 #
-# $Id: lonbulletin.pm,v 1.4 2003/02/10 15:19:43 www Exp $
+# $Id: lonbulletin.pm,v 1.5 2003/02/10 16:22:28 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -91,7 +91,7 @@
        if ($allowed) {
           $r->print(
 	  '<p><a href="'.$r->uri.'?forcestudent=1">Show Public View</a>'.
- &Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').</p>');
+ &Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').'</p>');
       }
       if (($ENV{'form.uploaddoc.filename'}) &&
           ($ENV{'form.storeupl'}) && ($allowed)) {
@@ -106,8 +106,7 @@
 	   foreach (keys %syllabusfields) {
                my $field=$ENV{'form.'.$_};
                $field=~s/\s+$//s;
-               $field=~s/\</\&lt\;/g;
-               $field=~s/\>/\&gt\;/g;
+               $field=&Apache::lonfeedback::clear_out_html($field,1);
 	       $syllabus{$_}=$field;
            }
            $syllabus{'uploaded.lastmodified'}=time;
Index: loncom/interface/lonfeedback.pm
diff -u loncom/interface/lonfeedback.pm:1.38 loncom/interface/lonfeedback.pm:1.39
--- loncom/interface/lonfeedback.pm:1.38	Thu Dec 26 11:40:33 2002
+++ loncom/interface/lonfeedback.pm	Mon Feb 10 11:22:28 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Feedback
 #
-# $Id: lonfeedback.pm,v 1.38 2002/12/26 16:40:33 www Exp $
+# $Id: lonfeedback.pm,v 1.39 2003/02/10 16:22:28 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -226,9 +226,10 @@
 }
 
 sub clear_out_html {
-  my $message=$ENV{'form.comment'};
+  my ($message,$override)=@_;
   my $cid=$ENV{'request.course.id'};
-  if ($ENV{"course.$cid.allow_limited_html_in_feedback"} =~ m/yes/i) {
+  if (($ENV{"course.$cid.allow_limited_html_in_feedback"} =~ m/yes/i) ||
+      ($override)) {
       # allows <B> <I> <P> <A> <LI> <OL> <UL> <EM> <BR> <TT> <STRONG> 
       # <BLOCKQUOTE> <DIV .*> <DIV> <IMG>
       my %html=(B=>1, I=>1, P=>1, A=>1, LI=>1, OL=>1, UL=>1, EM=>1,
@@ -550,7 +551,7 @@
       my $usersaw=&resource_output($feedurl);
 
 # Filter HTML out of message (could be nasty)
-      my $message=&clear_out_html;
+      my $message=&clear_out_html($ENV{'form.comment'});
 
 # Assemble email
       my ($email,$citations)=&assemble_email($feedurl,$message,$prevattempts,
Index: loncom/interface/lonsimplepage.pm
diff -u loncom/interface/lonsimplepage.pm:1.3 loncom/interface/lonsimplepage.pm:1.4
--- loncom/interface/lonsimplepage.pm:1.3	Mon Feb 10 10:19:43 2003
+++ loncom/interface/lonsimplepage.pm	Mon Feb 10 11:22:28 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Simple Page Editor
 #
-# $Id: lonsimplepage.pm,v 1.3 2003/02/10 15:19:43 www Exp $
+# $Id: lonsimplepage.pm,v 1.4 2003/02/10 16:22:28 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -90,7 +90,7 @@
        if ($allowed) {
           $r->print(
 	  '<p><a href="'.$r->uri.'?forcestudent=1">Show Public View</a>'.
- &Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').</p>');
+ &Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').'</p>');
       }
       if (($ENV{'form.uploaddoc.filename'}) &&
           ($ENV{'form.storeupl'}) && ($allowed)) {
@@ -105,8 +105,7 @@
 	   foreach (keys %syllabusfields) {
                my $field=$ENV{'form.'.$_};
                $field=~s/\s+$//s;
-               $field=~s/\</\&lt\;/g;
-               $field=~s/\>/\&gt\;/g;
+               $field=&Apache::lonfeedback::clear_out_html($field,1);
 	       $syllabus{$_}=$field;
            }
            $syllabus{'uploaded.lastmodified'}=time;
Index: loncom/interface/lonsyllabus.pm
diff -u loncom/interface/lonsyllabus.pm:1.10 loncom/interface/lonsyllabus.pm:1.11
--- loncom/interface/lonsyllabus.pm:1.10	Mon Feb 10 10:19:43 2003
+++ loncom/interface/lonsyllabus.pm	Mon Feb 10 11:22:28 2003
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Syllabus
 #
-# $Id: lonsyllabus.pm,v 1.10 2003/02/10 15:19:43 www Exp $
+# $Id: lonsyllabus.pm,v 1.11 2003/02/10 16:22:28 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -33,6 +33,7 @@
 use Apache::loncommon;
 use Apache::lonnet;
 use Apache::lontexconvert;
+use Apache::lonfeedback;
 
 sub handler {
     my $r = shift;
@@ -107,8 +108,7 @@
 	   foreach (keys %syllabusfields) {
                my $field=$ENV{'form.'.$_};
                $field=~s/\s+$//s;
-               $field=~s/\</\&lt\;/g;
-               $field=~s/\>/\&gt\;/g;
+               $field=&Apache::lonfeedback::clear_out_html($field,1);
 	       $syllabus{$_}=$field;
                if ($_ eq 'lll_includeurl') { # clean up included URLs
                   my $field='';