Commit 9acd4c3d authored by cobalt74's avatar cobalt74

plugin i18n v2.3.0 - Ajout fonction de changement de langue dans Leed.

+ ajout ordre de tri avant de sauvegarder
parent a9aa9b09
......@@ -14,6 +14,7 @@ Instructions
Version
=======
* v2.3.0 - Ajout de la possiblité de changer la langue de Leed
* v2.2.2 - garder la valeur de la liste pour la copy
* v2.2.1 - Ajout contrôle sur la copy. répertoire dispo en écriture
* v2.2.0 - Ajout d'un fonction de copy de fichier de langue source vers cible
......
......@@ -4,7 +4,7 @@
@author Cobalt74 <cobalt74@gmail.com>
@link http://www.cobestran.com
@licence CC by nc sa http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
@version 2.2.2
@version 2.3.0
@description Le plugin i18n permet d'effectuer une traduction de Leed et des plugins en générant les fichiers Json souhaités
*/
......@@ -24,6 +24,18 @@ function i18n_plugin_AddForm(){
/* -------------------------------------------------------- */
// Gestion des retours des formulaires
/* -------------------------------------------------------- */
// cas de changement de la langue de Leed
if(isset($_POST['plugin_i18n_changeLngLeed'])){
$langue = substr(basename($_POST['plugin_i18n_changeLngLeed']),0,2);
$content = file_get_contents('constant.php');
$content = preg_replace('#define\(\'LANGUAGE\',\'([a-z]+)\'\);?#','define(\'LANGUAGE\',\''.$langue.'\')', $content);
if (is_writable('constant.php')){
file_put_contents('constant.php', $content);
$test['info'][]=_t('P_I18N_MSG_CHG_LNG_LEED');
} else {
$test['Erreur'][]=_t('P_I18N_UPD_LNG_FILE_ERR',array('<b>constant.php</b>'));
}
}
// Cas validation de la création d'une langue sur Leed.
$newLanguage = '';
if(isset($_POST['plugin_i18n_newLanguage'])){
......@@ -57,10 +69,9 @@ function i18n_plugin_AddForm(){
if(isset($_POST['0123456789MAJLanguage'])){
$_ = array_map('addslashes',array_merge($_GET, $_POST));
//$_ = array_merge($_GET, $_POST);
ksort($_);
$ModifLanguage = $_['0123456789MAJLanguage'];
unset($_['0123456789MAJLanguage']);
//print_r($_);
if(is_writable($ModifLanguage)){
file_put_contents($ModifLanguage, plugin_i18n_json_encode($_));
$test['Info'][]=_t('P_I18N_UPD_LNG_FILE_OK', array($_POST['0123456789MAJLanguage']));
......@@ -109,6 +120,22 @@ function i18n_plugin_AddForm(){
echo '<h3>'._t('P_I18N_MANAGE_LNG_TITLE').'</h3>';
echo '<form action="settings.php#i18n" method="POST">
<select name="plugin_i18n_changeLngLeed">';
$filesLeed = glob('./locale/*.json');
foreach($filesLeed as $file){
if ($file=='./locale/'.LANGUAGE.'.json')
{
echo '<option selected=selected value="'.$file.'">'.$file.'</option>';
} else {
echo '<option value="'.$file.'">'.$file.'</option>';
}
}
echo' </select>
<input type="submit" name="plugin_i18n_chgLngLeed" value="'._t('P_I18N_BTN_CHG_LNG_LEED').'" class="button">
</form>
<form action="settings.php#i18n" method="POST">
<input type="text" value="" placeholder="ex : ./locale/xx.json" name="plugin_i18n_newLanguage">
<input type="submit" name="plugin_i18n_saveButton" value="'._t('P_I18N_BTN_CREATE_FILE').'" class="button">
</form>
......
{
"P_I18N_BTN_CHG_LNG_LEED":"Change language on Leed",
"P_I18N_BTN_COPY_FILE":"Copy file",
"P_I18N_BTN_CREATE_FILE":"Create a file",
"P_I18N_BTN_LOAD_FILE":"Load file",
......@@ -11,12 +12,13 @@
"P_I18N_MANAGE_LNG_TITLE":"Management language files Leed",
"P_I18N_MESSAGES":"Message(s)",
"P_I18N_MSG_ALERT":"The 'double quote' character is not authorized in the translations.",
"P_I18N_MSG_CHG_LNG_LEED":"Language change successful, refresh the page to confirm the inclusion",
"P_I18N_MSG_NOT_FND_CODE":"(not found in the code)",
"P_I18N_NEW_LNG_FILE_EXIST":"File already exists",
"P_I18N_NEW_LNG_FILE_OK":"Creating the language file $1 : OK",
"P_I18N_PREF_TITLE":"Translation Plugin Leed",
"P_I18N_UPD_FILE_TITLE":"Modification of file : $1",
"P_I18N_UPD_LNG_FILE_ERR":"The file $1 is not writable. Please add the necessary rights and click refresh to restart the operation",
"P_I18N_UPD_LNG_FILE_ERR":"The file $1 is not writable.<br />Please add the necessary rights and click refresh to restart the operation",
"P_I18N_UPD_LNG_FILE_OK":"Language file: $1 updated.",
"P_I18N_VERIF_ERR1":"Can't write to the specified directory, please add write permissions on the folder.",
"P_I18N_VERIF_ERR2":"The required function 'file_get_contents' is inaccessible on your server, check your version of PHP.",
......
{
"P_I18N_BTN_CHG_LNG_LEED":"Changer de langue sur Leed",
"P_I18N_BTN_COPY_FILE":"Copier fichier",
"P_I18N_BTN_CREATE_FILE":"Créer un fichier",
"P_I18N_BTN_LOAD_FILE":"Charger fichier",
......@@ -11,12 +12,13 @@
"P_I18N_MANAGE_LNG_TITLE":"Gestion des fichiers de langue de Leed",
"P_I18N_MESSAGES":"Message(s)",
"P_I18N_MSG_ALERT":"Le caractère 'double quote' n'est pas autorisé dans les traductions.",
"P_I18N_MSG_CHG_LNG_LEED":"Changement de langue réussi, raffraichir la page pour confirmer la prise en compte",
"P_I18N_MSG_NOT_FND_CODE":"(non trouvé dans le code)",
"P_I18N_NEW_LNG_FILE_EXIST":"Fichier déjà existant ",
"P_I18N_NEW_LNG_FILE_OK":"Création du fichier de langue $1 : OK",
"P_I18N_PREF_TITLE":"Plugin de Traduction de Leed",
"P_I18N_UPD_FILE_TITLE":"Modification du fichier : $1",
"P_I18N_UPD_LNG_FILE_ERR":"Le fichier $1 n'est pas accessible en écriture. Veuillez ajouter les droits nécessaires et cliquer sur rafraichir pour relancer l'opération",
"P_I18N_UPD_LNG_FILE_ERR":"Le fichier $1 n'est pas accessible en écriture.<br />Veuillez ajouter les droits nécessaires et cliquer sur rafraichir pour relancer l'opération",
"P_I18N_UPD_LNG_FILE_OK":"Fichier de langue : $1 mis à jour.",
"P_I18N_VERIF_ERR1":"Écriture impossible dans le répertoire indiqué, veuillez ajouter les permissions en écriture sur le dossier.",
"P_I18N_VERIF_ERR2":"La fonction requise 'file_get_contents' est inaccessible sur votre serveur, vérifiez votre version de PHP.",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment