New: Gestion du choix de langue "auto"
This commit is contained in:
parent
dc74b45d2b
commit
61dfbf5764
@ -164,7 +164,7 @@ if (isset($_GET["action"]) && $_GET["action"] == 'edit')
|
||||
|
||||
// Liste des zone de recherche permanantes supportées
|
||||
print '<table class="noborder" width="100%">';
|
||||
print '<tr class="liste_titre"><td>'.$langs->trans("PermanentLeftSearchForm").'</td><td>'.$langs->trans("Activated").'</td></tr>';
|
||||
print '<tr class="liste_titre"><td width="35%">'.$langs->trans("PermanentLeftSearchForm").'</td><td>'.$langs->trans("Activated").'</td></tr>';
|
||||
$var=True;
|
||||
foreach ($searchform as $key => $value)
|
||||
{
|
||||
@ -265,7 +265,7 @@ else
|
||||
|
||||
// Liste des zone de recherche permanantes supportées
|
||||
print '<table class="noborder" width="100%">';
|
||||
print '<tr class="liste_titre"><td>'.$langs->trans("PermanentLeftSearchForm").'</td><td>'.$langs->trans("Activated").'</td></tr>';
|
||||
print '<tr class="liste_titre"><td width="35%">'.$langs->trans("PermanentLeftSearchForm").'</td><td>'.$langs->trans("Activated").'</td></tr>';
|
||||
$var=true;
|
||||
foreach ($searchform as $key => $value) {
|
||||
$var=!$var;
|
||||
|
||||
@ -35,7 +35,8 @@ $allowupgrade = 0;
|
||||
include_once("./inc.php");
|
||||
|
||||
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load("install");
|
||||
|
||||
|
||||
@ -124,9 +125,9 @@ else
|
||||
|
||||
print $langs->trans("ChooseYourSetupMode");
|
||||
|
||||
print '<table width="100%" cellspacing="0" cellpadding="4" border="1">';
|
||||
print '<table width="100%" cellspacing="1" cellpadding="4" border="1">';
|
||||
|
||||
print '<tr><td nowrap><b>'.$langs->trans("FreshInstall").'</b></td><td>';
|
||||
print '<tr><td nowrap="nowrap"><b>'.$langs->trans("FreshInstall").'</b></td><td>';
|
||||
print $langs->trans("FreshInstallDesc").'</td>';
|
||||
print '<td align="center">';
|
||||
if ($allowinstall)
|
||||
@ -140,7 +141,7 @@ else
|
||||
print '</td>';
|
||||
print '</tr>';
|
||||
|
||||
print '<tr><td nowrap><b>'.$langs->trans("Upgrade").'</b></td><td>';
|
||||
print '<tr><td nowrap="nowrap"><b>'.$langs->trans("Upgrade").'</b></td><td>';
|
||||
print $langs->trans("UpgradeDesc").'</td>';
|
||||
print '<td align="center">';
|
||||
if ($allowupgrade)
|
||||
|
||||
@ -16,7 +16,6 @@
|
||||
*
|
||||
* $Id$
|
||||
* $Source$
|
||||
*
|
||||
*/
|
||||
|
||||
body {
|
||||
@ -56,20 +55,16 @@ border-right: 1px solid #8CACBB;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
table {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
div.main {
|
||||
background: #dcdcd3;
|
||||
text-align: left;
|
||||
border: 1px solid #8CACBB;
|
||||
border: 1px solid #8CACBB;
|
||||
}
|
||||
|
||||
div.main-inside {
|
||||
padding-left: 20px;
|
||||
padding-right: 50px;
|
||||
margin-bottom: 50px;
|
||||
padding-right: 20px;
|
||||
margin-bottom: 40px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
@ -166,3 +161,12 @@ font-size: 13px;
|
||||
border-bottom: 1px solid #8CACBB;
|
||||
}
|
||||
|
||||
table {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.install
|
||||
{
|
||||
border: 1px solid #8CACBB;
|
||||
padding: 4px 4px 4px 4px;
|
||||
}
|
||||
@ -20,7 +20,6 @@
|
||||
*
|
||||
* $Id$
|
||||
* $Source$
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
@ -32,10 +31,12 @@
|
||||
include_once("./inc.php");
|
||||
|
||||
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load("admin");
|
||||
$langs->load("install");
|
||||
|
||||
|
||||
pHeader($langs->trans("ConfigurationFile"),"etape2");
|
||||
|
||||
|
||||
@ -505,6 +506,6 @@ if ($_POST["action"] == "set")
|
||||
print '</table>';
|
||||
}
|
||||
|
||||
pFooter($error);
|
||||
pFooter($error,$setuplang);
|
||||
|
||||
?>
|
||||
|
||||
@ -41,7 +41,8 @@ set_time_limit(60);
|
||||
error_reporting($err);
|
||||
|
||||
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load("admin");
|
||||
$langs->load("install");
|
||||
|
||||
@ -443,5 +444,6 @@ if ($_POST["action"] == "set")
|
||||
$db->close();
|
||||
}
|
||||
|
||||
pFooter(!$ok);
|
||||
pFooter(!$ok,$setuplang);
|
||||
|
||||
?>
|
||||
|
||||
@ -20,7 +20,6 @@
|
||||
*
|
||||
* $Id$
|
||||
* $Source$
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
@ -33,15 +32,17 @@
|
||||
include_once("./inc.php");
|
||||
|
||||
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load("admin");
|
||||
$langs->load("install");
|
||||
|
||||
|
||||
pHeader($langs->trans("AdminAccountCreation"),"etape5");
|
||||
|
||||
if (file_exists($conffile))
|
||||
{
|
||||
include_once($conffile);
|
||||
include_once($conffile);
|
||||
}
|
||||
|
||||
if($dolibarr_main_db_type == "mysql")
|
||||
@ -101,6 +102,6 @@ if ($db->ok == 1)
|
||||
|
||||
$db->close();
|
||||
|
||||
pFooter($err);
|
||||
pFooter($err,$setuplang);
|
||||
|
||||
?>
|
||||
|
||||
@ -31,7 +31,8 @@
|
||||
include_once("./inc.php");
|
||||
|
||||
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load("admin");
|
||||
$langs->load("install");
|
||||
|
||||
@ -142,11 +143,17 @@ if ($_POST["action"] == "set" || $_POST["action"] == "upgrade")
|
||||
// Si install non Français, on configure pour fonctionner en mode internationnal
|
||||
if ($langs->defaultlang != "fr_FR")
|
||||
{
|
||||
$db->query("UPDATE llx_const set value='eldy.php' WHERE name='MAIN_MENU_BARRETOP';");
|
||||
$db->query("UPDATE llx_const set value='eldy.php' WHERE name='MAIN_MENU_BARRELEFT';");
|
||||
$db->query("UPDATE llx_const set value='eldy_backoffice.php' WHERE name='MAIN_MENU_BARRETOP';");
|
||||
$db->query("UPDATE llx_const set value='eldy_backoffice.php' WHERE name='MAIN_MENU_BARRELEFT';");
|
||||
|
||||
$db->query("UPDATE llx_const set value='eldy_frontoffice.php' WHERE name='MAIN_MENUFRONT_BARRETOP';");
|
||||
$db->query("UPDATE llx_const set value='eldy_frontoffice.php' WHERE name='MAIN_MENUFRONT_BARRELEFT';");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
$db->query("UPDATE llx_const set value='".$setuplang."' WHERE name='MAIN_LANG_DEFAULT';");
|
||||
|
||||
print '</table>';
|
||||
|
||||
@ -184,5 +191,6 @@ print $langs->trans("GoToSetupArea");
|
||||
print '</a>';
|
||||
|
||||
|
||||
pFooter(1);
|
||||
pFooter(1,$setuplang);
|
||||
|
||||
?>
|
||||
|
||||
@ -21,7 +21,6 @@
|
||||
*
|
||||
* $Id$
|
||||
* $Source$
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
@ -36,9 +35,11 @@ include_once("./inc.php");
|
||||
$err=0;
|
||||
|
||||
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load("install");
|
||||
|
||||
|
||||
pHeader($langs->trans("ConfigurationFile"),"etape1");
|
||||
|
||||
// Ici, le fichier conf.php existe et est forcément editable car le test a été fait précédemment.
|
||||
@ -268,6 +269,6 @@ Nom ou adresse ip du serveur de base de donn
|
||||
|
||||
<?php
|
||||
|
||||
pFooter($err);
|
||||
pFooter($err,$setuplang);
|
||||
|
||||
?>
|
||||
|
||||
@ -32,18 +32,12 @@ $docurl = '<a href="doc/dolibarr-install.html">documentation</a>';
|
||||
$conffile = "../conf/conf.php";
|
||||
|
||||
|
||||
// Récupère langues du navigateur et defini langcode
|
||||
$langpref=$_SERVER['HTTP_ACCEPT_LANGUAGE'];
|
||||
$langpref=eregi_replace(";[^,]*","",$langpref);
|
||||
$langpref=eregi_replace("-","_",$langpref);
|
||||
$langlist=split("[;,]",$langpref);
|
||||
$langpart=split("_",$langlist[0]);
|
||||
if ($langpart[1]) $langcode=$langpart[0]."_".strtoupper($langpart[1]);
|
||||
else $langcode=$langpart[0]."_".strtoupper($langpart[0]);
|
||||
// Defini objet langs
|
||||
require_once("../translate.class.php");
|
||||
$langcode='auto';
|
||||
$langs = new Translate("../langs", $langcode);
|
||||
|
||||
|
||||
$tab[0]=' class="bg1"';
|
||||
$tab[1]=' class="bg2"';
|
||||
|
||||
@ -53,6 +47,7 @@ function pHeader($soutitre,$next,$action='set')
|
||||
$langs->load("main");
|
||||
$langs->load("admin");
|
||||
|
||||
print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">'."\n";
|
||||
print '<html>';
|
||||
print '<head>';
|
||||
print '<meta http-equiv="content-type" content="text/html; charset='.$langs->trans("charset").'">';
|
||||
@ -73,7 +68,7 @@ function pHeader($soutitre,$next,$action='set')
|
||||
}
|
||||
|
||||
|
||||
function pFooter($nonext=0,$addlang=1)
|
||||
function pFooter($nonext=0,$setuplang='')
|
||||
{
|
||||
global $langs;
|
||||
$langs->load("main");
|
||||
@ -81,11 +76,12 @@ function pFooter($nonext=0,$addlang=1)
|
||||
|
||||
print '</div></div>';
|
||||
if (! $nonext)
|
||||
{
|
||||
{
|
||||
print '<div class="barrebottom"><input type="submit" value="'.$langs->trans("NextStep").' ->"></div>';
|
||||
}
|
||||
if ($addlang) {
|
||||
print '<input type="hidden" name="selectlang" value="'.$langs->defaultlang.'">';
|
||||
}
|
||||
if ($setuplang)
|
||||
{
|
||||
print '<input type="hidden" name="selectlang" value="'.$setuplang.'">';
|
||||
}
|
||||
print '</form>';
|
||||
print '</body>';
|
||||
|
||||
@ -18,7 +18,6 @@
|
||||
*
|
||||
* $Id$
|
||||
* $Source$
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
@ -36,7 +35,7 @@ $err = 0;
|
||||
|
||||
// Si fichier conf existe deja, on est pas sur une premiere install,
|
||||
// on ne passe donc pas par la page de choix de langue
|
||||
if (file_exists($conffile))
|
||||
if (!file_exists($conffile))
|
||||
{
|
||||
header("Location: check.php");
|
||||
exit;
|
||||
@ -65,6 +64,6 @@ print '</tr></table>';
|
||||
|
||||
|
||||
// Si pas d'erreur, on affiche le bouton pour passer à l'étape suivante
|
||||
if ($err == 0) pFooter(0,0);
|
||||
if ($err == 0) pFooter(0);
|
||||
|
||||
?>
|
||||
|
||||
@ -31,15 +31,17 @@
|
||||
include_once("./inc.php");
|
||||
|
||||
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load("install");
|
||||
|
||||
|
||||
pHeader($langs->trans("License"),"fileconf");
|
||||
|
||||
print '<pre>';
|
||||
$langs->print_file("html/gpl.txt",1);
|
||||
print "</pre>";
|
||||
|
||||
pFooter();
|
||||
pFooter(0,$setuplang);
|
||||
|
||||
?>
|
||||
|
||||
@ -41,7 +41,8 @@ set_time_limit(60);
|
||||
error_reporting($err);
|
||||
|
||||
$setuplang=isset($_POST["selectlang"])?$_POST["selectlang"]:(isset($_GET["selectlang"])?$_GET["selectlang"]:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load("admin");
|
||||
$langs->load("install");
|
||||
|
||||
@ -213,6 +214,6 @@ else
|
||||
print '<div class="error">'.$langs->trans("ErrorWrongParameters").'</div>';
|
||||
}
|
||||
|
||||
pFooter(! $ok);
|
||||
pFooter(! $ok,$setuplang);
|
||||
|
||||
?>
|
||||
|
||||
@ -40,7 +40,8 @@ set_time_limit(60);
|
||||
error_reporting($err);
|
||||
|
||||
$setuplang=isset($_POST['selectlang'])?$_POST['selectlang']:(isset($_GET['selectlang'])?$_GET['selectlang']:$langcode);
|
||||
$langs->defaultlang=$setuplang;
|
||||
$langs->setDefaultLang($setuplang);
|
||||
|
||||
$langs->load('admin');
|
||||
$langs->load('install');
|
||||
$langs->load("bills");
|
||||
@ -151,7 +152,7 @@ else
|
||||
}
|
||||
|
||||
|
||||
pFooter($error);
|
||||
pFooter($error,$setuplang);
|
||||
|
||||
|
||||
|
||||
|
||||
@ -48,15 +48,30 @@ class Translate {
|
||||
function Translate($dir = "", $defaultlang = "")
|
||||
{
|
||||
$this->dir=$dir;
|
||||
$this->setDefaultLang($defaultlang);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Accesseur de this->defaultlang
|
||||
* \param defaultlang Langue par defaut à utiliser
|
||||
*/
|
||||
function setDefaultLang($defaultlang)
|
||||
{
|
||||
if ($defaultlang == 'auto')
|
||||
{
|
||||
$listlang=split('[,;]',$_SERVER["HTTP_ACCEPT_LANGUAGE"]);
|
||||
$defaultlang=ereg_replace('-','_',$listlang[0]);
|
||||
$langpref=$_SERVER['HTTP_ACCEPT_LANGUAGE'];
|
||||
$langpref=eregi_replace(";[^,]*","",$langpref);
|
||||
$langpref=eregi_replace("-","_",$langpref);
|
||||
$listlang=split('[,;]',$langpref);
|
||||
$defaultlang=$listlang[0];
|
||||
}
|
||||
if (strlen($defaultlang) <= 3) $defaultlang=$defaultlang."_".$defaultlang;
|
||||
|
||||
$this->defaultlang=strtolower($defaultlang);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Charge en mémoire le tableau de traduction pour un domaine particulier
|
||||
* Si le domaine est deja chargé, la fonction ne fait rien
|
||||
@ -108,7 +123,8 @@ class Translate {
|
||||
$this->tab_loaded[$domain]=1; // Marque ce fichier comme chargé
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Retourne la liste des domaines chargées en memoire
|
||||
@ -135,6 +151,7 @@ class Translate {
|
||||
return $this->transnoentities($str,htmlentities($param1),htmlentities($param2),htmlentities($param3));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Retourne la version traduite du texte passé en paramètre
|
||||
* Si il n'y a pas de correspondance pour ce texte, on cherche dans fichier alternatif
|
||||
@ -145,23 +162,25 @@ class Translate {
|
||||
* \param param3 chaine de param1
|
||||
* \return string chaine traduite
|
||||
*/
|
||||
|
||||
function transnoentities($str, $param1='', $param2='', $param3='') {
|
||||
if (isset($this->tab_translate[$str]) && $this->tab_translate[$str]) {
|
||||
function transnoentities($str, $param1='', $param2='', $param3='')
|
||||
{
|
||||
if (isset($this->tab_translate[$str]) && $this->tab_translate[$str])
|
||||
{
|
||||
// Si la traduction est disponible
|
||||
return sprintf($this->tab_translate[$str],$param1,$param2,$param3);
|
||||
}
|
||||
return $str;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Retourne la version traduite du texte passé en paramètre complété du code pays
|
||||
* \param str chaine a traduire
|
||||
* \param countrycode code pays (FR, ...)
|
||||
* \return string chaine traduite
|
||||
*/
|
||||
|
||||
function transcountry($str, $countrycode) {
|
||||
function transcountry($str, $countrycode)
|
||||
{
|
||||
if ($this->tab_translate["$str$countrycode"]) return $this->trans("$str$countrycode");
|
||||
else return $this->trans("$str");
|
||||
}
|
||||
@ -171,7 +190,6 @@ class Translate {
|
||||
* \brief Retourne la liste des langues disponibles
|
||||
* \return array list of languages
|
||||
*/
|
||||
|
||||
function get_available_languages($langdir=DOL_DOCUMENT_ROOT)
|
||||
{
|
||||
// On parcour le répertoire langs pour détecter les langues disponibles
|
||||
@ -211,8 +229,8 @@ class Translate {
|
||||
* \return boolean true si existe, false sinon
|
||||
*/
|
||||
|
||||
function file_exists($filename,$searchalt=0) {
|
||||
|
||||
function file_exists($filename,$searchalt=0)
|
||||
{
|
||||
// Test si fichier dans répertoire de la langue
|
||||
$htmlfile=$this->dir."/".$this->defaultlang."/".$filename;
|
||||
if (is_readable($htmlfile)) return true;
|
||||
@ -233,12 +251,12 @@ class Translate {
|
||||
* \param filename nom du fichier à rechercher
|
||||
* \param searchalt cherche aussi dans langue alternative
|
||||
*/
|
||||
|
||||
function print_file($filename,$searchalt=0) {
|
||||
|
||||
function print_file($filename,$searchalt=0)
|
||||
{
|
||||
// Test si fichier dans répertoire de la langue
|
||||
$htmlfile=$this->dir."/".$this->defaultlang."/".$filename;
|
||||
if (is_readable($htmlfile)) {
|
||||
if (is_readable($htmlfile))
|
||||
{
|
||||
include $htmlfile;
|
||||
return true;
|
||||
}
|
||||
@ -247,7 +265,8 @@ class Translate {
|
||||
// Test si fichier dans répertoire de la langue alternative
|
||||
if ($this->defaultlang != "en_US") $htmlfilealt = $this->dir."/en_US/".$filename;
|
||||
else $htmlfilealt = $this->dir."/fr_FR/".$filename;
|
||||
if (is_readable($htmlfilealt)) {
|
||||
if (is_readable($htmlfilealt))
|
||||
{
|
||||
include $htmlfilealt;
|
||||
return true;
|
||||
}
|
||||
@ -256,7 +275,6 @@ class Translate {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user