From 1d5571c96e7a48dce394e22249791313e869a6a4 Mon Sep 17 00:00:00 2001 From: Greger Andersson Date: Tue, 19 Jul 2011 13:35:19 -0700 Subject: [PATCH] problem with i.e % character in description. Now also removed when creating handle string. --- application/helper/CreateHandleString.php | 120 +++++++++++----------- 1 file changed, 60 insertions(+), 60 deletions(-) diff --git a/application/helper/CreateHandleString.php b/application/helper/CreateHandleString.php index 6ccb6ed74..76e84df3a 100644 --- a/application/helper/CreateHandleString.php +++ b/application/helper/CreateHandleString.php @@ -1,61 +1,61 @@ -'S', 'š'=>'s', 'Đ'=>'Dj', 'đ'=>'dj', 'Ž'=>'Z', 'ž'=>'z', 'Č'=>'C', 'č'=>'c', 'Ć'=>'C', 'ć'=>'c', - 'À'=>'A', 'Á'=>'A', 'Â'=>'A', 'Ã'=>'A', 'Ä'=>'A', 'Å'=>'A', 'Æ'=>'A', 'Ç'=>'C', 'È'=>'E', 'É'=>'E', - 'Ê'=>'E', 'Ë'=>'E', 'Ì'=>'I', 'Í'=>'I', 'Î'=>'I', 'Ï'=>'I', 'Ñ'=>'N', 'Ò'=>'O', 'Ó'=>'O', 'Ô'=>'O', - 'Õ'=>'O', 'Ö'=>'O', 'Ø'=>'O', 'Ù'=>'U', 'Ú'=>'U', 'Û'=>'U', 'Ü'=>'U', 'Ý'=>'Y', 'Þ'=>'B', 'ß'=>'Ss', - 'à'=>'a', 'á'=>'a', 'â'=>'a', 'ã'=>'a', 'ä'=>'a', 'å'=>'a', 'æ'=>'a', 'ç'=>'c', 'è'=>'e', 'é'=>'e', - 'ê'=>'e', 'ë'=>'e', 'ì'=>'i', 'í'=>'i', 'î'=>'i', 'ï'=>'i', 'ð'=>'o', 'ñ'=>'n', 'ò'=>'o', 'ó'=>'o', - 'ô'=>'o', 'õ'=>'o', 'ö'=>'o', 'ø'=>'o', 'ù'=>'u', 'ú'=>'u', 'û'=>'u', 'ý'=>'y', 'ý'=>'y', 'þ'=>'b', - 'ÿ'=>'y', 'Ŕ'=>'R', 'ŕ'=>'r', - - // latvian - 'ā' => 'a', 'č' => 'c', 'ē' => 'e', 'ģ' => 'g', 'ī' => 'i', 'ķ' => 'k', - 'ļ' => 'l', 'ņ' => 'n', 'ō' => 'o', 'ŗ' => 'r', 'š' => 's', 'ū' => 'u', 'ž' => 'z', 'Ā' => 'A', - 'Č' => 'C', 'Ē' => 'E', 'Ģ' => 'G', 'Ī' => 'I', 'Ķ' => 'K', 'Ļ' => 'L', 'Ņ' => 'N', 'Ō' => 'O', - 'Ŗ' => 'R', 'Š' => 'S', 'Ū' => 'U', 'Ž' => 'Z', - - // lithuanian - 'ą' => 'a', 'ę' => 'e', 'ė' => 'e', 'į' => 'i', 'ų' => 'u', 'Ą' => 'A', 'Ę' => 'E', 'Ė' => 'E', - 'Į' => 'I', 'Ų' => 'U', - ); - - if (isset($cache[$str])) - { - return $cache[$str]; - } - - if (is_null($replaceSpecialChars)) - { - $replaceSpecialChars = ActiveRecordModel::getApplication()->getConfig()->get('URL_REPLACE_SPECIAL_CHARS'); - } - - if ($replaceSpecialChars) - { - $str = strtr($str, $table); - } - - // optimized for performance - return $cache[$str] = urlencode(preg_replace('/ {1,}/', '-', trim(strtr($str, '$&+\/:;=?@."\'#*><-,', ' ')))); -} - +'S', 'š'=>'s', 'Đ'=>'Dj', 'đ'=>'dj', 'Ž'=>'Z', 'ž'=>'z', 'Č'=>'C', 'č'=>'c', 'Ć'=>'C', 'ć'=>'c', + 'À'=>'A', 'Á'=>'A', 'Â'=>'A', 'Ã'=>'A', 'Ä'=>'A', 'Å'=>'A', 'Æ'=>'A', 'Ç'=>'C', 'È'=>'E', 'É'=>'E', + 'Ê'=>'E', 'Ë'=>'E', 'Ì'=>'I', 'Í'=>'I', 'Î'=>'I', 'Ï'=>'I', 'Ñ'=>'N', 'Ò'=>'O', 'Ó'=>'O', 'Ô'=>'O', + 'Õ'=>'O', 'Ö'=>'O', 'Ø'=>'O', 'Ù'=>'U', 'Ú'=>'U', 'Û'=>'U', 'Ü'=>'U', 'Ý'=>'Y', 'Þ'=>'B', 'ß'=>'Ss', + 'à'=>'a', 'á'=>'a', 'â'=>'a', 'ã'=>'a', 'ä'=>'a', 'å'=>'a', 'æ'=>'a', 'ç'=>'c', 'è'=>'e', 'é'=>'e', + 'ê'=>'e', 'ë'=>'e', 'ì'=>'i', 'í'=>'i', 'î'=>'i', 'ï'=>'i', 'ð'=>'o', 'ñ'=>'n', 'ò'=>'o', 'ó'=>'o', + 'ô'=>'o', 'õ'=>'o', 'ö'=>'o', 'ø'=>'o', 'ù'=>'u', 'ú'=>'u', 'û'=>'u', 'ý'=>'y', 'ý'=>'y', 'þ'=>'b', + 'ÿ'=>'y', 'Ŕ'=>'R', 'ŕ'=>'r', + + // latvian + 'ā' => 'a', 'č' => 'c', 'ē' => 'e', 'ģ' => 'g', 'ī' => 'i', 'ķ' => 'k', + 'ļ' => 'l', 'ņ' => 'n', 'ō' => 'o', 'ŗ' => 'r', 'š' => 's', 'ū' => 'u', 'ž' => 'z', 'Ā' => 'A', + 'Č' => 'C', 'Ē' => 'E', 'Ģ' => 'G', 'Ī' => 'I', 'Ķ' => 'K', 'Ļ' => 'L', 'Ņ' => 'N', 'Ō' => 'O', + 'Ŗ' => 'R', 'Š' => 'S', 'Ū' => 'U', 'Ž' => 'Z', + + // lithuanian + 'ą' => 'a', 'ę' => 'e', 'ė' => 'e', 'į' => 'i', 'ų' => 'u', 'Ą' => 'A', 'Ę' => 'E', 'Ė' => 'E', + 'Į' => 'I', 'Ų' => 'U', + ); + + if (isset($cache[$str])) + { + return $cache[$str]; + } + + if (is_null($replaceSpecialChars)) + { + $replaceSpecialChars = ActiveRecordModel::getApplication()->getConfig()->get('URL_REPLACE_SPECIAL_CHARS'); + } + + if ($replaceSpecialChars) + { + $str = strtr($str, $table); + } + + // optimized for performance + return $cache[$str] = urlencode(preg_replace('/ {1,}/', '-', trim(strtr($str, '$&+\/:;=?@."\'#*><-,%', ' ')))); +} + ?> \ No newline at end of file