From: Philippe M. <phi...@us...> - 2002-09-03 06:52:48
|
Update of /cvsroot/squirrelmail/squirrelmail/functions In directory usw-pr-cvs1:/tmp/cvs-serv13617 Modified Files: i18n.php Log Message: "Tomas Kuliavas" <to...@us...> Index: i18n.php =================================================================== RCS file: /cvsroot/squirrelmail/squirrelmail/functions/i18n.php,v retrieving revision 1.104 retrieving revision 1.105 diff -u -w -r1.104 -r1.105 --- i18n.php 28 Aug 2002 11:36:07 -0000 1.104 +++ i18n.php 3 Sep 2002 06:52:43 -0000 1.105 @@ -34,8 +34,12 @@ $ret = charset_decode_iso_8859_1 ($string); } else if ($res[1] == '2') { $ret = charset_decode_iso_8859_2 ($string); + } else if ($res[1] == '4') { + $ret = charset_decode_iso_8859_4 ($string); } else if ($res[1] == '7') { $ret = charset_decode_iso_8859_7 ($string); + } else if ($res[1] == '13') { + $ret = charset_decode_iso_8859_13 ($string); } else if ($res[1] == '15') { $ret = charset_decode_iso_8859_15 ($string); } else { @@ -403,6 +407,53 @@ return $string; } +/* + iso-8859-4 is Baltic codeset used in some email clients + instead of iso-8859-13 in Lithuania + only Lithuanian charactes are added. +*/ + +function charset_decode_iso_8859_4 ($string) { + // latin capital a with ogonek + $string = str_replace ("\241", 'Ą', $string); + // latin capital c with caron + $string = str_replace ("\310", 'Č', $string); + // latin capital e with ogonek + $string = str_replace ("\312", 'Ę', $string); + // latin capital e with dot above + $string = str_replace ("\314", 'Ė', $string); + // latin capital i with ogonek + $string = str_replace ("\307", 'Į', $string); + // latin capital s with caron + $string = str_replace ("\251", 'Š', $string); + // latin capital u with ogonek + $string = str_replace ("\331", 'Ų', $string); + // latin capital u with macron + $string = str_replace ("\336", 'Ū', $string); + // latin capital z with caron + $string = str_replace ("\256", 'Ž', $string); + // latin small a with ogonek + $string = str_replace ("\261", 'ą', $string); + // latin small c with caron + $string = str_replace ("\350", 'č', $string); + // latin small e with ogonek + $string = str_replace ("\352", 'ę', $string); + // latin small e with dot above + $string = str_replace ("\354", 'ė', $string); + // latin small i with ogonek + $string = str_replace ("\347", 'į', $string); + // latin small s with caron + $string = str_replace ("\271", 'š', $string); + // latin small u with ogonek + $string = str_replace ("\371", 'ų', $string); + // latin small u with macron + $string = str_replace ("\376", 'ū', $string); + // latin small z with caron + $string = str_replace ("\276", 'ž', $string); + + return (charset_decode_iso_8859_1($string)); +} + /* iso-8859-7 is Greek. */ function charset_decode_iso_8859_7 ($string) { global $default_charset; @@ -462,6 +513,52 @@ $string = preg_replace("/([\274-\376])/","'&#' . (ord(\\1)+720)",$string); return $string; +} + +/* + iso-8859-13 codeset used in Lithuania + only Lithuanian charactes are added. +*/ + +function charset_decode_iso_8859_13 ($string) { + // latin capital a with ogonek + $string = str_replace ("\300", 'Ą', $string); + // latin capital c with caron + $string = str_replace ("\310", 'Č', $string); + // latin capital e with ogonek + $string = str_replace ("\306", 'Ę', $string); + // latin capital e with dot above + $string = str_replace ("\313", 'Ė', $string); + // latin capital i with ogonek + $string = str_replace ("\301", 'Į', $string); + // latin capital s with caron + $string = str_replace ("\320", 'Š', $string); + // latin capital u with ogonek + $string = str_replace ("\330", 'Ų', $string); + // latin capital u with macron + $string = str_replace ("\333", 'Ū', $string); + // latin capital z with caron + $string = str_replace ("\336", 'Ž', $string); + // latin small a with ogonek + $string = str_replace ("\340", 'ą', $string); + // latin small c with caron + $string = str_replace ("\350", 'č', $string); + // latin small e with ogonek + $string = str_replace ("\346", 'ę', $string); + // latin small e with dot above + $string = str_replace ("\353", 'ė', $string); + // latin small i with ogonek + $string = str_replace ("\341", 'į', $string); + // latin small s with caron + $string = str_replace ("\360", 'š', $string); + // latin small u with ogonek + $string = str_replace ("\370", 'ų', $string); + // latin small u with macron + $string = str_replace ("\373", 'ū', $string); + // latin small z with caron + $string = str_replace ("\376", 'ž', $string); + + return (charset_decode_iso_8859_1($string)); } /* |