diff options
Diffstat (limited to 'modules/gallery/libraries')
-rw-r--r-- | modules/gallery/libraries/HtmlPurifier.php | 38 | ||||
-rw-r--r-- | modules/gallery/libraries/SafeString.php | 24 |
2 files changed, 14 insertions, 48 deletions
diff --git a/modules/gallery/libraries/HtmlPurifier.php b/modules/gallery/libraries/HtmlPurifier.php deleted file mode 100644 index daa5896e..00000000 --- a/modules/gallery/libraries/HtmlPurifier.php +++ /dev/null @@ -1,38 +0,0 @@ -<?php defined("SYSPATH") or die("No direct script access."); -/** - * Gallery - a web based photo album viewer and editor - * Copyright (C) 2000-2009 Bharat Mediratta - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or (at - * your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. - */ -class HtmlPurifier_Core { - private static $_instance; - - static function instance($config=null) { - require_once(dirname(__file__) . "/HTMLPurifier/HTMLPurifier.auto.php"); - if (self::$_instance == NULL) { - $config = isset($config) ? $config : Kohana::config('purifier'); - $purifier_config = HTMLPurifier_Config::createDefault(); - foreach ($config as $category => $key_value) { - foreach ($key_value as $key => $value) { - $purifier_config->set("$category.$key", $value); - } - } - self::$_instance = new HtmlPurifier($purifier_config); - } - - return self::$_instance; - } -} diff --git a/modules/gallery/libraries/SafeString.php b/modules/gallery/libraries/SafeString.php index cc542e01..800647fa 100644 --- a/modules/gallery/libraries/SafeString.php +++ b/modules/gallery/libraries/SafeString.php @@ -83,7 +83,7 @@ class SafeString_Core { * Safe for use in HTML. * * Example:<pre> - * <div><?= $php_var ?> + * <div><?= $php_var ?> * </pre> * @return the string escaped for use in HTML. */ @@ -128,7 +128,7 @@ class SafeString_Core { * Safe for use HTML (purified HTML) * * Example:<pre> - * <div><?= $php_var->purified_html() ?> + * <div><?= $php_var->purified_html() ?> * </pre> * @return the string escaped for use in HTML. */ @@ -154,16 +154,20 @@ class SafeString_Core { // Purifies the string, removing any potentially malicious or unsafe HTML / JavaScript. private static function _purify_for_html($dirty_html) { - if (empty(self::$_purifier)) { - require_once(dirname(__file__) . "/../lib/HTMLPurifier/HTMLPurifier.auto.php"); - $config = HTMLPurifier_Config::createDefault(); - foreach (Kohana::config('purifier') as $category => $key_value) { - foreach ($key_value as $key => $value) { - $config->set("$category.$key", $value); + if (module::is_active("htmlpurifier")) { + if (empty(self::$_purifier)) { + require_once(MODPATH . "htmlpurifier/lib/HTMLPurifier/HTMLPurifier.auto.php"); + $config = HTMLPurifier_Config::createDefault(); + foreach (Kohana::config('purifier') as $category => $key_value) { + foreach ($key_value as $key => $value) { + $config->set("$category.$key", $value); + } } + self::$_purifier = new HTMLPurifier($config); } - self::$_purifier = new HTMLPurifier($config); + return self::$_purifier->purify($dirty_html); + } else { + return self::_escape_for_html($dirty_html); } - return self::$_purifier->purify($dirty_html); } } |