diff --git a/src/RequestResponse/Request.php b/src/RequestResponse/Request.php index 53afc35..b228a28 100755 --- a/src/RequestResponse/Request.php +++ b/src/RequestResponse/Request.php @@ -148,12 +148,12 @@ class Request{ switch ($type) { case self::PARAM_RAW: // No cleaning at all. - $param = fix_utf8($param); + $param = self::fix_utf8($param); return $param; case self::PARAM_RAW_TRIMMED: // No cleaning, but strip leading and trailing whitespace. - $param = fix_utf8($param); + $param = self::fix_utf8($param); return trim($param); case self::PARAM_INT: @@ -198,12 +198,12 @@ class Request{ case self::PARAM_NOTAGS: // Strip all tags. - $param = fix_utf8($param); + $param = self::fix_utf8($param); return strip_tags($param); case self::PARAM_TEXT: // Leave only tags needed for multilang. - $param = fix_utf8($param); + $param = self::fix_utf8($param); // If the multilang syntax is not correct we strip all tags because it would break xhtml strict which is required // for accessibility standards please note this cleaning does not strip unbalanced '>' for BC compatibility reasons. do { @@ -293,7 +293,7 @@ class Request{ case self::PARAM_FILE: // Strip all suspicious characters from filename. - $param = fix_utf8($param); + $param = self::fix_utf8($param); $param = preg_replace('~[[:cntrl:]]|[&<>"`\|\':\\\\/]~u', '', $param); if ($param === '.' || $param === '..') { $param = ''; @@ -302,7 +302,7 @@ class Request{ case self::PARAM_PATH: // Strip all suspicious characters from file path. - $param = fix_utf8($param); + $param = self::fix_utf8($param); $param = str_replace('\\', '/', $param); // Explode the path and clean each element using the PARAM_FILE rules. @@ -347,7 +347,7 @@ class Request{ return $param; case self::PARAM_URL: // Allow safe ftp, http, mailto urls. - $param = fix_utf8($param); + $param = self::fix_utf8($param); if (!empty($param) && self::validateUrlSyntax($param, 's?H?S?F?E?u-P-a?I?p?f?q?r?')) { // All is ok, param is respected. } else { @@ -406,7 +406,7 @@ class Request{ } case self::PARAM_TAGLIST: - $param = fix_utf8($param); + $param = self::fix_utf8($param); $tags = explode(',', $param); $result = array(); foreach ($tags as $tag) { @@ -422,7 +422,7 @@ class Request{ } case self::PARAM_USERNAME: - $param = fix_utf8($param); + $param = self::fix_utf8($param); $param = trim($param); // Convert uppercase to lowercase MDL-16919. $param = core_text::strtolower($param); @@ -435,7 +435,7 @@ class Request{ return $param; case self::PARAM_EMAIL: - $param = fix_utf8($param); + $param = self::fix_utf8($param); if (validate_email($param)) { return $param; } else { @@ -451,7 +451,7 @@ class Request{ case self::PARAM_TIMEZONE: // Can be int, float(with .5 or .0) or string seperated by '/' and can have '-_'. - $param = fix_utf8($param); + $param = self::fix_utf8($param); $timezonepattern = '/^(([+-]?(0?[0-9](\.[5|0])?|1[0-3](\.0)?|1[0-2]\.5))|(99)|[[:alnum:]]+(\/?[[:alpha:]_-])+)$/'; if (preg_match($timezonepattern, $param)) { return $param; @@ -465,7 +465,7 @@ class Request{ } } - function fix_utf8($value) { + private static function fix_utf8($value) { if (is_null($value) or $value === '') { return $value; @@ -477,7 +477,7 @@ class Request{ // No null bytes expected in our data, so let's remove it. $value = str_replace("\0", '', $value); - // Note: this duplicates min_fix_utf8() intentionally. + // Note: this duplicates min_self::self::fix_utf8() intentionally. static $buggyiconv = null; if ($buggyiconv === null) { $buggyiconv = (!function_exists('iconv') or @iconv('UTF-8', 'UTF-8//IGNORE', '100'.chr(130).'€') !== '100€'); @@ -503,7 +503,7 @@ class Request{ } else if (is_array($value)) { foreach ($value as $k => $v) { - $value[$k] = fix_utf8($v); + $value[$k] = self::fix_utf8($v); } return $value; @@ -511,7 +511,7 @@ class Request{ // Do not modify original. $value = clone($value); foreach ($value as $k => $v) { - $value->$k = fix_utf8($v); + $value->$k = self::fix_utf8($v); } return $value;