Search the Community
Showing results for tags 'fallback'.
-
A very important feature is missing from WHMCS, the language fallback. It's impossible to able to translate all custom stings to all languages, so best scenario is to load the default string translation, for example "english". This is the hook code of "languageFallback.php", the code seems OK but does not effect the loaded language. Any suggestion? /* Developer: Stergios Zgouletas Web-site: web-expert.gr License: GNU GPL v2 */ if(!defined("WHMCS")) die("This file cannot be accessed directly"); function languageFallback($vars){ $defaultLanguage='english'; //Fallback Language $currentLanguage=strtolower($vars['language']); //Current Active Language global $_LANG; $current=$_LANG; if($defaultLanguage!=$currentLanguage){ //Load default language file $default=array(); if(file_exists(ROOTDIR.'/lang/'.$defaultLanguage.'.php')){ require(ROOTDIR.'/lang/'.$defaultLanguage.'.php'); $default=$_LANG; } //Load default override language file $defaultOverride=array(); if(file_exists(ROOTDIR.'/lang/overrides/'.$defaultLanguage.'.php')){ require(ROOTDIR.'/lang/overrides/'.$defaultLanguage.'.php'); $defaultOverride=$_LANG; } //Load module's language $module=array(); if(isset($_REQUEST['m']) && !empty($_REQUEST['m']) && file_exists(ROOTDIR.'/modules/addons/'.$_REQUEST['m'].'/'.$defaultLanguage.'.php')){ require(ROOTDIR.'/modules/addons/'.$_REQUEST['m'].'/'.$defaultLanguage.'.php'); $module=$_ADDONLANG; } $_LANG=array_merge($default,$defaultOverride,$module,$current); return array('languageFallback'=>1); } return array('languageFallback'=>0); } add_hook("ClientAreaPage",0,"languageFallback");
