* K.D. Chang * @package squirrelmail * @subpackage decode */ /** * Decode cp10029 (MacLatin2) string * @param string $string Encoded string * @return string $string Decoded string */ function charset_decode_cp10029 ($string) { global $default_charset; if (strtolower($default_charset) == 'x-mac-centraleurroman') return $string; /* Only do the slow convert if there are 8-bit characters */ /* avoid using 0xA0 (\240) in ereg ranges. RH73 does not like that */ if (! ereg("[\200-\237]", $string) and ! ereg("[\241-\377]", $string) ) return $string; $cp10029 = array( "\0x80" => 'Ä', "\0x81" => 'Ā', "\0x82" => 'ā', "\0x83" => 'É', "\0x84" => 'Ą', "\0x85" => 'Ö', "\0x86" => 'Ü', "\0x87" => 'á', "\0x88" => 'ą', "\0x89" => 'Č', "\0x8A" => 'ä', "\0x8B" => 'č', "\0x8C" => 'Ć', "\0x8D" => 'ć', "\0x8E" => 'é', "\0x8F" => 'Ź', "\0x90" => 'ź', "\0x91" => 'Ď', "\0x92" => 'í', "\0x93" => 'ď', "\0x94" => 'Ē', "\0x95" => 'ē', "\0x96" => 'Ė', "\0x97" => 'ó', "\0x98" => 'ė', "\0x99" => 'ô', "\0x9A" => 'ö', "\0x9B" => 'õ', "\0x9C" => 'ú', "\0x9D" => 'Ě', "\0x9E" => 'ě', "\0x9F" => 'ü', "\0xA0" => '†', "\0xA1" => '°', "\0xA2" => 'Ę', "\0xA3" => '£', "\0xA4" => '§', "\0xA5" => '•', "\0xA6" => '¶', "\0xA7" => 'ß', "\0xA8" => '®', "\0xA9" => '©', "\0xAA" => '™', "\0xAB" => 'ę', "\0xAC" => '¨', "\0xAD" => '≠', "\0xAE" => 'ģ', "\0xAF" => 'Į', "\0xB0" => 'į', "\0xB1" => 'Ī', "\0xB2" => '≤', "\0xB3" => '≥', "\0xB4" => 'ī', "\0xB5" => 'Ķ', "\0xB6" => '∂', "\0xB7" => '∑', "\0xB8" => 'ł', "\0xB9" => 'Ļ', "\0xBA" => 'ļ', "\0xBB" => 'Ľ', "\0xBC" => 'ľ', "\0xBD" => 'Ĺ', "\0xBE" => 'ĺ', "\0xBF" => 'Ņ', "\0xC0" => 'ņ', "\0xC1" => 'Ń', "\0xC2" => '¬', "\0xC3" => '√', "\0xC4" => 'ń', "\0xC5" => 'Ň', "\0xC6" => '∆', "\0xC7" => '«', "\0xC8" => '»', "\0xC9" => '…', "\0xCA" => ' ', "\0xCB" => 'ň', "\0xCC" => 'Ő', "\0xCD" => 'Õ', "\0xCE" => 'ő', "\0xCF" => 'Ō', "\0xD0" => '–', "\0xD1" => '—', "\0xD2" => '“', "\0xD3" => '”', "\0xD4" => '‘', "\0xD5" => '’', "\0xD6" => '÷', "\0xD7" => '◊', "\0xD8" => 'ō', "\0xD9" => 'Ŕ', "\0xDA" => 'ŕ', "\0xDB" => 'Ř', "\0xDC" => '‹', "\0xDD" => '›', "\0xDE" => 'ř', "\0xDF" => 'Ŗ', "\0xE0" => 'ŗ', "\0xE1" => 'Š', "\0xE2" => '‚', "\0xE3" => '„', "\0xE4" => 'š', "\0xE5" => 'Ś', "\0xE6" => 'ś', "\0xE7" => 'Á', "\0xE8" => 'Ť', "\0xE9" => 'ť', "\0xEA" => 'Í', "\0xEB" => 'Ž', "\0xEC" => 'ž', "\0xED" => 'Ū', "\0xEE" => 'Ó', "\0xEF" => 'Ô', "\0xF0" => 'ū', "\0xF1" => 'Ů', "\0xF2" => 'Ú', "\0xF3" => 'ů', "\0xF4" => 'Ű', "\0xF5" => 'ű', "\0xF6" => 'Ų', "\0xF7" => 'ų', "\0xF8" => 'Ý', "\0xF9" => 'ý', "\0xFA" => 'ķ', "\0xFB" => 'Ż', "\0xFC" => 'Ł', "\0xFD" => 'ż', "\0xFE" => 'Ģ', "\0xFF" => 'ˇ' ); $string = str_replace(array_keys($cp10029), array_values($cp10029), $string); return $string; } ?>