View file core/autoload/other.php

File size: 1.18Kb
<?

//регистронезависимая переводилка
function __($text = false, $args = false, $html = false, $LangType = 'default') { 
	if (!$text) {
		return false;
	}
	$set = Registry::getInstance()->get('set'); 
	
	//Ищем файл с локализацией и выводим замену
	$LangFile = H."core/languages/{$set['lang']}/{$LangType}.lng";
	if (file_exists($LangFile)) {
		$ini = parse_ini_file($LangFile);
		$text = trim($text);
		if (@$ini[$text]) {
			$text = @$ini[$text];
		} else {
			$text = $text;
			//Добавление слов в языковой пакет
			if ($set['lang_auto_add_words'] == 1) {
				$file_default = file_get_contents($LangFile);
				if (mb_stripos($file_default, $text, 0, 'UTF-8') === false) {
					file_put_contents($LangFile, $text.' = ""'.PHP_EOL, FILE_APPEND);
				}
			}				
		}
	}
	// Если есть массив в аргументе (значит что скорее всего это замена слов) 
	if ($args) {
		foreach($args as $key => $val) {
			$text = str_ireplace("%{$key}%", $val, $text); 
			
		}
	}
	if (!$html) {
		$text = output($text,'html');
	}
    return $text; 
}