You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							50 lines
						
					
					
						
							1.1 KiB
						
					
					
				
			
		
		
	
	
							50 lines
						
					
					
						
							1.1 KiB
						
					
					
				<?php
 | 
						|
session_start();
 | 
						|
header('Cache-control: private');
 | 
						|
 | 
						|
if (isset($_GET['lang'])) {
 | 
						|
    $langcode = $_GET['lang'];
 | 
						|
 | 
						|
    $_SESSION['lang'] = $langcode;
 | 
						|
 | 
						|
    setcookie('lang', $langcode, time() + (3600 * 24 * 60));
 | 
						|
 | 
						|
    header("Location: {$_SERVER['PHP_SELF']}");
 | 
						|
} else if (isset($_SESSION['lang'])) {
 | 
						|
    $langcode = $_SESSION['lang'];
 | 
						|
} else if (isset($_COOKIE['lang'])) {
 | 
						|
    $langcode = $_COOKIE['lang'];
 | 
						|
} else if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
 | 
						|
    $langcode = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
 | 
						|
} else {
 | 
						|
    $langcode = "en";
 | 
						|
}
 | 
						|
 | 
						|
if (!file_exists(getLanguagePath($langcode)))
 | 
						|
    $langcode = "en";
 | 
						|
 | 
						|
require_once getLanguagePath($langcode);
 | 
						|
 | 
						|
function getLanguagePath($langcode) {
 | 
						|
    return __DIR__ . '/../config/languages/lang.' . $langcode . '.php';
 | 
						|
}
 | 
						|
 | 
						|
function tl($pattern, $args = null) {
 | 
						|
    echo translate($pattern, $args);
 | 
						|
}
 | 
						|
 | 
						|
function translate($pattern, $args = null) {
 | 
						|
 | 
						|
    if (!$args) {
 | 
						|
        return $pattern;
 | 
						|
    }
 | 
						|
 | 
						|
    $size = count($args);
 | 
						|
 | 
						|
    for ($i = 0; $i < $size; $i++) {
 | 
						|
        $pattern = str_ireplace('{' . $i . '}', $args[$i], $pattern);
 | 
						|
    }
 | 
						|
 | 
						|
    return $pattern;
 | 
						|
}
 |