Need to escape $oldway in the print statement.
[squirrelmail.git] / functions / i18n.php
index a0e9456377db1de2c5998947cee7f694e2103f0f..48611d52f21434b604ff049e118972ace3e9b00c 100644 (file)
@@ -20,6 +20,7 @@ require_once(SM_PATH . 'functions/global.php');
 /* Decodes a string to the internal encoding from the given charset */
 function charset_decode ($charset, $string) {
     global $languages, $squirrelmail_language, $default_charset;
+    global $use_php_recode, $use_php_iconv, $agresive_decoding;
 
     if (isset($languages[$squirrelmail_language]['XTRA_CODE']) &&
         function_exists($languages[$squirrelmail_language]['XTRA_CODE'])) {
@@ -31,8 +32,10 @@ function charset_decode ($charset, $string) {
     set_my_charset();
 
     // Variables that allow to use functions without function_exist() calls
-    $use_php_recode=false;
-    $use_php_iconv=false;
+    if (! isset($use_php_recode) || $use_php_recode=="" ) {
+            $use_php_recode=false; }
+    if (! isset($use_php_iconv) || $use_php_iconv=="" ) {
+         $use_php_iconv=false; }
 
     // Don't do conversion if charset is the same.
     if ( $charset == strtolower($default_charset) )
@@ -74,7 +77,8 @@ function charset_decode ($charset, $string) {
     $string = htmlspecialchars ($string);
 
     /* controls cpu and memory intensive decoding cycles */
-    $agresive_decoding = false;
+    if (! isset($agresive_decoding) || $agresive_decoding=="" ) {
+         $agresive_decoding=false; }
 
     if (ereg('iso-8859-([[:digit:]]+)', $charset, $res)) {
         if ($res[1] == '1') {
@@ -187,6 +191,9 @@ function charset_decode ($charset, $string) {
     } else if ($charset == 'ibm866') {
         include_once(SM_PATH . 'functions/decode/cp866.php');
         $ret = charset_decode_cp866 ($string);
+    } else if ($charset == 'iso-ir-111') {
+        include_once(SM_PATH . 'functions/decode/iso-ir-111.php');
+        $ret = charset_decode_iso_ir_111 ($string);
     } else if ($charset == 'tis-620') {
         include_once(SM_PATH . 'functions/decode/tis620.php');
         $ret = charset_decode_tis620 ($string);
@@ -583,22 +590,26 @@ if ( file_exists( SM_PATH . 'locale/bg_BG') ) {
     $languages['bg_BG']['CHARSET'] = 'windows-1251';
     $languages['bg']['ALIAS'] = 'bg_BG';
 }
+/*
 if ( file_exists( SM_PATH . 'locale/uk_UA') ) {
     $languages['uk_UA']['NAME']    = 'Ukrainian';
     $languages['uk_UA']['CHARSET'] = 'koi8-u';
     $languages['uk']['ALIAS'] = 'uk_UA';
 }
+*/
 if ( file_exists( SM_PATH . 'locale/cy_GB') ) {
     $languages['cy_GB']['NAME']    = 'Welsh';
     $languages['cy_GB']['ALTNAME'] = 'Cymraeg';
     $languages['cy_GB']['CHARSET'] = 'iso-8859-1';
     $languages['cy']['ALIAS'] = 'cy_GB';
 }
+/*
 if ( file_exists( SM_PATH . 'locale/vi_VN') ) {
     $languages['vi_VN']['NAME']    = 'Vietnamese';
     $languages['vi_VN']['CHARSET'] = 'utf-8';
     $languages['vi']['ALIAS'] = 'vi_VN';
 }
+*/
 // Right to left languages
 if ( file_exists( SM_PATH . 'locale/ar') ) {
     $languages['ar']['NAME']    = 'Arabic';