Ignore:
Timestamp:
02/27/2006 05:41:32 AM (6 years ago)
Author:
Winner
Message:

Add: Language selection from GUI. Closes #89
Fix: 2 english language addition from changeset [144].

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/globals/functions.php

    r143 r145  
    7272                        array_unshift($valid_array, ''); 
    7373                        break; 
    74                 case 'lang': 
    75                         $valid_array = getdirlist(ROOT_PATH."globals/language/", FALSE, TRUE); 
    76                         for ($key=0;$key<count($valid_array);$key++) { 
    77                                 $valid_array[$key] = basename($valid_array[$key], '.php'); 
    78                         } 
    79                         array_unshift($valid_array, ''); 
    80                         break; 
    8174        } 
    8275        if (isset($valid_array) && !in_array($ret, $valid_array)) $ret = $valid_array[0]; 
     
    336329} 
    337330 
     331function language_set($language='', $force=FALSE) { 
     332        global $vars, $db, $lang; 
     333        if ($force) { 
     334                $tl = $lang; 
     335        } elseif (get('lang') != '') { 
     336                $tl = get('lang'); 
     337        } elseif ($_SESSION['lang'] != '') { 
     338                $tl = $_SESSION['lang']; 
     339        } elseif ($language != '') { 
     340                $tl = $language; 
     341        } else { 
     342                $tl = $vars['language']['default']; 
     343        } 
     344         
     345        if ($vars['language']['enabled'][$tl] === TRUE &&  
     346                        file_exists(ROOT_PATH."globals/language/".$tl.".php")) { 
     347 
     348                include_once(ROOT_PATH."globals/language/".$tl.".php"); 
     349                if (file_exists(ROOT_PATH."config/language/".$tl."_overwrite.php")) { 
     350                        include_once(ROOT_PATH."config/language/".$tl."_overwrite.php"); 
     351                        $lang = array_multimerge($lang, $lang_overwrite); 
     352                } 
     353                // Set-up mbstring's internal encoding (mainly for supporting UTF-8) 
     354                mb_internal_encoding($lang['charset']); 
     355                 
     356                // Set-up NAMES on database system 
     357                if($vars['db']['version']>=4.1) 
     358                        $db->query("SET NAMES '".$lang['mysql_charset']."'"); 
     359 
     360        } else { 
     361 
     362                if ($tl == $_SESSION['lang']) unset($_SESSION['lang']); 
     363                die("WiND error: Selected language not found."); 
     364 
     365        } 
     366} 
    338367?> 
Note: See TracChangeset for help on using the changeset viewer.