From 99e888f5d115512cb8c1ecde09a2b6718f74ba86 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois?= Informations concernant le compte : ___SENDER___
define ('M_INCONSISTENT_DATES',
" (dates incohéantes avec ___FILENAME___ : ___DIRTIME___ != ___FILETIME___)");
-define ('A_ACTION', 'a'); // action : T_LOGIN, T_LOGOUT, A_RECORD+(on|off), A_PERIOD(minute|hour|day|week|month|quarter)
+define ('A_ACTION', 'a'); // action : T_LOGIN, T_LOGOUT, A_RECORD+(on|off), A_LANG(fr|en|br), A_PERIOD(minute|hour|day|week|month|quarter)
define ('A_GET', 'g'); // get archive
define ('A_HASH', 'h'); // file to update or delete
define ('A_OPEN_TOKEN', 'o'); // ask token
@@ -81,6 +83,7 @@ define ('A_TOKEN', 't'); // session token
define ('A_UPDATE', 'u'); // update perriod for file or archive
define ('A_RECORD', 'r'); // get track status
define ('A_PERIOD', 'p'); // get period status
+define ('A_LANG', 'l'); // get lang status
define ('A_DELETE', 'd'); // delete file ou archive + (sender+token)
define ('T_BAD_PASW', 'bad_psw');
define ('T_CREATE', "create");
@@ -107,6 +110,7 @@ define ('T_ARCHIVE_TITLE', "archive_content");
define ('T_ARCHIVE_MIME', "text/kaz_email_archive");
+$langText = ['fr' => "Francais", 'br' => "Breton", 'en' => "english"];
$periodText = ['minute' => "minute", 'hour' => "heure", 'day' => "jour", 'week' => "semaine", 'month' => "mois"];
// XXX , 'quarter' => "trimestre"];
$periodButton = ['hour' => ["🕕", ">1 heure"],
@@ -193,6 +197,29 @@ function isSenderTrack ($sender) {
return $sender && file_exists (VAR_TRACKS.$sender);
}
+// ========================================
+function setSenderLang ($sender, $lang) {
+ if (!$sender)
+ return;
+ if (!file_exists (VAR_LANG))
+ mkdir (VAR_LANG, 0755);
+ if (empty ($lang) || DEFAULT_LANG == $lang) {
+ rmSenderLang ($sender);
+ } else
+ file_put_contents (VAR_LANG.$sender, $lang.NL);
+}
+function rmSenderLang ($sender) {
+ if (!$sender)
+ return;
+ if (file_exists (VAR_LANG.$sender))
+ unlink (VAR_LANG.$sender);
+}
+function getSenderLang ($sender) {
+ if ($sender && file_exists (VAR_LANG.$sender))
+ return trim (file (VAR_LANG.$sender)[0]);
+ return DEFAULT_LANG;
+}
+
// ========================================
function setSenderPeriod ($sender, $period) {
if (!$sender)
@@ -934,6 +961,10 @@ if (isset ($_REQUEST [A_ACTION])) {
rmSenderTrack ($sender);
$message .= "Votre suivi à été mise à jour.";
break;
+ case preg_match ("/^".A_LANG."(".implode ("|", array_keys ($langText)).")$/i", $_REQUEST [A_ACTION], $matches):
+ setSenderLang ($sender, $matches [1]);
+ $message .= "Votre lang à été mise à jour.";
+ break;
case preg_match ("/^".A_PERIOD."(".implode ("|", array_keys ($periodText)).")$/i", $_REQUEST [A_ACTION], $matches):
setSenderPeriod ($sender, $matches [1]);
$message .= "Votre période à été mise à jour.";
diff --git a/src/Jirafeau/f.php b/src/Jirafeau/f.php
index b6c1c7b..8e9ec5e 100644
--- a/src/Jirafeau/f.php
+++ b/src/Jirafeau/f.php
@@ -46,7 +46,7 @@ $link = jirafeau_get_link($link_name);
if (count($link) == 0) {
require(JIRAFEAU_ROOT.'lib/template/header.php');
echo ' ' . t('FILE_404') .
- '
'.t('FILE_NOT_AVAIL'). - '
'. - t('FILE_EXPIRED') . ' ' . - t('FILE_DELETED') . - '
' . t('FILE_404') . - '