]> wagner.pp.ru Git - oss/stilllife.git/commitdiff
Fixed HTML escaping when _format set to text
authorVictor Wagner <vitus@wagner.pp.ru>
Fri, 4 Apr 2008 19:56:27 +0000 (19:56 +0000)
committerVictor Wagner <vitus@wagner.pp.ru>
Fri, 4 Apr 2008 19:56:27 +0000 (19:56 +0000)
forum/forum

index 7cb882b48c9c9234da43ab5d6d0ec89cd5dadeb5..bc685450577ae4cfd35d1e81175f1304172b3af6 100755 (executable)
@@ -262,7 +262,7 @@ sub show_error {
                print $cgi->header(-type=>'text/html',-charset=>'utf-8');
                print "<html><head><title>Ошибка конфигурации форума</title></head>",
                "<body><h1>Ошибка конфигурации форума</h1><p>",
-               $cgi->escapeHTML($msg),"</p>",
+               escapeHTML($msg),"</p>",
                "<p>При обработке этой ошибки не обнаружен шаблон сообщения об ошибке</p></body></html>";  
        }
        exit;
@@ -1479,7 +1479,7 @@ sub delete_comment {
        my ($cgi,$forum,$topic,$id) = @_;
        my ($tree,$lockfd) = gettree($topic);
        my ($msg) = $tree->look_down(id => $id);
-       show_error("В данной теме нет реплики с id=$id") if (!$msg);
+       show_error($forum,"В данной теме нет реплики с id=$id") if (!$msg);
        if (getrights($cgi,$forum) ne "moderator" 
                && getrights($cgi,$forum) ne "admin") {
                my $author= $msg->look_down(_tag=>"input",name=>"author");
@@ -1910,7 +1910,7 @@ sub input2tree {
        } elsif ($format eq "text") {
                $text=~s/\r?\n\r?\n/<\/p><p class=\"text\">/;
                $text=~s/\r?\n/<br>/;
-               $text = "<div><p class=\"text\">".$text."</p></div>";
+               $text = "<div><p class=\"text\">".escapeHTML($text)."</p></div>";
        } 
        my $txtree = str2tree($text);
        for my $badtag
@@ -1920,7 +1920,7 @@ sub input2tree {
                        $element->delete() if defined $element;
                }       
        }       
-       # Проверяем на наличие URL-ок не оформленных ссылками.
+       # FIXME Проверяем на наличие URL-ок не оформленных ссылками.
        return $txtree;
 }      
 
@@ -2065,3 +2065,10 @@ sub newlistelement {
        }
 }      
 
+sub escapeHTML {
+       local $_ = shift;
+       s/\&/&amp;/g;
+       s/\</&lt;/g;
+       s/\>/&gt;/g;
+       return $_;
+}