<?php
/**
* Please note, this a first test and second a example
* If this show to diffcult, so you have to know: you only need parts of this and you CAN (not must; not shold) simplify many things.
**/
# Simulate Cookie with Language:
#$_COOKIE['USER_SELECTED_LANGUAGE'] = 'es';
# Simulate hostname with Language:
#$_SERVER['HTTP_HOST'] = 'pt.fastix.org';
# Simulate uri:
#$_SERVER['REQUEST_URI'] = '/ru/test.php';
$tr['Willkommen']['de'] = 'Willkommen!';
$tr['Willkommen']['en'] = 'Welcome!';
$tr['Willkommen']['fr'] = 'Bienvenue!';
$tr['Willkommen']['pt'] = 'Bem-vindo!';
$tr['Willkommen']['es'] = 'Bienvenida!';
$tr['Willkommen']['zh'] = '欢迎!';
$tr['Willkommen']['ru'] = 'добро пожаловать!';
$tr['Willkommen']['tr'] = 'Karşılama!';
$tr['Projektbeschreibung']['de'] = 'Projektbeschreibung';
$tr['Projektbeschreibung']['en'] = 'Project description';
$tr['Projektbeschreibung']['fr'] = 'Description du projet';
$tr['Projektbeschreibung']['pt'] = 'descrição do projecto';
$tr['Projektbeschreibung']['es'] = 'Descripción del proyecto';
$tr['Projektbeschreibung']['zh'] = '项目介绍';
$tr['Projektbeschreibung']['ru'] = 'описание проекта';
$tr['Projektbeschreibung']['tr'] = 'proje açıklaması';
$tr['Cookie löschen + neu laden']['de'] = 'Cookie löschen + neu laden';
$tr['Cookie löschen + neu laden']['en'] = 'Delete cookie + reload';
$tr['Cookie löschen + neu laden']['fr'] = 'Supprimer Cookie + Reload';
$tr['Cookie löschen + neu laden']['pt'] = 'Excluir Cookies + Reload';
$tr['Cookie löschen + neu laden']['es'] = 'Eliminar la galleta + Actualizar';
$tr['Cookie löschen + neu laden']['zh'] = '删除Cookie+刷新';
$tr['Cookie löschen + neu laden']['ru'] = 'Удалить Cookie + Reload';
$tr['Cookie löschen + neu laden']['tr'] = 'Çerez + yükle Sil';
$tr['Wählen Sie die gewünschte Sprache']['de'] = 'Wählen Sie die gewünschte Sprache';
$tr['Wählen Sie die gewünschte Sprache']['en'] = 'Select the desired language';
$tr['Wählen Sie die gewünschte Sprache']['fr'] = 'Sélectionnez la langue quelque vous prefere';
$tr['Wählen Sie die gewünschte Sprache']['pt'] = 'Seleccione el idioma deseado';
$tr['Wählen Sie die gewünschte Sprache']['es'] = 'Seleccione la lengua';
$tr['Wählen Sie die gewünschte Sprache']['zh'] = '选择的语言的链路你';
$tr['Wählen Sie die gewünschte Sprache']['ru'] = 'Выберите нужный язык';
$tr['Wählen Sie die gewünschte Sprache']['tr'] = 'İstediğiniz dili seçin';
$langName['de'] = 'deutsch';
$langName['en'] = 'english';
$langName['fr'] = 'français';
$langName['pt'] = 'português';
$langName['es'] = 'español';
$langName['zh'] = '中国';
$langName['ru'] = 'русский';
$langName['tr'] = 'türk';
### RUN!
require_once 'LanguageSelector.php';
$arLanguages = array('de', 'en', 'fr','pt', 'es', 'zh', 'ru', 'tr' );
$LanguageSelector = new LanguageSelector( $arLanguages );
#$LanguageSelector -> storeMethod = 'cookie'; # this is the default
#$LanguageSelector -> storeMethod = 'session'; # alternative method
#$LanguageSelector -> storeName = 'USER_SELECTED_LANGUAGE'; # this is the default
define ( 'LANGUAGE', $LanguageSelector -> getLang() );
?><!doctype HTML>
<html lang="<?=LANGUAGE;?>">
<head>
<meta charset="utf-8">
<title><?=$tr['Willkommen'][LANGUAGE];?></title>
<?php
foreach ($arLanguages as $lang) {
?>
<link rel="alternate" hreflang="
<?=$lang;?>" href="?
<?=urlencode( $LanguageSelector -> storeName );?>=
<?=urlencode($lang);?>" />
<?php
}
?>
</head>
<body>
<h1><?=$tr['Willkommen'][LANGUAGE];?></h1>
<?php if ( 'cookie' == $LanguageSelector -> storeMethod ) { ?>
<h2>(Cookie)</h2>
<p><?=$tr['Wählen Sie die gewünschte Sprache'][LANGUAGE];?>:</p>
<p>
<?php
foreach ( $arLanguages as $lang ) {
?>
<button onclick="document.cookie='<?=$LanguageSelector->storeName;?>=<?=$lang;?>'; location.reload();"><?=$lang;?></button>
<?php
}
}
?>
</p>
<h2>(HREF/GET)</h2>
<p><?=$tr['Wählen Sie die gewünschte Sprache'][LANGUAGE];?>:</p>
<p>
<?php
foreach ( $arLanguages as $lang ) {
?>
<?php
}
?>
</p>
<h2>(Form/Post)</h2>
<p><?=$tr['Wählen Sie die gewünschte Sprache'][LANGUAGE];?>:</p>
<form method="post">
<select id="<?=$LanguageSelector -> storeName;?>" name="<?=$LanguageSelector -> storeName;?>" onchange="submit()">
<?php
foreach ( $arLanguages as $lang ) {
$selected='';
if ( $lang == $LanguageSelector -> getLastSelection() ) { $selected=' selected="selected"'; }
?>
<?php
}
?>
</select>
</form>
<p>
<?php if ( 'cookie' == $LanguageSelector -> storeMethod ) { ?>
<button onclick="document.cookie = '<?=$LanguageSelector -> storeName;?>=; expires=Thu, 01 Jan 1970 00:00:01 GMT;'; location.reload();"><?=$tr['Cookie löschen + neu laden'][LANGUAGE]?></button>
<?php } elseif ( 'session' == $LanguageSelector -> storeMethod ) { ?>
<button onclick="location.href='
<?=$_SERVER['SCRIPT_NAME'];?>?
<?=urlencode($LanguageSelector -> storeName);?>=unset';">
<?=$tr['Cookie löschen + neu laden'][LANGUAGE
]?></button>
<?php } else {
trigger_error("Fatal: storeMethod must be 'cookie' or 'session'. given is: '" . $this -> storeMethod . "'", E_USER_ERROR );
}
?>
</p>
<hr />
<?=round( ( microtime( true ) - $startTime ) * 1000, 2 ); ?> ms elapsed on a Banana Pi M3
<hr />
<a href="https://code.fastix.org/Projekte/PHP%3ALanguageSelector/"><?=$tr['Projektbeschreibung'][LANGUAGE];?></a>
</body>
</html>