Lang files can be in two different worskpaces

This commit is contained in:
Laurent Destailleur 2008-03-31 15:17:39 +00:00
parent d73caf56af
commit c635e88868
12 changed files with 72 additions and 50 deletions

View File

@ -104,7 +104,7 @@ if (($_REQUEST['action'] == 'confirm_deleteline' && $_REQUEST['confirm'] == 'yes
$result = $propal->delete_product($_GET['lineid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs);
@ -123,7 +123,7 @@ if ($_REQUEST['action'] == 'confirm_validate' && $_REQUEST['confirm'] == 'yes')
$result=$propal->update_price();
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs);
@ -262,7 +262,7 @@ if ($_POST['action'] == 'add' && $user->rights->propale->creer)
// Generation document PDF
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
propale_pdf_create($db, $id, $_REQUEST['model'], $outputlangs);
@ -587,7 +587,7 @@ if ($_POST['action'] == "addligne" && $user->rights->propale->creer)
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs);
@ -627,7 +627,7 @@ if ($_POST['action'] == 'updateligne' && $user->rights->propale->creer && $_POST
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs);
@ -647,7 +647,7 @@ if ($_REQUEST['action'] == 'builddoc' && $user->rights->propale->creer)
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
$result=propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs);
@ -715,7 +715,7 @@ if ($_GET['action'] == 'up' && $user->rights->propale->creer)
$propal->line_up($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs);
@ -729,7 +729,7 @@ if ($_GET['action'] == 'down' && $user->rights->propale->creer)
$propal->line_down($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
propale_pdf_create($db, $propal->id, $propal->modelpdf, $outputlangs);

View File

@ -103,7 +103,7 @@ if (($_REQUEST['action'] == 'confirm_deleteline' && $_REQUEST['confirm'] == 'yes
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
commande_pdf_create($db, $_GET['id'], $commande->modelpdf, $outputlangs);
@ -380,7 +380,7 @@ if ($_POST['action'] == 'addligne' && $user->rights->commande->creer)
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
commande_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -422,7 +422,7 @@ if ($_POST['action'] == 'updateligne' && $user->rights->commande->creer && $_POS
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
commande_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -450,7 +450,7 @@ if ($_REQUEST['action'] == 'confirm_validate' && $_REQUEST['confirm'] == 'yes' &
$soc->fetch($commande->socid);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
commande_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -494,7 +494,7 @@ if ($_GET['action'] == 'up' && $user->rights->commande->creer)
$commande->line_up($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
commande_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -509,7 +509,7 @@ if ($_GET['action'] == 'down' && $user->rights->commande->creer)
$commande->line_down($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
commande_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -534,7 +534,7 @@ if ($_REQUEST['action'] == 'builddoc') // In get or post
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
@ -1927,7 +1927,7 @@ else
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
$result=commande_pdf_create($db, $_REQUEST['id'], '', $_REQUEST['model'], $outputlangs);

View File

@ -102,7 +102,7 @@ if (($_POST['action'] == 'confirm_deleteproductline' && $_POST['confirm'] == 'ye
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
@ -244,7 +244,7 @@ if ($_POST['action'] == 'confirm_valid' && $_POST['confirm'] == 'yes' && $user->
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
facture_pdf_create($db, $fac->id, '', $fac->modelpdf, $outputlangs);
@ -851,7 +851,7 @@ if (($_POST['action'] == 'addligne' || $_POST['action'] == 'addligne_predef') &&
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
facture_pdf_create($db, $fac->id, $fac->modelpdf, $outputlangs);
@ -900,7 +900,7 @@ if ($_POST['action'] == 'updateligne' && $user->rights->facture->creer && $_POST
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
facture_pdf_create($db, $fac->id, '', $fac->modelpdf, $outputlangs);
@ -926,7 +926,7 @@ if ($_GET['action'] == 'up' && $user->rights->facture->creer)
$fac->line_up($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
facture_pdf_create($db, $fac->id, '', $fac->modelpdf, $outputlangs);
@ -941,7 +941,7 @@ if ($_GET['action'] == 'down' && $user->rights->facture->creer)
$fac->line_down($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
facture_pdf_create($db, $fac->id, '', $fac->modelpdf, $outputlangs);
@ -1133,7 +1133,7 @@ if ($_REQUEST['action'] == 'builddoc') // En get ou en post
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
@ -3021,7 +3021,7 @@ else
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
$result=facture_pdf_create($db, $fac->id, '', $_REQUEST['model'], $outputlangs);
@ -3080,7 +3080,7 @@ else
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
$result=facture_pdf_create($db, $fac->id, '', $_REQUEST['model'], $outputlangs);

View File

@ -83,7 +83,7 @@ if ($_POST['action'] == 'confirm_valide' && $_POST['confirm'] == 'yes' && $user-
$fac->fetch($id);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
facture_pdf_create($db, $fac->id, '', $fac->modelpdf, $outputlangs);

View File

@ -289,7 +289,7 @@ if ($_POST["action"] == 'addligne' && $user->rights->contrat->creer)
/*
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
contrat_pdf_create($db, $contrat->id, $contrat->modelpdf, $outputlangs);

View File

@ -158,7 +158,7 @@ if ($_REQUEST['action'] == 'builddoc') // En get ou en post
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
$result=expedition_pdf_create($db,$expedition->id,$expedition->modelpdf,$outputlangs);

View File

@ -132,7 +132,7 @@ if ($_REQUEST['action'] == 'builddoc') // En get ou en post
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
@ -208,7 +208,7 @@ if ($_POST['action'] == "addligne" && $user->rights->ficheinter->creer)
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
fichinter_create($db, $fichinter, $fichinter->modelpdf, $outputlangs);
@ -243,7 +243,7 @@ if ($_POST['action'] == 'updateligne' && $user->rights->ficheinter->creer && $_P
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
fichinter_create($db, $fichinter, $fichinter->modelpdf, $outputlangs);
@ -270,7 +270,7 @@ if ($_GET['action'] == 'deleteline' && $user->rights->ficheinter->creer && !$con
}
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
fichinter_create($db, $fichinter, $fichinter->modelpdf, $outputlangs);
@ -298,7 +298,7 @@ if ($_REQUEST['action'] == 'confirm_deleteline' && $_REQUEST['confirm'] == 'yes'
}
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
fichinter_create($db, $fichinter, $fichinter->modelpdf, $outputlangs);
@ -318,7 +318,7 @@ if ($_GET['action'] == 'up' && $user->rights->ficheinter->creer)
$fichinter->line_up($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
fichinter_create($db, $fichinter, $fichinter->modelpdf, $outputlangs);
@ -333,7 +333,7 @@ if ($_GET['action'] == 'down' && $user->rights->ficheinter->creer)
$fichinter->line_down($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
fichinter_create($db, $fichinter, $fichinter->modelpdf, $outputlangs);

View File

@ -145,7 +145,7 @@ if ($_POST['action'] == 'addligne' && $user->rights->fournisseur->commande->cree
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
supplier_order_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -177,7 +177,7 @@ if ($_POST['action'] == 'updateligne' && $user->rights->fournisseur->commande->c
{
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
supplier_order_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -206,7 +206,7 @@ if ($_POST['action'] == 'confirm_deleteproductline' && $_POST['confirm'] == 'yes
$result = $commande->delete_line($_GET['lineid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
supplier_order_pdf_create($db, $_GET['id'], $commande->modelpdf, $outputlangs);
@ -321,7 +321,7 @@ if ($_GET['action'] == 'up' && $user->rights->fournisseur->commande->creer)
$commande->line_up($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
supplier_order_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -336,7 +336,7 @@ if ($_GET['action'] == 'down' && $user->rights->fournisseur->commande->creer)
$commande->line_down($_GET['rowid']);
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
supplier_order_pdf_create($db, $commande->id, $commande->modelpdf, $outputlangs);
@ -362,7 +362,7 @@ if ($_REQUEST['action'] == 'builddoc') // En get ou en post
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
$result=supplier_order_pdf_create($db, $commande->id,$commande->modelpdf,$outputlangs);

View File

@ -1403,7 +1403,7 @@ function dolibarr_print_error($db='',$error='')
if (! $langs)
{
require_once(DOL_DOCUMENT_ROOT ."/translate.class.php");
$langs = new Translate(DOL_DOCUMENT_ROOT ."/langs", $conf);
$langs = new Translate("", $conf);
}
$langs->load("main");

View File

@ -146,7 +146,7 @@ if ($_REQUEST['action'] == 'builddoc') // En get ou en post
if ($_REQUEST['lang_id'])
{
$outputlangs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf);
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
}
$result=delivery_order_pdf_create($db, $_REQUEST['id'],$_REQUEST['model'],$outputlangs);

View File

@ -159,7 +159,7 @@ if (! defined('NOREQUIREDB')) require_once(DOL_DOCUMENT_ROOT ."/lib/databases/
*/
if (! defined('NOREQUIRETRAN'))
{
$langs = new Translate(DOL_DOCUMENT_ROOT ."/langs",$conf); // A mettre apres lecture de la conf
$langs = new Translate("",$conf); // A mettre apres lecture de la conf
}
/*

View File

@ -33,7 +33,9 @@
*/
class Translate {
var $dir;
var $dir; // Directory with translation files
var $dir_bis; // Second directory with translation files (for development on two workspaces)
var $origlang; // Langue origine
var $defaultlang; // Langue courante en vigueur de l'utilisateur
@ -48,7 +50,7 @@ class Translate {
/**
* \brief Constructeur de la classe
* \param dir Repertoire racine des fichiers de traduction
* \param dir Force directory that contains translation files
* \param conf Objet qui contient la config Dolibarr
*/
function Translate($dir = "",$conf)
@ -58,7 +60,8 @@ class Translate {
{
$this->charset_output=$conf->character_set_client;
}
$this->dir=$dir;
$this->dir=(! $dir ? DOL_DOCUMENT_ROOT ."/langs" : $dir);
$this->dir_bis=(defined('DOL_DOCUMENT_ROOT_BIS') ? DOL_DOCUMENT_ROOT_BIS ."/langs" : "");
}
@ -153,7 +156,10 @@ class Translate {
* Si le domaine est deja charge, la fonction ne fait rien
* \param domain Nom du domain (fichier lang) a charger
* \param alt Utilise le fichier alternatif meme si fichier dans la langue est trouvee
*/
* \return int <0 if KO, >0 if OK
* \remarks tab_loaded is completed with $domain key.
* Value for key is: 1:Loaded from disk, 2:Not found, 3:Loaded from cache
*/
function Load($domain,$alt=0)
{
// dolibarr_syslog("Translate::Load domain=".$domain." alt=".$alt);
@ -162,7 +168,7 @@ class Translate {
if (empty($domain))
{
dolibarr_syslog("Translate::Load ErrorWrongParameters",LOG_WARNING);
return;
return -1;
}
// Check cache
@ -173,6 +179,14 @@ class Translate {
$file_lang = $scandir . "/".$domain.".lang";
$filelangexists=is_file($file_lang);
// If development with 2 workspaces
if (! $filelangexists && $this->dir_bis)
{
$scandir = $this->dir_bis."/".$this->defaultlang;
$file_lang = $scandir . "/".$domain.".lang";
$filelangexists=is_file($file_lang);
}
if ($alt || ! $filelangexists)
{
// Repertoire de la langue alternative
@ -257,6 +271,8 @@ class Translate {
{
$this->tab_loaded[$domain]=2; // Marque ce fichier comme charge non trouve
}
return 1;
}
@ -266,7 +282,13 @@ class Translate {
*/
function list_domainloaded()
{
return join(",",array_keys($this->tab_loaded));
$ret='';
foreach($this->tab_loaded as $key=>$val)
{
if ($ret) $ret.=',';
$ret.=$key.'='.$val;
}
return $ret;
}