--- inc/global.php 2001/09/03 15:52:15 1.8 +++ inc/global.php 2001/09/07 12:55:13 1.9 @@ -7,27 +7,29 @@ return strtr(strtolower($str), "©ÐÈÆ®", "¹ðèæ¾"); } + function Letters() { return "ABCÈÆDÐEFGHIJKLMNOPQRS©TUVWXYZ®"; } + function Slova($alpha_only = false) { - $sl = array("A", "B", "C", "È", "Æ", "D", "Ð", "E", "F", - "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", - "R", "S", "©", "T", "U", "V", "W", "X", "Y", "Z", "®"); + $sl = preg_split('//', Letters()); + array_pop($sl); // The final element is empty. if (!$alpha_only) array_unshift($sl, "@"); return $sl; } function MyCompare($a, $b) { - $slova = "ABCÈÆDÐEFGHIJKLMNOPQRS©TUVWXYZ®"; + $slova = Letters(); $weights = "\x14\x15\x16\x17\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2A\x2B\x2C\x2D\x2E\x2F\x30\x31\x32"; return strcasecmp(strtr(MyUpper($a), $slova, $weights), strtr(MyUpper($b), $slova, $weights)); } function MyEscape($str) { - $allowed = array("", "B", "I", "U", "UL", "OL", "LI"); - $str = preg_replace("/(\<\/?\s*(\w+)>[^\>]*\>)/e", - "array_search(MyUpper('\\2'),\$allowed,false)?'\\1':HTMLSpecialChars('\\1')", - $str); - $str = preg_replace("/(^\s+|\s+$)/", "", $str); + return $str; + $allowed = array("", "A", "B", "I", "U", "UL", "OL", "LI"); + $str = preg_replace("/(^\\s+|\\s+$)/", "", $str); + $str = preg_replace("/(\\<\\/?\\s*(\\w+)\\b[^\\>]*\\>)/e", "array_search(MyUpper('\\2'),". + "\$allowed,false)?'\\1':HTMLSpecialChars('\\1')", $str); + $str = preg_replace("/(\\<\\s*[aA]\\b)/", '\\1 target=_blank class=more', $str); $str = ereg_replace("\"", """, $str); return $str; }