From f6511b256fa41e5caa933418749e34dcc62d71ec Mon Sep 17 00:00:00 2001 From: Quitta Date: Thu, 27 Jun 2013 20:50:32 +0200 Subject: [PATCH] Language stuff supports cookies now and in case a not specified language is given, then it uses the default --- .../ryzom_ams/ams_lib/autoload/helpers.php | 39 ++++++++++++------- .../ryzom_ams/ams_lib/translations/fr.ini | 39 ++++++++++++++++--- 2 files changed, 60 insertions(+), 18 deletions(-) diff --git a/code/ryzom/tools/server/ryzom_ams/ams_lib/autoload/helpers.php b/code/ryzom/tools/server/ryzom_ams/ams_lib/autoload/helpers.php index bedd1e2b8..0bc4197b3 100644 --- a/code/ryzom/tools/server/ryzom_ams/ams_lib/autoload/helpers.php +++ b/code/ryzom/tools/server/ryzom_ams/ams_lib/autoload/helpers.php @@ -25,21 +25,34 @@ class Helpers{ $smarty -> setConfigDir( $SITEBASE . '/configs' ); } - foreach ( $vars as $key => $value ){ + foreach ( $vars as $key => $value ){ $smarty -> assign( $key, $value ); } - if ( isset( $_GET["language"] ) ){ - $language = $_GET["language"]; - if ( file_exists( $AMS_TRANS . '/' . $language . '.ini' ) ){ - - }else{ - global $DEFAULT_LANGUAGE; - $language = $DEFAULT_LANGUAGE; - } - }else{ - global $DEFAULT_LANGUAGE; - $language = $DEFAULT_LANGUAGE; - } + + global $DEFAULT_LANGUAGE; + //if language get param is given = set cookie + //else if no get param is given and a cookie is set, use that language, else use default. + if ( isset( $_GET['language'] ) ) { + //check if the language is supported + if ( file_exists( $AMS_TRANS . '/' . $_GET['language'] . '.ini' ) ){ + //if it's supported, set cookie! + setcookie( 'language',$_GET['language'], time() + 60*60*24*30 ); + $language = $_GET['language']; + }else{ + //the language is not supported, use the default. + $language = $DEFAULT_LANGUAGE; + } + }else{ + //if no get param is given, check if a cookie value for language is set + if ( isset( $_COOKIE['language'] ) ) { + $language = $_COOKIE['language']; + } + //else use the default + else{ + $language = $DEFAULT_LANGUAGE; + } + } + $variables = parse_ini_file( $AMS_TRANS . '/' . $language . '.ini', true ); foreach ( $variables[$template] as $key => $value ){ $smarty -> assign( $key, $value ); diff --git a/code/ryzom/tools/server/ryzom_ams/ams_lib/translations/fr.ini b/code/ryzom/tools/server/ryzom_ams/ams_lib/translations/fr.ini index 2c00c81ef..1e186ec0f 100644 --- a/code/ryzom/tools/server/ryzom_ams/ams_lib/translations/fr.ini +++ b/code/ryzom/tools/server/ryzom_ams/ams_lib/translations/fr.ini @@ -1,21 +1,50 @@ ; This is a sample configuration file ; Comments start with ';', as in php.ini +[home] + +[userlist] + +[login] +login_info = "S'il vous plait vous connecter avec votre nom d'utilisateur et mot de passe." +login_error_message = "Le remplie nom d'utilisateur / mot de passe ne sont pas correctes!" + +[logout] +logout_message = "Vous avez été déconnecté avec succès!" +login_title = "Identifier" +login_timer = "Vous serez redirigé vers la page de connexion à " +login_text = "Ou cliquez ici si vous ne voulez pas attendre!" + +[register_feedback] +status_ok = "Vous vous êtes inscrit comme un patron!" +status_shardoffline = "Il semble que le shard est déconnecté, vous pouvez utiliser le web-compte, mais vous devrez attendre pour le tesson." +status_liboffline = "Vous ne pouvez pas enregistrer un compte à l'heure actuelle" +login_title = "Identifier" +login_timer = "Vous serez redirigé vers la page de connexion à " +login_text = "Ou cliquez ici si vous ne voulez pas attendre!" + [register] title = "RYZOM base dans ENREGISTREMENT DU JEU" -welcome_message = "Bienvenue! S'il vous plaît remplissez les champs ci-dessous pour obtenir votre nouveau compte de base de Ryzom:" +welcome_message = "Bienvenue! S'il vous plait remplissez les champs ci-dessous pour obtenir votre nouveau compte de base de Ryzom:" -username_tag = "Nom d'utilisateur désiré:" +username_tag = "Nom d'utilisateur desire:" username_tooltip = "5-12 caractères et de chiffres minuscules. Le login (nom d'utilisateur) que vous créez ici sera votre nom de connexion. Le nom de vos personnages de jeu sera choisi plus tard." +username_default = "Nom d'utilisateur" -password_tag = "désiré Mot de passe:" +password_tag = "desire Mot de passe:" +password_tooltip = "Prendre un mot de passe dificille, il faut etre 5-20 caracteres" password_message = "mot de passe doit être 5-20 caractères." +password_default = "Mot de passe" cpassword_tag = "Confirmer le mot de passe:" cpassword_message = "Retapez votre mot de passe" +cpassword_tooltip = "Retapez votre mot de passe" +cpassword_default = "Re-entrer mot de passe" -email_tag = "Adresse de courriel (pour qui un email de confirmation vous sera envoyé):" +email_tag= "email adresse" +email_tooltip = "Adresse de courriel (pour qui un email de confirmation vous sera envoyé):" email_message = "Veuillez vérifier que l'adresse e-mail que vous entrez ici est valable et restera valable à l'avenir. Elle ne sera utilisée que pour gérer votre compte de base de Ryzom." +email_default = "email" tac_tag = "OUI, j'accepte les termes de service." -tac_message = "Vous devez accepter les Conditions d'utilisation." +tac_message = "Vous devez accepter les Conditions d'utilisation." \ No newline at end of file