diff --git a/htdocs/admin/commande.php b/htdocs/admin/commande.php index 9da39314d564ad043342b436ceebc4455c8aba1f..d5cdd51e2ec0c857a967e5b5cf3aacc1b248897f 100644 --- a/htdocs/admin/commande.php +++ b/htdocs/admin/commande.php @@ -247,12 +247,12 @@ if ($handle) // Info $htmltooltip=''; - $htmltooltip.='<b>'.$langs->trans("Version").'</b>: '.$module->getVersion().'<br>'; + $htmltooltip.=''.$langs->trans("Version").': <b>'.$module->getVersion().'</b><br>'; $facture->type=0; $nextval=$module->getNextValue($mysoc,$commande); if ("$nextval" != $langs->trans("NotAvailable")) // Keep " on nextval { - $htmltooltip.='<b>'.$langs->trans("NextValue").'</b>: '; + $htmltooltip.=''.$langs->trans("NextValue").': '; if ($nextval) { $htmltooltip.=$nextval.'<br>'; @@ -373,17 +373,17 @@ while (($file = readdir($handle))!==false) print '</td>'; // Info - $htmltooltip = '<b>'.$langs->trans("Name").'</b>: '.$module->name; - $htmltooltip.='<br><b>'.$langs->trans("Type").'</b>: '.($module->type?$module->type:$langs->trans("Unknown")); - $htmltooltip.='<br><b>'.$langs->trans("Height").'/'.$langs->trans("Width").'</b>: '.$module->page_hauteur.'/'.$module->page_largeur; - $htmltooltip.='<br><br>'.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='<br><b>'.$langs->trans("Logo").'</b>: '.yn($module->option_logo); - $htmltooltip.='<br><b>'.$langs->trans("PaymentMode").'</b>: '.yn($module->option_modereg); - $htmltooltip.='<br><b>'.$langs->trans("PaymentConditions").'</b>: '.yn($module->option_condreg); - $htmltooltip.='<br><b>'.$langs->trans("MultiLanguage").'</b>: '.yn($module->option_multilang); - // \TODO : $htmltooltip.='<br><b>'.$langs->trans("Escompte").'</b>: '.yn($module->option_escompte); - $htmltooltip.='<br><b>'.$langs->trans("CreditNote").'</b>: '.yn($module->option_credit_note); - $htmltooltip.='<br><b>'.$langs->trans("WatermarkOnDraftOrders").'</b>: '.yn($module->option_draft_watermark); + $htmltooltip = ''.$langs->trans("Name").': '.$module->name; + $htmltooltip.='<br>'.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='<br>'.$langs->trans("Height").'/'.$langs->trans("Width").': '.$module->page_hauteur.'/'.$module->page_largeur; + $htmltooltip.='<br><br><u>'.$langs->trans("FeaturesSupported").':</u>'; + $htmltooltip.='<br>'.$langs->trans("Logo").': '.yn($module->option_logo,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentMode").': '.yn($module->option_modereg,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentConditions").': '.yn($module->option_condreg,1,1); + $htmltooltip.='<br>'.$langs->trans("MultiLanguage").': '.yn($module->option_multilang,1,1); + //$htmltooltip.='<br>'.$langs->trans("Escompte").': '.yn($module->option_escompte,1,1); + //$htmltooltip.='<br>'.$langs->trans("CreditNote").': '.yn($module->option_credit_note,1,1); + $htmltooltip.='<br>'.$langs->trans("WatermarkOnDraftOrders").': '.yn($module->option_draft_watermark,1,1); print '<td align="center">'; print $html->textwithhelp('',$htmltooltip,1,0); diff --git a/htdocs/admin/dons.php b/htdocs/admin/dons.php index a99857284a59a1c6ef11fdaa5e00a7644b162a4c..2d192e5e6f90100ec3f00430110040ae270615b9 100644 --- a/htdocs/admin/dons.php +++ b/htdocs/admin/dons.php @@ -1,5 +1,5 @@ <?php -/* Copyright (C) 2005-208 Laurent Destailleur <eldy@users.sourceforge.net> +/* Copyright (C) 2005-2009 Laurent Destailleur <eldy@users.sourceforge.net> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -16,7 +16,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/** +/** * \file htdocs/admin/dons.php * \ingroup dons * \brief Page d'administration/configuration du module Dons @@ -71,12 +71,12 @@ if ($_GET["action"] == 'specimen') $mesg='<div class="error">'.$langs->trans("ErrorModuleNotFound").'</div>'; dolibarr_syslog($langs->trans("ErrorModuleNotFound"), LOG_ERR); } -} +} if ($_GET["action"] == 'setdoc') { $db->begin(); - + if (dolibarr_set_const($db, "DON_ADDON_MODEL",$_GET["value"])) { $conf->global->DON_ADDON_MODEL = $_GET["value"]; @@ -89,7 +89,7 @@ if ($_GET["action"] == 'setdoc') $result1=$db->query($sql_del); $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom,type) VALUES ('".$_GET["value"]."','".$type."')"; $result2=$db->query($sql); - if ($result1 && $result2) + if ($result1 && $result2) { $db->commit(); } @@ -184,7 +184,7 @@ while (($file = readdir($handle))!==false) $var = !$var; $name = substr($file, 0, strlen($file) -12); $classname = substr($file, 0, strlen($file) -12); - + require_once($dir.'/'.$file); $module=new $classname($db); @@ -200,7 +200,7 @@ while (($file = readdir($handle))!==false) print '<td>'; print $module->description; print '</td>'; - + // Active if (in_array($name, $def)) { @@ -223,7 +223,7 @@ while (($file = readdir($handle))!==false) print '<a href="'.$_SERVER["PHP_SELF"].'?action=set&value='.$name.'">'.$langs->trans("Activate").'</a>'; print "</td>"; } - + // Defaut print "<td align=\"center\">"; if ($conf->global->DON_ADDON_MODEL == "$name") @@ -235,21 +235,21 @@ while (($file = readdir($handle))!==false) print '<a href="'.$_SERVER["PHP_SELF"].'?action=setdoc&value='.$name.'" alt="'.$langs->trans("Default").'">'.$langs->trans("Default").'</a>'; } print '</td>'; - + // Info - $htmltooltip = '<b>'.$langs->trans("Name").'</b>: '.$module->name; - $htmltooltip.='<br><b>'.$langs->trans("Type").'</b>: '.($module->type?$module->type:$langs->trans("Unknown")); - $htmltooltip.='<br><b>'.$langs->trans("Height").'/'.$langs->trans("Width").'</b>: '.$module->page_hauteur.'/'.$module->page_largeur; - $htmltooltip.='<br><br>'.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='<br><b>'.$langs->trans("Logo").'</b>: '.yn($module->option_logo); - $htmltooltip.='<br><b>'.$langs->trans("MultiLanguage").'</b>: '.yn($module->option_multilang); + $htmltooltip = ''.$langs->trans("Name").': '.$module->name; + $htmltooltip.='<br>'.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='<br>'.$langs->trans("Height").'/'.$langs->trans("Width").': '.$module->page_hauteur.'/'.$module->page_largeur; + $htmltooltip.='<br><br><u>'.$langs->trans("FeaturesSupported").':</u>'; + $htmltooltip.='<br>'.$langs->trans("Logo").': '.yn($module->option_logo,1,1); + $htmltooltip.='<br>'.$langs->trans("MultiLanguage").': '.yn($module->option_multilang,1,1); print '<td align="center">'; print $html->textwithhelp('',$htmltooltip,1,0); print '</td>'; print '<td align="center">'; print '<a href="'.$_SERVER["PHP_SELF"].'?action=specimen&module='.$name.'" target="specimen">'.img_object($langs->trans("Preview"),'generic').'</a>'; print '</td>'; - + print "</tr>\n"; } } diff --git a/htdocs/admin/expedition.php b/htdocs/admin/expedition.php index 434254044756b1f50622813f62076c87d389b0ca..d861f535bc43626419b598d080d25032b375d0f7 100644 --- a/htdocs/admin/expedition.php +++ b/htdocs/admin/expedition.php @@ -439,11 +439,11 @@ if(is_dir($dir)) print '</td>'; // Info - $htmltooltip = '<b>'.$langs->trans("Name").'</b>: '.$module->name; - $htmltooltip.='<br><b>'.$langs->trans("Type").'</b>: '.($module->type?$module->type:$langs->trans("Unknown")); - $htmltooltip.='<br><b>'.$langs->trans("Width").'/'.$langs->trans("Height").'</b>: '.$module->page_largeur.'/'.$module->page_hauteur; - $htmltooltip.='<br><br>'.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='<br><b>'.$langs->trans("Logo").'</b>: '.yn($module->option_logo); + $htmltooltip = ''.$langs->trans("Name").': '.$module->name; + $htmltooltip.='<br>'.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='<br>'.$langs->trans("Width").'/'.$langs->trans("Height").': '.$module->page_largeur.'/'.$module->page_hauteur; + $htmltooltip.='<br><br><u>'.$langs->trans("FeaturesSupported").':</u>'; + $htmltooltip.='<br>'.$langs->trans("Logo").': '.yn($module->option_logo,1,1); print '<td align="center">'; print $html->textwithhelp('',$htmltooltip,1,0); print '</td>'; diff --git a/htdocs/admin/facture.php b/htdocs/admin/facture.php index 8a1251801ffc1b4e600884b945fb7f6d08f71f64..824e04795497af029ace4b443477cc8c02523e0a 100644 --- a/htdocs/admin/facture.php +++ b/htdocs/admin/facture.php @@ -3,7 +3,7 @@ * Copyright (C) 2004-2008 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2005 Eric Seigne <eric.seigne@ryxeo.com> * Copyright (C) 2005-2007 Regis Houssin <regis@dolibarr.fr> - * Copyright (C) 2008 Raphael Bertrand (Resultic) <raphael.bertrand@resultic.fr> + * Copyright (C) 2008 Raphael Bertrand (Resultic) <raphael.bertrand@resultic.fr> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -288,12 +288,12 @@ while (($file = readdir($handle))!==false) // Example for standard invoice $htmltooltip=''; - $htmltooltip.='<b>'.$langs->trans("Version").'</b>: '.$module->getVersion().'<br>'; + $htmltooltip.=''.$langs->trans("Version").': <b>'.$module->getVersion().'</b><br>'; $facture->type=0; $nextval=$module->getNextValue($mysoc,$facture); if ("$nextval" != $langs->trans("NotAvailable")) // Keep " on nextval { - $htmltooltip.='<b>'.$langs->trans("NextValueForInvoices").'</b>: '; + $htmltooltip.=$langs->trans("NextValueForInvoices").': '; if ($nextval) { $htmltooltip.=$nextval.'<br>'; @@ -308,7 +308,7 @@ while (($file = readdir($handle))!==false) $nextval=$module->getNextValue($mysoc,$facture); if ("$nextval" != $langs->trans("NotAvailable")) // Keep " on nextval { - $htmltooltip.='<b>'.$langs->trans("NextValueForCreditNotes").'</b>: '; + $htmltooltip.=$langs->trans("NextValueForCreditNotes").': '; if ($nextval) { $htmltooltip.=$nextval; @@ -428,17 +428,17 @@ while (($file = readdir($handle))!==false) print '</td>'; // Info - $htmltooltip = '<b>'.$langs->trans("Name").'</b>: '.$module->name; - $htmltooltip.='<br><b>'.$langs->trans("Type").'</b>: '.($module->type?$module->type:$langs->trans("Unknown")); - $htmltooltip.='<br><b>'.$langs->trans("Height").'/'.$langs->trans("Width").'</b>: '.$module->page_hauteur.'/'.$module->page_largeur; - $htmltooltip.='<br><br>'.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='<br><b>'.$langs->trans("Logo").'</b>: '.yn($module->option_logo,1,1); - $htmltooltip.='<br><b>'.$langs->trans("PaymentMode").'</b>: '.yn($module->option_modereg,1,1); - $htmltooltip.='<br><b>'.$langs->trans("PaymentConditions").'</b>: '.yn($module->option_condreg,1,1); - $htmltooltip.='<br><b>'.$langs->trans("Escompte").'</b>: '.yn($module->option_escompte,1,1); - $htmltooltip.='<br><b>'.$langs->trans("CreditNote").'</b>: '.yn($module->option_credit_note,1,1); - $htmltooltip.='<br><b>'.$langs->trans("MultiLanguage").'</b>: '.yn($module->option_multilang,1,1); - $htmltooltip.='<br><b>'.$langs->trans("WatermarkOnDraftInvoices").'</b>: '.yn($module->option_draft_watermark,1,1); + $htmltooltip = ''.$langs->trans("Name").': '.$module->name; + $htmltooltip.='<br>'.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='<br>'.$langs->trans("Height").'/'.$langs->trans("Width").': '.$module->page_hauteur.'/'.$module->page_largeur; + $htmltooltip.='<br><br><u>'.$langs->trans("FeaturesSupported").':</u>'; + $htmltooltip.='<br>'.$langs->trans("Logo").': '.yn($module->option_logo,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentMode").': '.yn($module->option_modereg,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentConditions").': '.yn($module->option_condreg,1,1); + $htmltooltip.='<br>'.$langs->trans("Escompte").': '.yn($module->option_escompte,1,1); + $htmltooltip.='<br>'.$langs->trans("CreditNote").': '.yn($module->option_credit_note,1,1); + $htmltooltip.='<br>'.$langs->trans("MultiLanguage").': '.yn($module->option_multilang,1,1); + $htmltooltip.='<br>'.$langs->trans("WatermarkOnDraftInvoices").': '.yn($module->option_draft_watermark,1,1); print '<td align="center">'; diff --git a/htdocs/admin/fichinter.php b/htdocs/admin/fichinter.php index 7a83fbf3ba6bc7829a1517ed96ec5e4c8e1597e6..b084fa4cbfd1cc1d2de0e3c2661ae690dc7c94fa 100644 --- a/htdocs/admin/fichinter.php +++ b/htdocs/admin/fichinter.php @@ -229,10 +229,11 @@ if ($handle) // Info $htmltooltip=''; + $htmltooltip.=''.$langs->trans("Version").': <b>'.$module->getVersion().'</b><br>'; $nextval=$module->getNextValue($mysoc,$ficheinter); if ($nextval != $langs->trans("NotAvailable")) { - $htmltooltip='<b>'.$langs->trans("NextValue").'</b>: '.$nextval; + $htmltooltip.=''.$langs->trans("NextValue").': '.$nextval; } print '<td align="center">'; print $html->textwithhelp('',$htmltooltip,1,0); @@ -342,15 +343,15 @@ while (($file = readdir($handle))!==false) print '</td>'; // Info - $htmltooltip = '<b>'.$langs->trans("Type").'</b>: '.($module->type?$module->type:$langs->trans("Unknown")); - $htmltooltip.='<br><b>'.$langs->trans("Width").'</b>: '.$module->page_largeur; - $htmltooltip.='<br><b>'.$langs->trans("Height").'</b>: '.$module->page_hauteur; - $htmltooltip.='<br><br>'.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='<br><b>'.$langs->trans("Logo").'</b>: '.yn($module->option_logo); - $htmltooltip.='<br><b>'.$langs->trans("PaymentMode").'</b>: '.yn($module->option_modereg); - $htmltooltip.='<br><b>'.$langs->trans("PaymentConditions").'</b>: '.yn($module->option_condreg); - $htmltooltip.='<br><b>'.$langs->trans("MultiLanguage").'</b>: '.yn($module->option_multilang); - $htmltooltip.='<br><b>'.$langs->trans("WatermarkOnDraftOrders").'</b>: '.yn($module->option_draft_watermark); + $htmltooltip = ''.$langs->trans("Name").': '.$module->name; + $htmltooltip.='<br>'.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='<br>'.$langs->trans("Width").'/'.$langs->trans("Height").': '.$module->page_largeur.'/'.$module->page_hauteur; + $htmltooltip.='<br><br><u>'.$langs->trans("FeaturesSupported").':</u>'; + $htmltooltip.='<br>'.$langs->trans("Logo").': '.yn($module->option_logo,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentMode").': '.yn($module->option_modereg,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentConditions").': '.yn($module->option_condreg,1,1); + $htmltooltip.='<br>'.$langs->trans("MultiLanguage").': '.yn($module->option_multilang,1,1); + $htmltooltip.='<br>'.$langs->trans("WatermarkOnDraftOrders").': '.yn($module->option_draft_watermark,1,1); print '<td align="center">'; print $html->textwithhelp('',$htmltooltip,1,0); print '</td>'; diff --git a/htdocs/admin/fournisseur.php b/htdocs/admin/fournisseur.php index 18ddd79ee446418a7f7f43506b34204c51456165..ddb7b0ff6afce013aba8de139daff298e8161c0d 100644 --- a/htdocs/admin/fournisseur.php +++ b/htdocs/admin/fournisseur.php @@ -225,18 +225,18 @@ if ($handle) print '<a href="'.$_SERVER["PHP_SELF"].'?action=setmod&value='.$file.'" alt="'.$langs->trans("Default").'">'.$langs->trans("Activate").'</a>'; } print '</td>'; - + $commande=new CommandeFournisseur($db); $commande->initAsSpecimen(); - + // Info $htmltooltip=''; - $htmltooltip.='<b>'.$langs->trans("Version").'</b>: '.$module->getVersion().'<br>'; + $htmltooltip.=''.$langs->trans("Version").': <b>'.$module->getVersion().'</b><br>'; $facture->type=0; $nextval=$module->getNextValue($mysoc,$commande); if ("$nextval" != $langs->trans("NotAvailable")) // Keep " on nextval { - $htmltooltip.='<b>'.$langs->trans("NextValue").'</b>: '; + $htmltooltip.=''.$langs->trans("NextValue").': '; if ($nextval) { $htmltooltip.=$nextval.'<br>'; @@ -357,13 +357,13 @@ while (($file = readdir($handle))!==false) print '</td>'; // Info - $htmltooltip = '<b>'.$langs->trans("Type").'</b>: '.($module->type?$module->type:$langs->trans("Unknown")); - $htmltooltip.='<br><b>'.$langs->trans("Width").'</b>: '.$module->page_largeur; - $htmltooltip.='<br><b>'.$langs->trans("Height").'</b>: '.$module->page_hauteur; - $htmltooltip.='<br><br>'.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='<br><b>'.$langs->trans("Logo").'</b>: '.yn($module->option_logo); - $htmltooltip.='<br><b>'.$langs->trans("PaymentMode").'</b>: '.yn($module->option_modereg); - $htmltooltip.='<br><b>'.$langs->trans("PaymentConditions").'</b>: '.yn($module->option_condreg); + $htmltooltip = ''.$langs->trans("Name").': '.$module->name; + $htmltooltip.='<br>'.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='<br>'.$langs->trans("Width").'/'.$langs->trans("Height").': '.$module->page_largeur.'/'.$module->page_hauteur; + $htmltooltip.='<br><br><u>'.$langs->trans("FeaturesSupported").':</u>'; + $htmltooltip.='<br>'.$langs->trans("Logo").': '.yn($module->option_logo,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentMode").': '.yn($module->option_modereg,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentConditions").': '.yn($module->option_condreg,1,1); print '<td align="center">'; print $html->textwithhelp('',$htmltooltip,1,0); print '</td>'; diff --git a/htdocs/admin/livraison.php b/htdocs/admin/livraison.php index a6596a22cacb7c06d856b77fb6f16ad96a9e4c24..e4beef06754a0de0a7090c2b9689e9abd90e7b00 100644 --- a/htdocs/admin/livraison.php +++ b/htdocs/admin/livraison.php @@ -43,7 +43,7 @@ if (!$user->admin) accessforbidden(); /* * Actions */ - + if ($_POST["action"] == 'updateMask') { $maskconstdelivery=$_POST['maskconstdelivery']; @@ -111,7 +111,7 @@ if ($_GET["action"] == 'del') if ($_GET["action"] == 'setdoc') { $db->begin(); - + if (dolibarr_set_const($db, "LIVRAISON_ADDON_PDF",$_GET["value"])) { $conf->global->LIVRAISON_ADDON_PDF = $_GET["value"]; @@ -124,7 +124,7 @@ if ($_GET["action"] == 'setdoc') $result1=$db->query($sql_del); $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom,type) VALUES ('".$_GET["value"]."','".$type."')"; $result2=$db->query($sql); - if ($result1 && $result2) + if ($result1 && $result2) { $db->commit(); } @@ -224,10 +224,10 @@ if ($handle) print '<tr '.$bc[$var].'><td>'.$module->nom."</td><td>\n"; print $module->info(); print '</td>'; - + // Affiche example print '<td nowrap="nowrap">'.$module->getExample().'</td>'; - + print '<td align="center">'; if ($conf->global->LIVRAISON_ADDON == "$file") { @@ -238,18 +238,18 @@ if ($handle) print '<a href="'.$_SERVER["PHP_SELF"].'?action=setmod&value='.$file.'" alt="'.$langs->trans("Default").'">'.$langs->trans("Default").'</a>'; } print '</td>'; - + $livraison=new Livraison($db); $livraison->initAsSpecimen(); - + // Info $htmltooltip=''; - $htmltooltip.='<b>'.$langs->trans("Version").'</b>: '.$module->getVersion().'<br>'; + $htmltooltip.=''.$langs->trans("Version").': <b>'.$module->getVersion().'</b><br>'; $facture->type=0; $nextval=$module->getNextValue($mysoc,$livraison); if ("$nextval" != $langs->trans("NotAvailable")) // Keep " on nextval { - $htmltooltip.='<b>'.$langs->trans("NextValue").'</b>: '; + $htmltooltip.=''.$langs->trans("NextValue").': '; if ($nextval) { $htmltooltip.=$nextval.'<br>'; @@ -259,11 +259,11 @@ if ($handle) $htmltooltip.=$langs->trans($module->error).'<br>'; } } - + print '<td align="center">'; print $html->textwithhelp('',$htmltooltip,1,0); print '</td>'; - + print '</tr>'; } } @@ -373,11 +373,10 @@ if(is_dir($dir)) print '</td>'; // Info - $htmltooltip = '<b>'.$langs->trans("Type").'</b>: '.($module->type?$module->type:$langs->trans("Unknown")); - $htmltooltip.='<br><b>'.$langs->trans("Width").'</b>: '.$module->page_largeur; - $htmltooltip.='<br><b>'.$langs->trans("Height").'</b>: '.$module->page_hauteur; + $htmltooltip = ''.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='<br>'.$langs->trans("Width").'/'.$langs->trans("Height").': '.$module->page_largeur.'/'.$module->page_hauteur; $htmltooltip.='<br><br>'.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='<br><b>'.$langs->trans("Logo").'</b>: '.yn($module->option_logo); + $htmltooltip.='<br>'.$langs->trans("Logo").': '.yn($module->option_logo,1,1); print '<td align="center">'; print $html->textwithhelp('',$htmltooltip,1,0); print '</td>'; diff --git a/htdocs/admin/propale.php b/htdocs/admin/propale.php index e4f1f009c296efe5f8d21607a08037bc94728ba1..89e763f93db7978c70f0a14a61e6c133ad9a6987 100644 --- a/htdocs/admin/propale.php +++ b/htdocs/admin/propale.php @@ -1,6 +1,6 @@ <?php /* Copyright (C) 2003-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org> - * Copyright (C) 2004-2008 Laurent Destailleur <eldy@users.sourceforge.net> + * Copyright (C) 2004-2009 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2004 Sebastien Di Cintio <sdicintio@ressource-toi.org> * Copyright (C) 2004 Benoit Mortier <benoit.mortier@opensides.be> * Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com> @@ -267,12 +267,12 @@ if ($handle) // Info $htmltooltip=''; - $htmltooltip.='<b>'.$langs->trans("Version").'</b>: '.$module->getVersion().'<br>'; + $htmltooltip.=''.$langs->trans("Version").': <b>'.$module->getVersion().'</b><br>'; $facture->type=0; $nextval=$module->getNextValue($mysoc,$propale); if ("$nextval" != $langs->trans("NotAvailable")) // Keep " on nextval { - $htmltooltip.='<b>'.$langs->trans("NextValue").'</b>: '; + $htmltooltip.=''.$langs->trans("NextValue").': '; if ($nextval) { $htmltooltip.=$nextval.'<br>'; @@ -392,17 +392,17 @@ while (($file = readdir($handle))!==false) print '</td>'; // Info - $htmltooltip = '<b>'.$langs->trans("Name").'</b>: '.$module->name; - $htmltooltip.='<br><b>'.$langs->trans("Type").'</b>: '.($module->type?$module->type:$langs->trans("Unknown")); - $htmltooltip.='<br><b>'.$langs->trans("Height").'/'.$langs->trans("Width").'</b>: '.$module->page_hauteur.'/'.$module->page_largeur; - $htmltooltip.='<br><br>'.$langs->trans("FeaturesSupported").':'; - $htmltooltip.='<br><b>'.$langs->trans("Logo").'</b>: '.yn($module->option_logo); - $htmltooltip.='<br><b>'.$langs->trans("PaymentMode").'</b>: '.yn($module->option_modereg); - $htmltooltip.='<br><b>'.$langs->trans("PaymentConditions").'</b>: '.yn($module->option_condreg); - $htmltooltip.='<br><b>'.$langs->trans("MultiLanguage").'</b>: '.yn($module->option_multilang); - //TODO : $htmltooltip.='<br><b>'.$langs->trans("Escompte").'</b>: '.yn($module->option_escompte); - $htmltooltip.='<br><b>'.$langs->trans("CreditNote").'</b>: '.yn($module->option_credit_note); - $htmltooltip.='<br><b>'.$langs->trans("WatermarkOnDraftProposal").'</b>: '.yn($module->option_draft_watermark); + $htmltooltip = ''.$langs->trans("Name").': '.$module->name; + $htmltooltip.='<br>'.$langs->trans("Type").': '.($module->type?$module->type:$langs->trans("Unknown")); + $htmltooltip.='<br>'.$langs->trans("Height").'/'.$langs->trans("Width").': '.$module->page_hauteur.'/'.$module->page_largeur; + $htmltooltip.='<br><br><u>'.$langs->trans("FeaturesSupported").':</u>'; + $htmltooltip.='<br>'.$langs->trans("Logo").': '.yn($module->option_logo,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentMode").': '.yn($module->option_modereg,1,1); + $htmltooltip.='<br>'.$langs->trans("PaymentConditions").': '.yn($module->option_condreg,1,1); + $htmltooltip.='<br>'.$langs->trans("MultiLanguage").': '.yn($module->option_multilang,1,1); + //$htmltooltip.='<br>'.$langs->trans("Escompte").': '.yn($module->option_escompte,1,1); + //$htmltooltip.='<br>'.$langs->trans("CreditNote").': '.yn($module->option_credit_note,1,1); + $htmltooltip.='<br>'.$langs->trans("WatermarkOnDraftProposal").': '.yn($module->option_draft_watermark,1,1); diff --git a/htdocs/admin/societe.php b/htdocs/admin/societe.php index eca79f38dd3676269bb22b69e4e67ce1672aa5a2..e472c6ee26c7bd5a1e33408d2ff686672fca0045 100644 --- a/htdocs/admin/societe.php +++ b/htdocs/admin/societe.php @@ -47,7 +47,7 @@ if ($_GET["action"] == 'setcodeclient') } else { - dolibarr_print_error($db); + dolibarr_print_error($db); } } @@ -60,7 +60,7 @@ if ($_GET["action"] == 'setcodecompta') } else { - dolibarr_print_error($db); + dolibarr_print_error($db); } } @@ -80,8 +80,8 @@ if ($_POST["action"] == 'usesearchtoselectcompany') // define constants for tigre model if ($_POST["action"] == 'updateMask') { - dolibarr_set_const($db, "CODE_TIGRE_MASK_CUSTOMER",$_POST["maskcustomer"]); - dolibarr_set_const($db, "CODE_TIGRE_MASK_SUPPLIER",$_POST["masksupplier"]); + dolibarr_set_const($db, "COMPANY_ELEPHANT_MASK_CUSTOMER",$_POST["maskcustomer"]); + dolibarr_set_const($db, "COMPANY_ELEPHANT_MASK_SUPPLIER",$_POST["masksupplier"]); } @@ -120,7 +120,7 @@ $handle = opendir($dir); if ($handle) { $var = true; - + // Loop on each module find in opened directory while (($file = readdir($handle))!==false) { @@ -141,7 +141,7 @@ if ($handle) print $modCodeTiers->info($langs); print "</td>\n"; print '<td nowrap="nowrap">'.$modCodeTiers->getExample($langs)."</td>\n"; - + if ($conf->global->SOCIETE_CODECLIENT_ADDON == "$file") { print "<td align=\"center\">\n"; @@ -157,7 +157,7 @@ if ($handle) $s=$modCodeTiers->getToolTip($langs,$soc,-1); print $form->textwithhelp('',$s,1); print '</td>'; - + print '</tr>'; } } @@ -205,7 +205,7 @@ if ($handle) print $modCodeCompta->info($langs); print '</td>'; print '<td nowrap="nowrap">'.$modCodeCompta->getExample($langs)."</td>\n"; - + if ($conf->global->SOCIETE_CODECOMPTA_ADDON == "$file") { print '<td align="center">'; @@ -224,7 +224,7 @@ if ($handle) closedir($handle); } print "</table>\n"; - + print '<br>'; @@ -246,7 +246,7 @@ print '<td width="80%">'.$langs->trans("UseSearchToSelectCompany").'</td>'; if (! $conf->use_javascript_ajax) { print '<td nowrap="nowrap" align="right" colspan="2">'; - print $langs->trans("NotAvailableWhenAjaxDisabled"); + print $langs->trans("NotAvailableWhenAjaxDisabled"); print "</td>"; } else diff --git a/htdocs/includes/modules/commande/mod_commande_saphir.php b/htdocs/includes/modules/commande/mod_commande_saphir.php index 220d5e309f71acf92e8aaa5be0fb12305a0c48e8..85bd41b7a323778ef9d94f05d5b7b20a020db3b3 100644 --- a/htdocs/includes/modules/commande/mod_commande_saphir.php +++ b/htdocs/includes/modules/commande/mod_commande_saphir.php @@ -40,7 +40,7 @@ class mod_commande_saphir extends ModeleNumRefCommandes var $error = ''; var $nom = 'Saphir'; - + /** \brief Renvoi la description du modele de num�rotation * \return string Texte descripif */ @@ -49,23 +49,29 @@ class mod_commande_saphir extends ModeleNumRefCommandes global $conf,$langs; $langs->load("bills"); - + $form = new Form($db); - + $texte = $langs->trans('GenericNumRefModelDesc')."<br>\n"; $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; $texte.= '<input type="hidden" name="action" value="updateMask">'; $texte.= '<input type="hidden" name="maskconstorder" value="COMMANDE_SAPHIR_MASK">'; $texte.= '<table class="nobordernopadding" width="100%">'; - - // Parametrage du prefix des factures + + $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("Order")); + $tooltip.=$langs->trans("GenericMaskCodes2"); + $tooltip.=$langs->trans("GenericMaskCodes3"); + $tooltip.=$langs->trans("GenericMaskCodes4a",$langs->transnoentities("Order"),$langs->transnoentities("Order")); + $tooltip.=$langs->trans("GenericMaskCodes5"); + + // Parametrage du prefix $texte.= '<tr><td>'.$langs->trans("Mask").':</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskorder" value="'.$conf->global->COMMANDE_SAPHIR_MASK.'">',$langs->trans("GenericMaskCodes",$langs->transnoentities("Order"),$langs->transnoentities("Order"),$langs->transnoentities("Order")),1,1).'</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskorder" value="'.$conf->global->COMMANDE_SAPHIR_MASK.'">',$tooltip,1,1).'</td>'; $texte.= '<td align="left" rowspan="2"> <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>'; $texte.= '</tr>'; - + $texte.= '</table>'; $texte.= '</form>'; @@ -78,12 +84,12 @@ class mod_commande_saphir extends ModeleNumRefCommandes function getExample() { global $conf,$langs,$mysoc; - + $old_code_client=$mysoc->code_client; $mysoc->code_client='CCCCCCCCCC'; $numExample = $this->getNextValue($mysoc,''); $mysoc->code_client=$old_code_client; - + if (! $numExample) { $numExample = $langs->trans('NotConfigured'); @@ -101,22 +107,22 @@ class mod_commande_saphir extends ModeleNumRefCommandes global $db,$conf; require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php"); - + // We get cursor rule $mask=$conf->global->COMMANDE_SAPHIR_MASK; - - if (! $mask) + + if (! $mask) { $this->error='NotConfigured'; return 0; } $numFinal=get_next_value($db,$mask,'commande','ref','',$objsoc->code_client,$commande->date); - + return $numFinal; } - - + + /** \brief Return next free value * \param objsoc Object third party * \param objforref Object for number to search @@ -126,7 +132,7 @@ class mod_commande_saphir extends ModeleNumRefCommandes { return $this->getNextValue($objsoc,$objforref); } - -} + +} ?> \ No newline at end of file diff --git a/htdocs/includes/modules/facture/mercure/mercure.modules.php b/htdocs/includes/modules/facture/mercure/mercure.modules.php index d102a459d592eb6f15977f8d2c5d032d05f25143..d3adb1e43bd931acad21e51cecbefd6f832ebabc 100644 --- a/htdocs/includes/modules/facture/mercure/mercure.modules.php +++ b/htdocs/includes/modules/facture/mercure/mercure.modules.php @@ -39,7 +39,7 @@ class mod_facture_mercure extends ModeleNumRefFactures var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' var $error = ''; - + /** \brief Renvoi la description du modele de numerotation * \return string Texte descripif */ @@ -48,47 +48,53 @@ class mod_facture_mercure extends ModeleNumRefFactures global $conf,$langs; $langs->load("bills"); - + $form = new Form($db); - + $texte = $langs->trans('GenericNumRefModelDesc')."<br>\n"; $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; $texte.= '<input type="hidden" name="action" value="updateMask">'; $texte.= '<input type="hidden" name="maskconstinvoice" value="FACTURE_MERCURE_MASK_INVOICE">'; $texte.= '<input type="hidden" name="maskconstcredit" value="FACTURE_MERCURE_MASK_CREDIT">'; $texte.= '<table class="nobordernopadding" width="100%">'; - - // Parametrage du prefix des factures + + $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("Invoice")); + $tooltip.=$langs->trans("GenericMaskCodes2"); + $tooltip.=$langs->trans("GenericMaskCodes3"); + $tooltip.=$langs->trans("GenericMaskCodes4a",$langs->transnoentities("Invoice"),$langs->transnoentities("Invoice")); + $tooltip.=$langs->trans("GenericMaskCodes5"); + + // Parametrage du prefix $texte.= '<tr><td>'.$langs->trans("Mask").' ('.$langs->trans("InvoiceStandard").'):</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskinvoice" value="'.$conf->global->FACTURE_MERCURE_MASK_INVOICE.'">',$langs->trans("GenericMaskCodes",$langs->transnoentities("Invoice"),$langs->transnoentities("Invoice"),$langs->transnoentities("Invoice")),1,1).'</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskinvoice" value="'.$conf->global->FACTURE_MERCURE_MASK_INVOICE.'">',$tooltip,1,1).'</td>'; $texte.= '<td align="left" rowspan="2"> <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>'; $texte.= '</tr>'; - + // Parametrage du prefix des avoirs $texte.= '<tr><td>'.$langs->trans("Mask").' ('.$langs->trans("InvoiceAvoir").'):</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskcredit" value="'.$conf->global->FACTURE_MERCURE_MASK_CREDIT.'">',$langs->trans("GenericMaskCodes",$langs->transnoentities("Invoice"),$langs->transnoentities("Invoice"),$langs->transnoentities("Invoice")),1,1).'</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskcredit" value="'.$conf->global->FACTURE_MERCURE_MASK_CREDIT.'">',$tooltip,1,1).'</td>'; $texte.= '</tr>'; - + $texte.= '</table>'; $texte.= '</form>'; return $texte; } - /** \brief Renvoi un exemple de numerotation + /** \brief Return an example of number value * \return string Example */ function getExample() { global $conf,$langs,$mysoc; - + $old_code_client=$mysoc->code_client; $mysoc->code_client='CCCCCCCCCC'; $numExample = $this->getNextValue($mysoc,''); $mysoc->code_client=$old_code_client; - + if (! $numExample) { $numExample = $langs->trans('NotConfigured'); @@ -106,12 +112,12 @@ class mod_facture_mercure extends ModeleNumRefFactures global $db,$conf; require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php"); - - // On defini critere recherche compteur + + // Get Mask value + $mask = ''; if (is_object($facture) && $facture->type == 2) $mask=$conf->global->FACTURE_MERCURE_MASK_CREDIT; else $mask=$conf->global->FACTURE_MERCURE_MASK_INVOICE; - - if (! $mask) + if (! $mask) { $this->error='NotConfigured'; return 0; @@ -120,13 +126,13 @@ class mod_facture_mercure extends ModeleNumRefFactures $where=''; if ($facture->type == 2) $where.= " AND type = 2"; else $where.=" AND type != 2"; - + $numFinal=get_next_value($db,$mask,'facture','facnumber',$where,$objsoc->code_client,$facture->date); - + return $numFinal; } - - + + /** \brief Return next free value * \param objsoc Object third party * \param objforref Object for number to search @@ -136,6 +142,6 @@ class mod_facture_mercure extends ModeleNumRefFactures { return $this->getNextValue($objsoc,$objforref); } - -} + +} ?> \ No newline at end of file diff --git a/htdocs/includes/modules/fichinter/mod_arctic.php b/htdocs/includes/modules/fichinter/mod_arctic.php index 09530ed51cac47a6c23deb13505a78c999e79df6..f15d067e1a6ffba5aee6987424493ce7a955c2ca 100644 --- a/htdocs/includes/modules/fichinter/mod_arctic.php +++ b/htdocs/includes/modules/fichinter/mod_arctic.php @@ -38,7 +38,7 @@ class mod_arctic extends ModeleNumRefFicheinter var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' var $error = ''; var $nom = 'Artic'; - + /** \brief Constructeur */ function mod_arctic() @@ -54,23 +54,29 @@ class mod_arctic extends ModeleNumRefFicheinter global $conf,$langs; $langs->load("bills"); - + $form = new Form($db); - + $texte = $langs->trans('GenericNumRefModelDesc')."<br>\n"; $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; $texte.= '<input type="hidden" name="action" value="updateMask">'; $texte.= '<input type="hidden" name="maskconst" value="FICHINTER_ARTIC_MASK">'; $texte.= '<table class="nobordernopadding" width="100%">'; - - // Parametrage du prefix des factures + + $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("InterventionCard")); + $tooltip.=$langs->trans("GenericMaskCodes2"); + $tooltip.=$langs->trans("GenericMaskCodes3"); + $tooltip.=$langs->trans("GenericMaskCodes4a",$langs->transnoentities("InterventionCard"),$langs->transnoentities("InterventionCard")); + $tooltip.=$langs->trans("GenericMaskCodes5"); + + // Parametrage du prefix $texte.= '<tr><td>'.$langs->trans("Mask").':</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskvalue" value="'.$conf->global->FICHINTER_ARTIC_MASK.'">',$langs->trans("GenericMaskCodes",$langs->transnoentities("InterventionCard"),$langs->transnoentities("InterventionCard"),$langs->transnoentities("InterventionCard")),1,1).'</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskvalue" value="'.$conf->global->FICHINTER_ARTIC_MASK.'">',$tooltip,1,1).'</td>'; $texte.= '<td align="left" rowspan="2"> <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>'; $texte.= '</tr>'; - + $texte.= '</table>'; $texte.= '</form>'; @@ -83,12 +89,12 @@ class mod_arctic extends ModeleNumRefFicheinter function getExample() { global $conf,$langs,$mysoc; - + $old_code_client=$mysoc->code_client; $mysoc->code_client='CCCCCCCCCC'; $numExample = $this->getNextValue($mysoc,''); $mysoc->code_client=$old_code_client; - + if (! $numExample) { $numExample = $langs->trans('NotConfigured'); @@ -106,22 +112,22 @@ class mod_arctic extends ModeleNumRefFicheinter global $db,$conf; require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php"); - + // On d�fini critere recherche compteur $mask=$conf->global->FICHINTER_ARTIC_MASK; - - if (! $mask) + + if (! $mask) { $this->error='NotConfigured'; return 0; } $numFinal=get_next_value($db,$mask,'fichinter','ref','',$objsoc->code_client,$ficheinter->date); - + return $numFinal; } - - + + /** \brief Return next free value * \param objsoc Object third party * \param objforref Object for number to search @@ -132,6 +138,6 @@ class mod_arctic extends ModeleNumRefFicheinter return $this->getNextValue($objsoc,$objforref); } -} +} ?> \ No newline at end of file diff --git a/htdocs/includes/modules/livraison/mod_livraison_saphir.php b/htdocs/includes/modules/livraison/mod_livraison_saphir.php index 4a4a6de9a39ee99fc9119dd055d698ff8e701114..575e328dd8efb28b72db1baf9038e95ab61d8ddd 100644 --- a/htdocs/includes/modules/livraison/mod_livraison_saphir.php +++ b/htdocs/includes/modules/livraison/mod_livraison_saphir.php @@ -37,8 +37,8 @@ class mod_livraison_saphir extends ModeleNumRefDeliveryOrder var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' var $error = ''; var $nom = 'Saphir'; - - + + /** \brief Renvoi la description du modele de numerotation * \return string Texte descripif */ @@ -47,23 +47,29 @@ class mod_livraison_saphir extends ModeleNumRefDeliveryOrder global $conf,$langs; $langs->load("bills"); - + $form = new Form($db); - + $texte = $langs->trans('GenericNumRefModelDesc')."<br>\n"; $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; $texte.= '<input type="hidden" name="action" value="updateMask">'; $texte.= '<input type="hidden" name="maskconstdelivery" value="LIVRAISON_SAPHIR_MASK">'; $texte.= '<table class="nobordernopadding" width="100%">'; - - // Parametrage du prefix des factures + + $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("Delivery")); + $tooltip.=$langs->trans("GenericMaskCodes2"); + $tooltip.=$langs->trans("GenericMaskCodes3"); + $tooltip.=$langs->trans("GenericMaskCodes4a",$langs->transnoentities("Delivery"),$langs->transnoentities("Delivery")); + $tooltip.=$langs->trans("GenericMaskCodes5"); + + // Parametrage du prefix $texte.= '<tr><td>'.$langs->trans("Mask").':</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskdelivery" value="'.$conf->global->LIVRAISON_SAPHIR_MASK.'">',$langs->trans("GenericMaskCodes",$langs->transnoentities("Delivery"),$langs->transnoentities("Delivery"),$langs->transnoentities("Delivery")),1,1).'</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskdelivery" value="'.$conf->global->LIVRAISON_SAPHIR_MASK.'">',$tooltip,1,1).'</td>'; $texte.= '<td align="left" rowspan="2"> <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>'; $texte.= '</tr>'; - + $texte.= '</table>'; $texte.= '</form>'; @@ -76,12 +82,12 @@ class mod_livraison_saphir extends ModeleNumRefDeliveryOrder function getExample() { global $conf,$langs,$mysoc; - + $old_code_client=$mysoc->code_client; $mysoc->code_client='CCCCCCCCCC'; $numExample = $this->getNextValue($mysoc,''); $mysoc->code_client=$old_code_client; - + if (! $numExample) { $numExample = $langs->trans('NotConfigured'); @@ -100,22 +106,22 @@ class mod_livraison_saphir extends ModeleNumRefDeliveryOrder global $db,$conf; require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php"); - + // On d�fini critere recherche compteur $mask=$conf->global->LIVRAISON_SAPHIR_MASK; - - if (! $mask) + + if (! $mask) { $this->error='NotConfigured'; return 0; } $numFinal=get_next_value($db,$mask,'livraison','ref','',$objsoc->code_client,$livraison->date_livraison); - + return $numFinal; } - + /** \brief Return next free value * \param objsoc Object third party * \param objforref Object for number to search @@ -125,7 +131,7 @@ class mod_livraison_saphir extends ModeleNumRefDeliveryOrder { return $this->getNextValue($objsoc,$objforref); } - + /** \brief Renvoie la r�f�rence de commande suivante non utilis�e * \param objsoc Objet soci�t� @@ -136,7 +142,7 @@ class mod_livraison_saphir extends ModeleNumRefDeliveryOrder { return $this->getNextValue($objsoc,$livraison); } - -} + +} ?> \ No newline at end of file diff --git a/htdocs/includes/modules/propale/mod_propale_saphir.php b/htdocs/includes/modules/propale/mod_propale_saphir.php index 177786ce7c0f1993c4f5244a40ee357cfd500d2d..3dd3bc731c50d4be5c36512a7a8654d8867da83e 100644 --- a/htdocs/includes/modules/propale/mod_propale_saphir.php +++ b/htdocs/includes/modules/propale/mod_propale_saphir.php @@ -39,7 +39,7 @@ class mod_propale_saphir extends ModeleNumRefPropales var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' var $error = ''; var $nom = 'Saphir'; - + /** \brief Renvoi la description du modele de num�rotation * \return string Texte descripif @@ -49,23 +49,29 @@ class mod_propale_saphir extends ModeleNumRefPropales global $conf,$langs; $langs->load("bills"); - + $form = new Form($db); - + $texte = $langs->trans('GenericNumRefModelDesc')."<br>\n"; $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; $texte.= '<input type="hidden" name="action" value="updateMask">'; $texte.= '<input type="hidden" name="maskconstpropal" value="PROPALE_SAPHIR_MASK">'; $texte.= '<table class="nobordernopadding" width="100%">'; - - // Parametrage du prefix des factures + + $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("Proposal")); + $tooltip.=$langs->trans("GenericMaskCodes2"); + $tooltip.=$langs->trans("GenericMaskCodes3"); + $tooltip.=$langs->trans("GenericMaskCodes4a",$langs->transnoentities("Proposal"),$langs->transnoentities("Proposal")); + $tooltip.=$langs->trans("GenericMaskCodes5"); + + // Parametrage du prefix $texte.= '<tr><td>'.$langs->trans("Mask").':</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskpropal" value="'.$conf->global->PROPALE_SAPHIR_MASK.'">',$langs->trans("GenericMaskCodes",$langs->transnoentities("Proposal"),$langs->transnoentities("Proposal"),$langs->transnoentities("Proposal")),1,1).'</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskpropal" value="'.$conf->global->PROPALE_SAPHIR_MASK.'">',$tooltip,1,1).'</td>'; $texte.= '<td align="left" rowspan="2"> <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>'; $texte.= '</tr>'; - + $texte.= '</table>'; $texte.= '</form>'; @@ -78,12 +84,12 @@ class mod_propale_saphir extends ModeleNumRefPropales function getExample() { global $conf,$langs,$mysoc; - + $old_code_client=$mysoc->code_client; $mysoc->code_client='CCCCCCCCCC'; $numExample = $this->getNextValue($mysoc,''); $mysoc->code_client=$old_code_client; - + if (! $numExample) { $numExample = $langs->trans('NotConfigured'); @@ -101,20 +107,20 @@ class mod_propale_saphir extends ModeleNumRefPropales global $db,$conf; require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php"); - + // On d�fini critere recherche compteur $mask=$conf->global->PROPALE_SAPHIR_MASK; - - if (! $mask) + + if (! $mask) { $this->error='NotConfigured'; return 0; } $numFinal=get_next_value($db,$mask,'propal','ref','',$objsoc->code_client,$propal->date); - + return $numFinal; } -} +} ?> \ No newline at end of file diff --git a/htdocs/includes/modules/societe/mod_codeclient_elephant.php b/htdocs/includes/modules/societe/mod_codeclient_elephant.php new file mode 100644 index 0000000000000000000000000000000000000000..63a2c6f98452c9e5379e4a65907b50a02db5c688 --- /dev/null +++ b/htdocs/includes/modules/societe/mod_codeclient_elephant.php @@ -0,0 +1,285 @@ +<?php +/* Copyright (C) 2004 Rodolphe Quiedeville <rodolphe@quiedeville.org> + * Copyright (C) 2006-2009 Laurent Destailleur <eldy@users.sourceforge.net> + * Copyright (C) 2007 Regis Houssin <regis@dolibarr.fr> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * or see http://www.gnu.org/ + */ + +/** + * \file htdocs/includes/modules/societe/mod_codeclient_elephant.class.php + * \ingroup societe + * \brief File of class to manage third party code with elephant rule + * \version $Id$ + */ + +require_once(DOL_DOCUMENT_ROOT."/includes/modules/societe/modules_societe.class.php"); + + +/** + * \class mod_codeclient_elephant + * \brief Class to manage third party code with elephant rule + */ +class mod_codeclient_elephant extends ModeleThirdPartyCode +{ + var $nom; // Nom du modele + var $code_modifiable; // Code modifiable + var $code_modifiable_invalide; // Code modifiable si il est invalide + var $code_modifiable_null; // Code modifiables si il est null + var $code_null; // Code facultatif + var $version; // 'development', 'experimental', 'dolibarr' + var $code_auto; // Numerotation automatique + + var $searchcode; // String de recherche + var $numbitcounter; // Nombre de chiffres du compteur + var $prefixIsRequired; // Le champ prefix du tiers doit etre renseign� quand on utilise {pre} + + + /** \brief Constructeur classe + */ + function mod_codeclient_elephant() + { + $this->nom = "Elephant"; + $this->version = "dolibarr"; + $this->code_modifiable = 0; + $this->code_modifiable_invalide = 1; + $this->code_modifiable_null = 1; + $this->code_null = 0; + $this->code_auto = 1; + $this->prefixIsRequired = 0; + } + + + /** \brief Renvoi la description du module + * \return string Texte descripif + */ + function info($langs) + { + global $conf,$langs; + + $langs->load("companies"); + + $form = new Form($db); + + $texte = $langs->trans('GenericNumRefModelDesc')."<br>\n"; + $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; + $texte.= '<input type="hidden" name="action" value="updateMask">'; + $texte.= '<input type="hidden" name="maskcustomer" value="COMPANY_ELEPHANT_MASK_CUSTOMER">'; + $texte.= '<input type="hidden" name="masksupplier" value="COMPANY_ELEPHANT_MASK_SUPPLIER">'; + $texte.= '<table class="nobordernopadding" width="100%">'; + + $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("ThirdParty")); + //$tooltip.=$langs->trans("GenericMaskCodes2"); Not required for third party numbering + $tooltip.=$langs->trans("GenericMaskCodes3"); + $tooltip.=$langs->trans("GenericMaskCodes4b"); + $tooltip.=$langs->trans("GenericMaskCodes5"); + + // Parametrage du prefix customers + $texte.= '<tr><td>'.$langs->trans("Mask").' ('.$langs->trans("CustomerCodeModel").'):</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskcustomer" value="'.$conf->global->COMPANY_ELEPHANT_MASK_CUSTOMER.'">',$tooltip,1,1).'</td>'; + + $texte.= '<td align="left" rowspan="2"> <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>'; + + $texte.= '</tr>'; + + // Parametrage du prefix suppliers + $texte.= '<tr><td>'.$langs->trans("Mask").' ('.$langs->trans("SupplierCodeModel").'):</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="masksupplier" value="'.$conf->global->COMPANY_ELEPHANT_MASK_SUPPLIER.'">',$tooltip,1,1).'</td>'; + $texte.= '</tr>'; + + $texte.= '</table>'; + $texte.= '</form>'; + + return $texte; + } + + + /** \brief Return an example of number value + * \param $type Client ou fournisseur (1:client, 2:fournisseur) + * \return string Texte descripif + */ + function getExample($langs,$objsoc=0,$type=-1) + { + if ($type == 0 || $type == -1) + { + $examplecust = $this->getNextValue($objsoc,0); + if (! $examplecust) + { + $examplecust = $langs->trans('NotConfigured'); + } + } + if ($type == 1 || $type == -1) + { + $examplesup = $this->getNextValue($objsoc,1); + if (! $examplesup) + { + $examplesup = $langs->trans('NotConfigured'); + } + } + + if ($type == 0) return $examplecust; + if ($type == 1) return $examplesup; + return $examplecust.'<br>'.$examplesup; + } + + /** \brief Return next value + * \param objsoc Object third party + * \param $type Client ou fournisseur (1:client, 2:fournisseur) + * \return string Value if OK, '' if module not configured, <0 if KO + */ + function getNextValue($objsoc=0,$type=-1) + { + global $db,$conf; + + require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php"); + + // Get Mask value + $mask = ''; + if ($type==0) $mask = $conf->global->COMPANY_ELEPHANT_MASK_CUSTOMER; + if ($type==1) $mask = $conf->global->COMPANY_ELEPHANT_MASK_SUPPLIER; + if (! $mask) + { + $this->error='NotConfigured'; + return ''; + } + + $field='';$where=''; + if ($type == 0) + { + $field = 'code_client'; + //$where = ' AND client in (1,2)'; + } + else if ($type == 1) + { + $field = 'code_fournisseur'; + //$where = ' AND fournisseur = 1'; + } + else return -1; + + $now=gmmktime(); + + $numFinal=get_next_value($db,$mask,'societe',$field,$where,'',$now); + + return $numFinal; + } + + + /** + * \brief Verifie si le mask utilise le prefix + * + */ + function verif_prefixIsUsed() + { + global $conf; + + $mask = $conf->global->COMPANY_ELEPHANT_MASK_CUSTOMER; + if (eregi('\{pre\}',$mask)) return 1; + + $mask = $conf->global->COMPANY_ELEPHANT_MASK_SUPPLIER; + if (eregi('\{pre\}',$mask)) return 1; + + return 0; + } + + + /** + * \brief Verifie la validite du code + * \param $db Handler acces base + * \param $code Code a verifier/corriger + * \param $soc Objet societe + * \param $type 0 = client/prospect , 1 = fournisseur + * \return int <0 if KO, 0 if OK + */ + function verif($db, &$code, $soc, $type) + { + global $conf; + + require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php"); + + $result=0; + $code = strtoupper(trim($code)); + + if (! $code && $this->code_null) + { + $result=0; + } + else + { + // Get Mask value + $mask = ''; + if ($type==0) $mask = $conf->global->COMPANY_ELEPHANT_MASK_CUSTOMER; + if ($type==1) $mask = $conf->global->COMPANY_ELEPHANT_MASK_SUPPLIER; + if (! $mask) + { + $this->error='NotConfigured'; + return ''; + } + + $result=check_value($mask,$code); + } + + dolibarr_syslog("mod_codeclient_elephant::verif type=".$type." result=".$result); + return $result; + } + + + /** + * \brief Renvoi une valeur correcte + * \param $db Handler acces base + * \param $code Code reference eventuel + * \return string Code correct, <0 si KO + */ + function get_correct($db, $code) + { + + } + + + /** + * \brief Renvoi si un code est pris ou non (par autre tiers) + * \param $db Handler acces base + * \param $code Code a verifier + * \param $soc Objet societe + * \return int 0 si dispo, <0 si erreur + */ + function verif_dispo($db, $code, $soc) + { + $sql = "SELECT code_client FROM ".MAIN_DB_PREFIX."societe"; + $sql.= " WHERE code_client = '".$code."'"; + $sql.= " AND rowid != '".$soc->id."'"; + + $resql=$db->query($sql); + if ($resql) + { + if ($db->num_rows($resql) == 0) + { + return 0; + } + else + { + return -1; + } + } + else + { + return -2; + } + + } + +} + +?> diff --git a/htdocs/includes/modules/societe/mod_codeclient_leopard.php b/htdocs/includes/modules/societe/mod_codeclient_leopard.php index 1658dd63e21047fcb447d82bb3f5d0f09e891a35..b0eef718a0ab177db2d3e10dac36786f5a07f811 100644 --- a/htdocs/includes/modules/societe/mod_codeclient_leopard.php +++ b/htdocs/includes/modules/societe/mod_codeclient_leopard.php @@ -17,7 +17,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * or see http://www.gnu.org/ */ - + /** * \file htdocs/includes/modules/societe/mod_codeclient_leopard.class.php * \ingroup societe @@ -35,7 +35,7 @@ require_once(DOL_DOCUMENT_ROOT."/includes/modules/societe/modules_societe.class. class mod_codeclient_leopard extends ModeleThirdPartyCode { /* - * Attention ce module est utilise par defaut si aucun module n'a + * Attention ce module est utilise par defaut si aucun module n'a * ete definit dans la configuration * * Le fonctionnement de celui-ci doit dont rester le plus ouvert @@ -50,7 +50,7 @@ class mod_codeclient_leopard extends ModeleThirdPartyCode var $version; // 'development', 'experimental', 'dolibarr' var $code_auto; // Numerotation automatique - + /** \brief Constructeur classe */ function mod_codeclient_leopard() @@ -64,17 +64,17 @@ class mod_codeclient_leopard extends ModeleThirdPartyCode $this->code_auto = 0; } - + /** * \brief Renvoie la description du module * \return string Texte descripif */ function info($langs) { - return "Renvoie toujours ok, pour ceux qui ne veulent pas faire de test. Verification mais pas de generation automatique."; + return $langs->trans("LeopardNumRefModelDesc"); } - + /** * \brief V�rifie la validit� du code * \param $db Handler acces base diff --git a/htdocs/includes/modules/societe/mod_codeclient_lion.php b/htdocs/includes/modules/societe/mod_codeclient_monkey.php similarity index 88% rename from htdocs/includes/modules/societe/mod_codeclient_lion.php rename to htdocs/includes/modules/societe/mod_codeclient_monkey.php index 89f43fada64b04505bd5c025fb9c8f85cc5a0798..6e08a4219e4eb028b2abf5d564f4999e9f08b858 100644 --- a/htdocs/includes/modules/societe/mod_codeclient_lion.php +++ b/htdocs/includes/modules/societe/mod_codeclient_monkey.php @@ -29,10 +29,10 @@ require_once(DOL_DOCUMENT_ROOT."/includes/modules/societe/modules_societe.class. /** - \class mod_codeclient_lion - \brief Classe permettant la gestion lion des codes tiers + \class mod_codeclient_monkey + \brief Classe permettant la gestion monkey des codes tiers */ -class mod_codeclient_lion extends ModeleThirdPartyCode +class mod_codeclient_monkey extends ModeleThirdPartyCode { var $nom; // Nom du modele var $code_modifiable; // Code modifiable @@ -45,10 +45,10 @@ class mod_codeclient_lion extends ModeleThirdPartyCode /** \brief Constructeur classe */ - function mod_codeclient_lion() + function mod_codeclient_monkey() { - $this->nom = "Lion"; - $this->version = "dolibarr"; + $this->nom = "Monkey"; + $this->version = "experimental"; $this->code_modifiable = 0; $this->code_modifiable_invalide = 1; $this->code_modifiable_null = 1; @@ -62,7 +62,7 @@ class mod_codeclient_lion extends ModeleThirdPartyCode */ function info($langs) { - return "Verifie si le code client/fournisseur est de la forme numerique 999 et sur au moins 3 chiffres. Verification mais pas de generation automatique."; + return $langs->trans("MonkeyNumRefModelDesc"); } @@ -71,14 +71,14 @@ class mod_codeclient_lion extends ModeleThirdPartyCode */ function getExample($langs) { - return "001"; + return "000001"; } /** - * \brief V�rifie la validit� du code + * \brief Verifie la validite du code * \param $db Handler acces base - * \param $code Code a v�rifier/corriger + * \param $code Code a verifier/corriger * \param $soc Objet societe * \return int <0 si KO, 0 si OK */ @@ -117,7 +117,7 @@ class mod_codeclient_lion extends ModeleThirdPartyCode } } } - dolibarr_syslog("mod_codeclient_lion::verif result=".$result); + dolibarr_syslog("mod_codeclient_monkey::verif result=".$result); return $result; } diff --git a/htdocs/includes/modules/societe/mod_codeclient_tigre.php b/htdocs/includes/modules/societe/mod_codeclient_tigre.php deleted file mode 100644 index e9d0356f8954cda16e64100e32fe6b0f14d3da67..0000000000000000000000000000000000000000 --- a/htdocs/includes/modules/societe/mod_codeclient_tigre.php +++ /dev/null @@ -1,452 +0,0 @@ -<?php -/* Copyright (C) 2004 Rodolphe Quiedeville <rodolphe@quiedeville.org> - * Copyright (C) 2006-2007 Laurent Destailleur <eldy@users.sourceforge.net> - * Copyright (C) 2007 Regis Houssin <regis@dolibarr.fr> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - * or see http://www.gnu.org/ - */ - -/** - * \file htdocs/includes/modules/societe/mod_codeclient_tigre.class.php - * \ingroup societe - * \brief Fichier de la classe des gestion tigre des codes clients - * \version $Id$ - */ - -require_once(DOL_DOCUMENT_ROOT."/includes/modules/societe/modules_societe.class.php"); - - -/** - \class mod_codeclient_tigre - \brief Classe permettant la gestion tigre des codes tiers -*/ -class mod_codeclient_tigre extends ModeleThirdPartyCode -{ - var $nom; // Nom du modele - var $code_modifiable; // Code modifiable - var $code_modifiable_invalide; // Code modifiable si il est invalide - var $code_modifiable_null; // Code modifiables si il est null - var $code_null; // Code facultatif - var $version; // 'development', 'experimental', 'dolibarr' - var $code_auto; // Numerotation automatique - - var $searchcode; // String de recherche - var $numbitcounter; // Nombre de chiffres du compteur - var $prefixIsRequired; // Le champ prefix du tiers doit etre renseign� quand on utilise {pre} - - - /** \brief Constructeur classe - */ - function mod_codeclient_tigre() - { - $this->nom = "Tigre"; - $this->version = "experimental"; - $this->code_modifiable = 0; - $this->code_modifiable_invalide = 1; - $this->code_modifiable_null = 1; - $this->code_null = 0; - $this->code_auto = 1; - $this->prefixIsRequired = 0; - } - - - /** \brief Renvoi la description du module - * \return string Texte descripif - */ - function info($langs) - { - global $conf,$langs; - - $langs->load("companies"); - - $form = new Form($db); - - $texte = $langs->trans('TigreNumRefModelDesc1')."<br>\n"; - $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; - $texte.= '<input type="hidden" name="action" value="updateMask">'; - $texte.= '<table class="nobordernopadding" width="100%">'; - - // Parametrage du masque - $texte.= '<tr><td>'.$langs->trans("CustomerCodeModel").'</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskcustomer" value="'.$conf->global->CODE_TIGRE_MASK_CUSTOMER.'">',$langs->trans("TigreMaskCodes"),1,1).'</td>'; - $texte.= '</tr>'; - - $texte.= '<tr><td>'.$langs->trans("SupplierCodeModel").'</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="masksupplier" value="'.$conf->global->CODE_TIGRE_MASK_SUPPLIER.'">',$langs->trans("TigreMaskCodes"),1,1).'</td>'; - $texte.= '</tr>'; - - $texte.= '<tr><td> </td><td align="left"><input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td></tr>'; - - $texte.= '</table>'; - $texte.= '</form>'; - - return $texte; - } - - - /** \brief Renvoi la description du module - * \param $type Client ou fournisseur (1:client, 2:fournisseur) - * \return string Texte descripif - */ - function getExample($langs,$objsoc=0,$type=-1) - { - if ($type == 0) - { - $example = $this->getNextValue($objsoc,0); - } - else if ($type == 1) - { - $example = $this->getNextValue($objsoc,1); - } - else - { - $example = $this->getNextValue($objsoc,0)."<br>".$this->getNextValue($objsoc,1); - } - return $example; - } - - /** \brief Renvoi prochaine valeur attribu�e - * \param $type Client ou fournisseur (1:client, 2:fournisseur) - * \return string Valeur - */ - function getNextValue($objsoc=0,$type=-1) - { - global $db,$conf; - - $mask = $this->buildMask($objsoc,$type); - - if ($type == 0) - { - $field = 'code_client'; - } - else if ($type == 1) - { - $field = 'code_fournisseur'; - } - - // On r�cup�re la valeur max (r�ponse imm�diate car champ ind�x�) - $posindice = $this->numbitcounter; - - $sql = "SELECT MAX(0+SUBSTRING(".$field.",-".$posindice."))"; - $sql.= " FROM ".MAIN_DB_PREFIX."societe"; - $sql.= " WHERE ".$field." REGEXP '^".$this->searchcode."$'"; - - $resql=$db->query($sql); - - if ($resql) - { - $row = $db->fetch_row($resql); - $max = $row[0]; - } - - // On applique le nombre de chiffres du compteur - $arg = '%0'.$this->numbitcounter.'s'; - - $num = sprintf($arg,$max+1); - $mask = eregi_replace('\{0+\}',$num,$mask); - - dolibarr_syslog("mod_codeclient_tigre::getNextValue return ".$mask); - - return $mask; - } - - /** \brief Construction du masque de num�rotation - * \param objsoc Objet soci�t� - * \param $type Client ou fournisseur (1:client, 2:fournisseur) - * \return string Valeur - */ - function buildMask($objsoc=0,$type=-1) - { - global $conf; - - if ($type==0) - { - $mask = $conf->global->CODE_TIGRE_MASK_CUSTOMER; - } - else if ($type==1) - { - $mask = $conf->global->CODE_TIGRE_MASK_SUPPLIER; - } - - $maskElement = preg_split('/[|]{1}/', $mask); - - $foundCounter = 0; - $substrBegin = 0; - $substrEnd = 0; - $maskRebuild = ''; - $error = 0; - $this->searchcode = ''; - - for ($i = 0; $i < count($maskElement); $i++) - { - // Ajout du jour en cours - if ($maskElement[$i] == '{dd}') - { - $maskRebuild .= strftime("%d",time()); - $this->searchcode .= '([0-9]{2})'; - } - else if (eregi('\{d+\}',$maskElement[$i]) && (eregi('\{d+\}',$$maskElement[$i]) != '{dd}')) - { - $error++; - } - - // Ajout du mois en cours - if ($maskElement[$i] == '{mm}') - { - $maskRebuild .= strftime("%m",time()); - $this->searchcode .= '([0-9]{2})'; - } - else if (eregi('\{m+\}',$maskElement[$i]) && (eregi('\{m+\}',$maskElement[$i]) != '{mm}')) - { - $error++; - } - - // Ajout de l'ann�e en cours - if ($maskElement[$i] == '{aa}') - { - $maskRebuild .= substr(strftime("%Y",time()),2); - $this->searchcode .= '([0-9]{2})'; - } - else if ($maskElement[$i] == '{aaaa}') - { - $maskRebuild .= strftime("%Y",time()); - $this->searchcode .= '([0-9]{4})'; - } - else if (eregi('\{a+\}',$maskElement[$i]) && ((eregi('\{a+\}',$maskElement[$i]) != '{aa}') || (eregi('\{a+\}',$maskElement[$i]) != '{aaa}'))) - { - $error++; - } - - // Ajout du pr�fix de la soci�t� - if (is_object($objsoc) && $objsoc->prefix_comm && $maskElement[$i] == '{pre}') - { - if ((!$objsoc->fournisseur && !$objsoc->code_fournisseur) || (!$objsoc->client && !$objsoc->code_client)) - { - $maskRebuild .= strtoupper($objsoc->prefix_comm); - $this->searchcode .= '([0-9A-Z]{1,})'; - } - else - { - $maskRebuild .= 'ABC'; - $this->searchcode .= '([0-9A-Z]{1,})'; - } - } - else if (is_object($objsoc) && !$objsoc->prefix_comm && $maskElement[$i] == '{pre}') - { - $maskRebuild .= 'ABC'; - $error++; - $this->prefixIsRequired = 1; - } - else if (!is_object($objsoc) && $maskElement[$i] == '{pre}') - { - if (is_string($objsoc) && $objsoc) - { - $maskRebuild .= $objsoc; - $this->searchcode .= '([0-9A-Z]{1,})'; - } - else if ($objsoc === 0) - { - $maskRebuild .= 'ABC'; - $this->searchcode .= '([0-9A-Z]{1,})'; - } - else - { - $error++; - $this->prefixIsRequired = 1; - } - } - - // Ajout des s�parateurs �ventuels : \ / - - if (eregi('[\/-]{1}',$maskElement[$i])) - { - $maskRebuild .= $maskElement[$i]; - $this->searchcode .= '([\/-]{1})'; - } - else if (eregi('[\/-]{2,}',$maskElement[$i])) - { - $error++; - } - - // Ajout des champs libres �ventuels - if (eregi('^[0-9A-Z]+$',$maskElement[$i])) - { - $maskRebuild .= strtoupper($maskElement[$i]); - $this->searchcode .= '([0-9A-Z]+)'; - } - - // D�finition du compteur - if (eregi('\{0+\}',$maskElement[$i])) - { - // D�fini le nombre de chiffres du compteur - $this->numbitcounter = strlen(substr($maskElement[$i],1,-1)); - // Permettra d'effectuer une recherche dans la table - $this->searchcode .= '([0-9]{'.$this->numbitcounter.'})'; - - $maskRebuild .= $maskElement[$i]; - $foundCounter = 1; - } - else if ($i == count($maskElement) && !eregi('\{0+\}',$maskElement[$i]) && $foundCounter == 0) - { - $error++; - } - } - - return $maskRebuild; - } - - /** - * \brief V�rifie si le mask utilise le pr�fix - * - */ - function verif_prefixIsUsed() - { - global $conf; - - $mask = $conf->global->CODE_TIGRE_MASK_CUSTOMER; - if (eregi('\{pre\}',$mask)) return 1; - - $mask = $conf->global->CODE_TIGRE_MASK_SUPPLIER; - if (eregi('\{pre\}',$mask)) return 1; - - return 0; - } - - - /** - * \brief V�rifie la validit� du code - * \param $db Handler acces base - * \param $code Code a v�rifier/corriger - * \param $soc Objet societe - * \param $type 0 = client/prospect , 1 = fournisseur - * \return int <0 si KO, 0 si OK - */ - function verif($db, &$code, $soc, $type) - { - $result=0; - $code = strtoupper(trim($code)); - - if (! $code && $this->code_null) - { - $result=0; - } - else - { - if ($this->verif_syntax($code) >= 0) - { - $is_dispo = $this->verif_dispo($db, $code, $soc); - if ($is_dispo <> 0) - { - $result=-3; - } - else if ($type == 0 && $soc->prefixCustomerIsRequired && !$soc->prefix_comm) - { - $result=-4; - } - else if ($type == 1 && $soc->prefixSupplierIsRequired && !$soc->prefix_comm) - { - $result=-5; - } - else - { - $result=0; - } - } - else - { - if (strlen($code) == 0) - { - $result=-2; - } - else - { - $result=-1; - } - } - } - dolibarr_syslog("mod_codeclient_tigre::verif result=".$result); - return $result; - } - - - /** - * \brief Renvoi une valeur correcte - * \param $db Handler acces base - * \param $code Code reference eventuel - * \return string Code correct, <0 si KO - */ - function get_correct($db, $code) - { - - } - - - /** - * \brief Renvoi si un code est pris ou non (par autre tiers) - * \param $db Handler acces base - * \param $code Code a verifier - * \param $soc Objet societe - * \return int 0 si dispo, <0 si erreur - */ - function verif_dispo($db, $code, $soc) - { - $sql = "SELECT code_client FROM ".MAIN_DB_PREFIX."societe"; - $sql.= " WHERE code_client = '".$code."'"; - $sql.= " AND rowid != '".$soc->id."'"; - - $resql=$db->query($sql); - if ($resql) - { - if ($db->num_rows($resql) == 0) - { - return 0; - } - else - { - return -1; - } - } - else - { - return -2; - } - - } - - - /** - * \brief Renvoi si un code respecte la syntaxe - * \param $code Code a verifier - * \return int 0 si OK, <0 si KO - */ - function verif_syntax($code) - { - $res = 0; - return $res; - } - - - /** - * Renvoi 0 si numerique, sinon renvoi nb de car non numerique - */ - function is_num($str) - { - $ok = 0; - return $ok; - } - -} - -?> diff --git a/htdocs/includes/modules/societe/mod_codeclient_zebre.php b/htdocs/includes/modules/societe/mod_codeclient_zebre.php deleted file mode 100644 index f9df52052b3a30bd4d6f9156af8eda77c1152b42..0000000000000000000000000000000000000000 --- a/htdocs/includes/modules/societe/mod_codeclient_zebre.php +++ /dev/null @@ -1,270 +0,0 @@ -<?php -/* Copyright (C) 2004 Rodolphe Quiedeville <rodolphe@quiedeville.org> - * Copyright (C) 2006-2007 Laurent Destailleur <eldy@users.sourceforge.net> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - * or see http://www.gnu.org/ - */ - -/** - * \file htdocs/includes/modules/societe/mod_codeclient_zebre.class.php - * \ingroup societe - * \brief Fichier de la classe des gestion zebre des codes clients - * \version $Id$ - */ - -require_once(DOL_DOCUMENT_ROOT."/includes/modules/societe/modules_societe.class.php"); - - -/** - \class mod_codeclient_zebre - \brief Classe permettant la gestion zebre des codes tiers -*/ -class mod_codeclient_zebre extends ModeleThirdPartyCode -{ - var $nom; // Nom du modele - var $code_modifiable; // Can be changed if valid - var $code_modifiable_invalide; // Can be changed if not valid - var $code_modifiable_null; // Can be changed if not defined - var $code_null; // Can be undefined - var $version; // 'development', 'experimental', 'dolibarr' - var $code_auto; // Numerotation automatique - - - /** \brief Constructeur classe - */ - function mod_codeclient_zebre() - { - $this->nom = "Zebre"; - $this->version = "dolibarr"; - $this->code_modifiable = 0; // Can be changed if valid - $this->code_modifiable_invalide = 1; // Can be changed if not valid - $this->code_modifiable_null = 1; // Can be changed if not defined - $this->code_null = 0; // Can be undefined - $this->code_auto = 0; - } - - - /** - * \brief Renvoie la description du module - * \return string Texte descripif - */ - function info($langs) - { - return "Verifie si le code client/fournisseur est de la forme CCCC9999. Les quatres premieres lettres etant une representation mnemotechnique, suivi du code postal en 2 chiffres et un numero d'ordre pour la prise en compte des doublons. Verification mais pas de generation automatique."; - } - - - /** \brief Renvoi la description du module - * \return string Texte descripif - */ - function getExample($langs) - { - return "ABCD7501"; - } - - - /** - * \brief V�rifie la validit� du code - * \param $db Handler acces base - * \param $code Code a v�rifier/corriger - * \param $soc Objet societe - * \return int <0 si KO, 0 si OK - */ - function verif($db, &$code, $soc) - { - $result=0; - $code = strtoupper(trim($code)); - - if (! $code && $this->code_null) - { - $result=0; - } - else - { - if ($this->verif_syntax($code) == 0) - { - $i = 1; - - $is_dispo = $this->verif_dispo($db, $code, $soc); - while ($is_dispo <> 0 && $i < 99) - { - $arr = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; - - $code = substr($code,0,6) . substr("00".$i, -2); - - $is_dispo = $this->verif_dispo($db, $code, $soc); - - $i++; - } - - if ($is_dispo <> 0) - { - $result=-3; - } - } - else - { - if (strlen(trim($code)) == 0) - { - $result=-2; - } - else - { - $result=-1; - } - } - } - dolibarr_syslog("mod_codeclient_zebre::verif result=".$result); - return $result; - } - - - /** - * \brief Renvoi une valeur correcte - * \param $db Handler acces base - * \param $code Code reference eventuel - * \return string Code correct, <0 si KO - */ - function get_correct($db, $code) - { - if ($this->verif_syntax($code) == 0) - { - $i = 1; - - $is_dispo = $this->verif_dispo($db, $code, $soc); - - while ( $is_dispo <> 0 && $i < 99) - { - $arr = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; - - $code = substr($code,0,6) . substr("00".$i, -2); - - $is_dispo = $this->verif_dispo($db, $code, $soc); - - $i++; - } - - return $is_dispo; - - } - else - { - return -1; - } - - } - - - /** - * \brief Renvoi si un code est pris ou non (par autre tiers) - * \param $db Handler acces base - * \param $code Code a verifier - * \param $soc Objet societe - * \return int 0 si dispo, <0 si erreur - */ - function verif_dispo($db, $code, $soc) - { - $sql = "SELECT code_client FROM ".MAIN_DB_PREFIX."societe"; - $sql.= " WHERE code_client = '".$code."'"; - $sql.= " AND rowid != '".$soc->id."'"; - - $resql=$db->query($sql); - if ($resql) - { - if ($db->num_rows($resql) == 0) - { - return 0; - } - else - { - return -1; - } - } - else - { - return -2; - } - } - - - /** - * \brief Renvoi si un code respecte la syntaxe - * \param $code Code a verifier - * \return int 0 si OK, <0 si KO - */ - function verif_syntax(&$code) - { - $res = 0; - - if (strlen($code) <> 8) - { - $res = -1; - } - else - { - if ($this->is_alpha(substr($code,0,4)) == 0 && $this->is_num(substr($code,4,4)) == 0 ) - { - $res = 0; - } - else - { - $res = -2; - } - - } - return $res; - } - - - function is_alpha($str) - { - $ok = 0; - // Je n'ai pas trouv� de fonction pour tester une chaine alpha sans les caract�re accentu�s - // dommage - $alpha = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; - - for ($i = 0 ; $i < 4 ; $i++) - { - if (strpos($alpha, substr($str,$i, 1)) === false) - { - $ok++; - } - } - - return $ok; - } - - - function is_num($str) - { - $ok = 0; - - $alpha = '0123456789'; - - for ($i = 0 ; $i < 4 ; $i++) - { - if (strpos($alpha, substr($str,$i, 1)) === false) - { - $ok++; - } - } - - return $ok; - } - -} - -?> diff --git a/htdocs/includes/modules/societe/modules_societe.class.php b/htdocs/includes/modules/societe/modules_societe.class.php index bb64f2334fcaba020bae4e3b2fecf87f77527c44..3ee966e6bc059b2dc87ce2c41310a8e688c631f7 100644 --- a/htdocs/includes/modules/societe/modules_societe.class.php +++ b/htdocs/includes/modules/societe/modules_societe.class.php @@ -1,6 +1,6 @@ <?php /* Copyright (C) 2003-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org> - * Copyright (C) 2004-2007 Laurent Destailleur <eldy@users.sourceforge.net> + * Copyright (C) 2004-2009 Laurent Destailleur <eldy@users.sourceforge.net> * Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com> * Copyright (C) 2005-2007 Regis Houssin <regis@dolibarr.fr> * @@ -81,7 +81,7 @@ class ModeleThirdPartyCode return $langs->trans("NotAvailable"); } - + /** \brief Renvoi version du module numerotation * \return string Valeur */ @@ -94,9 +94,9 @@ class ModeleThirdPartyCode if ($this->version == 'experimental') return $langs->trans("VersionExperimental"); if ($this->version == 'dolibarr') return DOL_VERSION; return $langs->trans("NotAvailable"); - } + } - /** + /** * \brief Renvoi la liste des mod�les actifs * \param db Handler de base */ @@ -104,7 +104,7 @@ class ModeleThirdPartyCode { $liste=array(); $sql =""; - + $resql = $db->query($sql); if ($resql) { @@ -124,7 +124,7 @@ class ModeleThirdPartyCode return $liste; } - /** + /** * \brief Return description of module parameters * \param langs Output language * \param soc Third party object @@ -134,20 +134,22 @@ class ModeleThirdPartyCode function getToolTip($langs,$soc,$type) { $s=''; + $s.=$langs->trans("Name").': <b>'.$this->nom.'</b><br>'; $s.=$langs->trans("Version").': <b>'.$this->getVersion().'</b><br>'; if ($type == 0) $s.=$langs->trans("CustomerCodeDesc").'<br>'; if ($type == 1) $s.=$langs->trans("SupplierCodeDesc").'<br>'; if ($type != -1) $s.=$langs->trans("ValidityControledByModule").': <b>'.$this->getNom($langs).'</b><br>'; $s.='<br>'; - $s.='<u>'.$langs->trans("ThisIsModuleRules").'</u>:<br>'; - if ($type == 0) $s.=$langs->trans("RequiredIfCustomer").': <b>'.yn(!$this->code_null).'</b><br>'; - if ($type == 1) $s.=$langs->trans("RequiredIfSupplier").': <b>'.yn(!$this->code_null).'</b><br>'; - if ($type == -1) $s.=$langs->trans("Required").': <b>'.yn(!$this->code_null).'</b><br>'; - $s.=$langs->trans("CanBeModifiedIfOk").': <b>'.yn($this->code_modifiable).'</b><br>'; - $s.=$langs->trans("CanBeModifiedIfKo").': <b>'.yn($this->code_modifiable_invalide).'</b><br>'; - $s.=$langs->trans("AutomaticCode").': <b>'.yn($this->code_auto).'</b><br>'; - if ($type == 0) $s.=$langs->trans("Example").': <b>'.$this->getExample($langs,$soc,0).'</b>'; - if ($type == 1) $s.=$langs->trans("Example").': <b>'.$this->getExample($langs,$soc,1).'</b>'; + $s.='<u>'.$langs->trans("ThisIsModuleRules").':</u><br>'; + if ($type == 0) $s.=$langs->trans("RequiredIfCustomer").': '.yn(!$this->code_null,1,1).'<br>'; + if ($type == 1) $s.=$langs->trans("RequiredIfSupplier").': '.yn(!$this->code_null,1,1).'<br>'; + if ($type == -1) $s.=$langs->trans("Required").': '.yn(!$this->code_null,1,1).'<br>'; + $s.=$langs->trans("CanBeModifiedIfOk").': '.yn($this->code_modifiable,1,1).'<br>'; + $s.=$langs->trans("CanBeModifiedIfKo").': '.yn($this->code_modifiable_invalide,1,1).'<br>'; + $s.=$langs->trans("AutomaticCode").': '.yn($this->code_auto,1,1).'<br>'; + $s.='<br>'; + if ($type == 0 || $type == -1) $s.=$langs->trans("NextValue").': <b>'.$this->getExample($langs,$soc,0).'</b><br>'; + if ($type == 1 || $type == -1) $s.=$langs->trans("NextValue").': <b>'.$this->getExample($langs,$soc,1).'</b>'; return $s; } } diff --git a/htdocs/includes/modules/supplier_order/mod_commande_fournisseur_orchidee.php b/htdocs/includes/modules/supplier_order/mod_commande_fournisseur_orchidee.php index c6440f85825865836ee6a98465ff849f9215af5d..6dd0fc51a38ca4680b3b46b22f789841948227c8 100644 --- a/htdocs/includes/modules/supplier_order/mod_commande_fournisseur_orchidee.php +++ b/htdocs/includes/modules/supplier_order/mod_commande_fournisseur_orchidee.php @@ -38,7 +38,7 @@ class mod_commande_fournisseur_orchidee extends ModeleNumRefSuppliersOrders var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' var $error = ''; var $nom = 'Orchidee'; - + /** \brief Renvoi la description du modele de num�rotation * \return string Texte descripif @@ -49,23 +49,29 @@ class mod_commande_fournisseur_orchidee extends ModeleNumRefSuppliersOrders $langs->load("bills"); $langs->load("admin"); - + $form = new Form($db); - + $texte = $langs->trans('GenericNumRefModelDesc')."<br>\n"; $texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">'; $texte.= '<input type="hidden" name="action" value="updateMask">'; $texte.= '<input type="hidden" name="maskconstorder" value="COMMANDE_FOURNISSEUR_ORCHIDEE_MASK">'; $texte.= '<table class="nobordernopadding" width="100%">'; - - // Parametrage du prefix des factures + + $tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("Order")); + $tooltip.=$langs->trans("GenericMaskCodes2"); + $tooltip.=$langs->trans("GenericMaskCodes3"); + $tooltip.=$langs->trans("GenericMaskCodes4a",$langs->transnoentities("Order"),$langs->transnoentities("Order")); + $tooltip.=$langs->trans("GenericMaskCodes5"); + + // Parametrage du prefix $texte.= '<tr><td>'.$langs->trans("Mask").':</td>'; - $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskorder" value="'.$conf->global->COMMANDE_FOURNISSEUR_ORCHIDEE_MASK.'">',$langs->trans("GenericMaskCodes",$langs->transnoentities("Order"),$langs->transnoentities("Order"),$langs->transnoentities("Order")),1,1).'</td>'; + $texte.= '<td align="right">'.$form->textwithhelp('<input type="text" class="flat" size="24" name="maskorder" value="'.$conf->global->COMMANDE_FOURNISSEUR_ORCHIDEE_MASK.'">',$tooltip,1,1).'</td>'; $texte.= '<td align="left" rowspan="2"> <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>'; $texte.= '</tr>'; - + $texte.= '</table>'; $texte.= '</form>'; @@ -78,12 +84,12 @@ class mod_commande_fournisseur_orchidee extends ModeleNumRefSuppliersOrders function getExample() { global $conf,$langs,$mysoc; - + $old_code_client=$mysoc->code_client; $mysoc->code_client='CCCCCCCCCC'; $numExample = $this->getNextValue($mysoc,''); $mysoc->code_client=$old_code_client; - + if (! $numExample) { $numExample = $langs->trans('NotConfigured'); @@ -101,22 +107,22 @@ class mod_commande_fournisseur_orchidee extends ModeleNumRefSuppliersOrders global $db,$conf; require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php"); - + // On d�fini critere recherche compteur $mask=$conf->global->COMMANDE_FOURNISSEUR_ORCHIDEE_MASK; - - if (! $mask) + + if (! $mask) { $this->error='NotConfigured'; return 0; } $numFinal=get_next_value($db,$mask,'commande_fournisseur','ref','',$objsoc->code_client,$commande->date_commande); - + return $numFinal; } - - + + /** \brief Renvoie la r�f�rence de commande suivante non utilis�e * \param objsoc Objet soci�t� * \param commande Objet commande @@ -126,6 +132,6 @@ class mod_commande_fournisseur_orchidee extends ModeleNumRefSuppliersOrders { return $this->getNextValue($objsoc,$commande); } -} +} ?> \ No newline at end of file diff --git a/htdocs/langs/ca_ES/admin.lang b/htdocs/langs/ca_ES/admin.lang index f3efc5dacbcfb61a167ff71f3ac581d51afc8719..8b164fdd62e3335ad27d3a2606a859d0d53dd783 100644 --- a/htdocs/langs/ca_ES/admin.lang +++ b/htdocs/langs/ca_ES/admin.lang @@ -205,7 +205,7 @@ SetupIsReadyForUse = La instal·lació ha finalitzat i Dolibarr està disponible CurrentVersion = Versió actual de Dolibarr CallUpdatePage = Trucar a la pàgina d'actualització de l'estructura i dades de la base de dades %s. LastStableVersion = Última versió estable -GenericMaskCodes = Podeu introduir qualsevol màscara numèrica. En aquesta màscara, pot utilitzar les següents etiquetes: <br> <b> (000000) </b> correspon a un nombre que s'incrementa en cadascun %s. Introduïu tants zeros com longuitud desitgi mostrar. El comptador es completarà a partir de zeros per l'esquerra per tal de tenir tants zeros com la màscara. <br> <b> 000.000 (000) </b> Igual que l'anterior, amb una compensació corresponent al número a la dreta del signe + s'aplica a partir del primer %s. <br> <b> (000000) @ x </b> igual que l'anterior, però el comptador es restableix a zero quan s'arriba a x mesos (x entre 1 i 12). Si aquesta opció s'utilitza i x és de 2 o superior, llavors la seqüència () (aa mm) (o) (aaaa) mm també és necessària. <br> <b> dd () </b> dies (01 a 31). <br> <b> mm () </ b> mes (01 a 12). <br> <b> yy () </ b>, <b> (aaaa) </ b> o <b> (i) </ b> de més de 2 anys, 4 o l'1 de números. <br> <b> cccc000 () </b> el codi de client en n caràcters seguits d'una ref. client sense offset i 0 al comptador global. <br> Tots els altres caràcters de la màscara es mantindran intactes. <br> No es permeten espais. <br> <u> exemple, en la 99 % s del tercer de l'empresa dóna 31.01.2007: </u> <br> <b> ABC yy () (mm) - (000000) < /b> donarà <b> ABC0701-000099 </b> <br> <b> 0000 (100)-ZZZ/() dd / XXX </b> donarà <b> 0199-ZZZ/31/XXX </b ><br> +GenericMaskCodes = GenericNumRefModelDesc = Retorna un nombre creat d'acord amb una màscara definida. ServerAvailableOnIPOrPort = Servidor disponible a l'adreça <b>%s</b> al port <b>%s</b> ServerNotAvailableOnIPOrPort = Servidor no disponible en l'adreça <b>%s</b> al port <b>%s</b> diff --git a/htdocs/langs/da_DA/admin.lang b/htdocs/langs/da_DA/admin.lang index 40579c9fb5659d1309c8d51a05b8e63b68e355cc..14f1633c57fc026f98a17603b238a8dd9a6a28e1 100644 --- a/htdocs/langs/da_DA/admin.lang +++ b/htdocs/langs/da_DA/admin.lang @@ -217,7 +217,7 @@ SetupIsReadyForUse=Installer er færdig og Dolibarr er klar til brug med denne n CurrentVersion=Dolibarr aktuelle version CallUpdatePage=Gå til den side, der opdaterer database struktur og oplysningerne% s. LastStableVersion=Seneste stabile version -GenericMaskCodes=Du kan indtaste et hvilket som helst nummerressourcer maske. I denne maske, Følgende tags kan bruges: <br> <b>(000000)</b> svarer til et nummer, der skal øges for hver% s. Angiv så mange nuller som den ønskede længde på tælleren. Tælleren vil blive suppleret af nuller fra venstre for at få så mange nuller som maske. <br> <b>(000000 +000)</b> samme som tidligere, men en offset svarende til antallet til højre for tegnet + anvendes starter den første% s. <br> <b>(000000 @ x)</b> samme som tidligere, men tælleren er nulstillet når måned x er nået (x mellem 1 og 12). Hvis denne indstilling er anvendt, og x er 2 eller højere, så SEQUENCE (yy) (mm) eller (ÅÅÅÅ) (mm) er også påkrævet. <br> <b>(dd)</b> dag (01 til 31). <br> <b>(mm)</b> måned (01 til 12). <br> <b>(yy), (ÅÅÅÅ)</b> eller <b>(y)</b> år over 2, 4 eller 1 numre. <br> <b>(cccc000)</b> kunden kode på n tegn efterfulgt af en klients ref counter uden kompensation og zeroized whith den globale counter. <br><br> Alle andre tegn i maske vil forblive intakt. <br> Mellemrum er ikke tilladt. <br><br> <u>Eksempel på 99.% s af den tredje part TheCompany gjort 31/01/2007:</u> <br> <b>ABC (yy) (mm) - (000000)</b> vil give <b>ABC0701-000099</b> <br> <b>(0000 +100)-ZZZ / (dd) / XXX</b> vil give <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Retur en tilpasselig antal henhold til en bestemt maske. ServerAvailableOnIPOrPort=Server findes på <b>adressen% s port% s</b> ServerNotAvailableOnIPOrPort=Serveren er ikke tilgængelig på <b>adressen% s port% s</b> diff --git a/htdocs/langs/de_DE/admin.lang b/htdocs/langs/de_DE/admin.lang index b745c36a9c4befbf465a50d1ffa967cd8565a9a2..56b4a26bf55cda0a0c92dbba9203755367d88c38 100644 --- a/htdocs/langs/de_DE/admin.lang +++ b/htdocs/langs/de_DE/admin.lang @@ -215,7 +215,7 @@ SetupIsReadyForUse=Installation abgeschlossen ist und Dolibarr ist bereit für d CurrentVersion=Dolibarr aktuelle Version CallUpdatePage=Gehen Sie zu der Seite, dass Updates der Datenbankstruktur und der Daten% s. LastStableVersion=Letzte stabile Version -GenericMaskCodes=Sie können alle Nummern Maske. In dieser Maske, die folgende Tags verwendet werden können: <br> <b>(000000)</b> entspricht einer Zahl, die erhöht auf jedem% s. Geben Sie so viele Nullen, wie die gewünschte Länge des Zählers. Der Zähler wird durch Nullen ergänzt werden, von der linken Seite, um so viele Nullen, wie die Maske. <br> <b>(000000 +000)</b> wie oben, sondern ein Ausgleich entsprechend der Zahl auf der rechten Seite das +-Zeichen wird ab dem ersten% s. <br> <b>@ X (000000)</b> wie oben, aber der Zähler auf Null zurückgesetzt, wenn Monat x erreicht ist (x zwischen 1 und 12). Wenn diese Option verwendet wird, und x ist 2 oder höher, dann SEQUENCE (yy) (mm) oder (JJJJ) (mm) ist ebenfalls erforderlich. <br> <b>tt ()</b> Tag (01 bis 31). <br> <b>() mm</b> Monat (01 bis 12). <br> <b>yy (), (JJJJ)</b> oder <b>(y)</b> Jahr über 2, 4 oder 1-Nummern. <br> <b>() cccc000</b> den Client-Code auf n-Zeichen, gefolgt von einem Client-ref Zähler ohne Offset-und zeroized whith der globalen Zähler. <br><br> Alle anderen Zeichen in der Maske bleiben. <br> Leerzeichen sind nicht zulässig. <br><br> <u>Beispiel auf der 99.% s des Dritten TheCompany getan 31/01/2007:</u> <br> <b>ABC (yy) (mm) - (000000)</b> wird <b>ABC0701-000099</b> <br> <b>(0000 +100)-ZZZ / tt () / XXX</b> wird <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Zurück eine anpassbare Zahl nach einem definierten Maske. ServerAvailableOnIPOrPort=Server ist verfügbar unter der <b>Adresse% s</b> auf <b>Port% s</b> ServerNotAvailableOnIPOrPort=Server nicht verfügbar ist unter der <b>Adresse% s</b> auf <b>Port% s</b> diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index 18ccb9f7eb9c74bc8d18ee0e275220974886af36..74cc51fba9d83c642c87bfcbb7d9408eef7857d3 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -206,7 +206,12 @@ SetupIsReadyForUse=Install is finished and Dolibarr is ready to use with this ne CurrentVersion=Dolibarr current version CallUpdatePage=Go to the page that updates database structure and datas %s. LastStableVersion=Last stable version -GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:<br><b>{000000}</b> corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask. <br><b>{000000+000}</b> same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s. <br><b>{000000@x}</b> same as previous but the counter is reset to zero when month x is reached (x between 1 and 12). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required. <br><b>{dd}</b> day (01 to 31).<br><b>{mm}</b> month (01 to 12).<br><b>{yy}</b>, <b>{yyyy}</b> or <b>{y}</b> year over 2, 4 or 1 numbers. <br> <b>{cccc000}</b> the client code on n characters followed by a client's ref counter without offset and zeroized whith the global counter.<br><br>All other characters in the mask will remain intact.<br>Spaces are not allowed.<br><br><u>Example on the 99th %s of the third party TheCompany done 31/01/2007:</u><br><b>ABC{yy}{mm}-{000000}</b> will give <b>ABC0701-000099</b><br><b>{0000+100}-ZZZ/{dd}/XXX</b> will give <b>0199-ZZZ/31/XXX</b><br> +GenericMaskCodes=You may enter any numbering mask. In this mask, the following tags could be used:<br><b>{000000}</b> corresponds to a number which will be incremented on each %s. Enter as many zeros as the desired length of the counter. The counter will be completed by zeros from the left in order to have as many zeros as the mask. <br><b>{000000+000}</b> same as previous but an offset corresponding to the number to the right of the + sign is applied starting on first %s. <br><b>{000000@x}</b> same as previous but the counter is reset to zero when month x is reached (x between 1 and 12). If this option is used and x is 2 or higher, then sequence {yy}{mm} or {yyyy}{mm} is also required. <br><b>{dd}</b> day (01 to 31).<br><b>{mm}</b> month (01 to 12).<br><b>{yy}</b>, <b>{yyyy}</b> or <b>{y}</b> year over 2, 4 or 1 numbers. <br> +GenericMaskCodes2=<b>{cccc}</b> the client code<br><b>{cccc000}</b> the client code on n characters is followed by a client's ref counter without offset and zeroized whith the global counter.<br> +GenericMaskCodes3=All other characters in the mask will remain intact.<br>Spaces are not allowed.<br> +GenericMaskCodes4a=<u>Example on the 99th %s of the third party TheCompany done 2007-01-31:</u><br> +GenericMaskCodes4b=<u>Example on third party created on 2007-03-01:</u><br> +GenericMaskCodes5=<b>ABC{yy}{mm}-{000000}</b> will give <b>ABC0701-000099</b><br><b>{0000+100}-ZZZ/{dd}/XXX</b> will give <b>0199-ZZZ/31/XXX</b> GenericNumRefModelDesc=Return a customizable number according to a defined mask. ServerAvailableOnIPOrPort=Server is available at address <b>%s</b> on port <b>%s</b> ServerNotAvailableOnIPOrPort=Server is not available at address <b>%s</b> on port <b>%s</b> diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang index 97c81c2b8f2f490bc950c9b6ab1d38f5c9971abc..1d9acb0d5e86c2d4df5f4cde924ad08d3c4ae4a6 100644 --- a/htdocs/langs/en_US/companies.lang +++ b/htdocs/langs/en_US/companies.lang @@ -258,5 +258,7 @@ AutomaticallyGenerated=Automatically generated FiscalYearInformation=Information on the fiscal year FiscalMonthStart=Starting month of the fiscal year -# Tigre -TigreNumRefModelDesc1=Return a customizable customer/supplier number according to a defined mask. +# Monkey +MonkeyNumRefModelDesc=Check that customer/supplier code contains 6 numbers. +# Leopard +LeopardNumRefModelDesc=Customer/supplier code is free. This code can be modified at any time. diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang index 2070d12f6674177b908244684ff4bbfa157b3fc8..f5322910c4bf261b753b8a648cbdf3bc9e8d4f37 100644 --- a/htdocs/langs/es_ES/admin.lang +++ b/htdocs/langs/es_ES/admin.lang @@ -205,7 +205,7 @@ SetupIsReadyForUse = La instalación ha finalizado y Dolibarr está disponible c CurrentVersion = Versión actual de Dolibarr CallUpdatePage = Llamar a la página de actualización de la estructura y datos de la base de datos %s. LastStableVersion = Última versión estable -GenericMaskCodes = Puede introducir cualquier máscara numérica. En esta máscara, puede utilizar las siguientes etiquetas:<br><b>{000000} </b> corresponde a un número que se incrementa en cada uno de %s. Introduzca tantos ceros como longuitud desee mostrar. El contador se completará a partir de ceros por la izquierda con el fin de tener tantos ceros como la máscara. <br> <b> 000.000 (000) </ b> Igual que el anterior, con una compensación correspondiente al número a la derecha del signo + se aplica a partir del primer %s. <br> <b> (000000) @ x </b> igual que el anterior, pero el contador se restablece a cero cuando se llega a x meses (x entre 1 y 12). Si esta opción se utiliza y x es de 2 o superior, entonces la secuencia () (aa mm) (o) (aaaa) mm también es necesaria. <br> <b> dd () </ b> días (01 a 31). <br> <b> mm () </ b> mes (01 a 12). <br> <b> yy () < / b>, <b> (aaaa) </ b> o <b> (y) </ b> de más de 2 años, 4 o el 1 de números. <br> <b> cccc000 () </ b> el código de cliente en n caracteres seguidos de una ref. cliente sin offset y a 0 en el contador global. <br> <br> Todos los demás caracteres de la máscara se mantendrán intactos. <br> No se permiten espacios. <br> <br> <u> ejemplo, en la 99 %s del tercero de la empresa da 31/01/2007: </ u> <br> <b> ABC yy () ( mm) - (000000) </ b> dará <b> ABC0701-000099 </ b> <br> <b> 0000 (100)-ZZZ / () dd / XXX </ b> dará <b> 0199-ZZZ/31/XXX </ b> <br> +GenericMaskCodes = GenericNumRefModelDesc = Devuelve un número creado acorde a una máscara definida. ServerAvailableOnIPOrPort = Servidor disponible en la dirección <b>%s</b> en el puerto <b>%s</b> ServerNotAvailableOnIPOrPort = Servidor no disponible en la dirección <b>%s</b> en el puerto <b>%s</b> diff --git a/htdocs/langs/fi_FI/admin.lang b/htdocs/langs/fi_FI/admin.lang index 5d8915454129d8c6abad9c384d0411ee466787f6..db5304ab22ac8374673202e96d5660a56db9b258 100644 --- a/htdocs/langs/fi_FI/admin.lang +++ b/htdocs/langs/fi_FI/admin.lang @@ -215,7 +215,7 @@ SetupIsReadyForUse=Asenna on päättynyt ja Dolibarr on valmis käyttämään t CurrentVersion=Dolibarr nykyinen versio CallUpdatePage=Siirry sivun päivitykset tietokannan rakennetta ja datas% s. LastStableVersion=Viimeisin vakaa versio -GenericMaskCodes=Voit kirjoittaa minkä tahansa numerointiin mask. Tässä mask, seuraavia koodeja voidaan käyttää: <br> <b>(000000)</b> vastaa numero, jonka on kasvatettu kunkin% s. Kirjoita niin monta nollaa kuin toivottu pituus vastatakaus. Laskuri on täydennettävä nollilla vasemmalta, jotta on niin monta nollaa kuin peittää. <br> <b>(000000 +000)</b> sama kuin edellinen, mutta offset vastaa numeron oikealla puolella olevaa plusmerkkiä sovelletaan alkaa ensimmäiset% s. <br> <b>(000000 @ x)</b> sama kuin edellinen, mutta nollautuu nollaan, kun kuukausi x on saavutettu (x välillä 1 ja 12). Jos tämä vaihtoehto on käytössä, ja x on 2 tai enemmän, sitten järjestyksessä (yy) (mm) tai (vvvv) (mm) on myös tarpeen. <br> <b>(dd)</b> vrk (01-31). <br> <b>(mm)</b> kk (01-12). <br> <b>(yy), (vvvv)</b> tai <b>(y)</b> vuodessa yli 2, 4 tai 1-numerot. <br> <b>(cccc000)</b> asiakkaan koodi n merkkiä seuraa asiakkaan ref counter ilman tasoitusta ja zeroized whith maailmanlaajuisen laskuri. <br><br> Kaikki muut merkit ja maski pysyy ennallaan. <br> Välilyönnit eivät ole sallittuja. <br><br> <u>Esimerkki on 99% s on kolmannen osapuolen TheCompany tehnyt 31/01/2007:</u> <br> <b>ABC (yy) (mm) - (000000)</b> antaa <b>ABC0701-000099</b> <br> <b>(0000 +100)-ZZZ / (dd) / XXX</b> antaa <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Paluu mukautettavan numeron mukaan määritelty mask. ServerAvailableOnIPOrPort=Server on saatavilla <b>osoitteessa% s satama% s</b> ServerNotAvailableOnIPOrPort=Palvelin ei ole käytettävissä <b>osoitteessa% s satama% s</b> diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang index 5f3713b7f3f417cb5481338042884709ea2f5e5a..74b351773b239e083fd107421d80863f5efb4f8c 100644 --- a/htdocs/langs/fr_FR/admin.lang +++ b/htdocs/langs/fr_FR/admin.lang @@ -205,7 +205,12 @@ SetupIsReadyForUse=L'installation est terminée et Dolibarr est prêt à être u CurrentVersion=Version en cours de Dolibarr CallUpdatePage=Appeler la page de mise a jour de la structure et données de la base %s. LastStableVersion=Dernière version stable -GenericMaskCodes=Vous pouvez saisir tout masque de numérotation. Dans ce masque, les balises suivantes peuvent etre utilisées:<br><b>{000000}</b> correspond a un numéro qui sera incrémenté à chaque %s. Mettre autant de zéro que la longueur désirée du compteur. Le compteur sera complété par des 0 à gauche afin d'avoir autant de zéro que dans le masque.<br><b>{000000+000}</b> idem précédemment mais un offset correpondant au nombre à droite du + est appliqué dès la premiere %s.<br><b>{000000@x}</b> idem précédemment mais le compteur est remis à zero le xeme mois de l'année (x entre 1 et 12). Si cette option est utilisée et x vaut 2 ou plus, alors la sequence {yy}{mm} ou {yyyy}{mm} est obligatoire. <br><b>{dd}</b> jour (01 à 31).<br><b>{mm}</b> mois (01 à 12).<br><b>{yy}</b>, <b>{yyyy}</b> ou <b>{y}</b> annee sur 2, 4 ou 1 chiffres.<br> <b>{cccc000}</b> le code client sur n lettres et suivi d'un compteur propre au client sans offset, complété par des zéros pour en avoir autant que dans le masque, et remis à zéro en même temps que le compteur global.<br><br> Tout autre caractère dans le masque sera laissé inchangé.<br>Les espaces ne sont pas permis.<br><br><u>Exemple sur la 99eme %s du tiers LaCompanie faite le 31/03/2007:</u><br><b>ABC{yy}{mm}-{000000}</b> donnera <b>ABC0703-000099</b><br><b>{0000+100}-XXX/{dd}/YYY</b> donnera <b>0199-XXX/31/YYY</b><br> +GenericMaskCodes=Vous pouvez saisir tout masque de numérotation. Dans ce masque, les balises suivantes peuvent etre utilisées:<br><b>{000000}</b> correspond a un numéro qui sera incrémenté à chaque %s. Mettre autant de zéro que la longueur désirée du compteur. Le compteur sera complété par des 0 à gauche afin d'avoir autant de zéro que dans le masque.<br><b>{000000+000}</b> idem précédemment mais un offset correpondant au nombre à droite du + est appliqué dès la premiere %s.<br><b>{000000@x}</b> idem précédemment mais le compteur est remis à zero le xeme mois de l'année (x entre 1 et 12). Si cette option est utilisée et x vaut 2 ou plus, alors la sequence {yy}{mm} ou {yyyy}{mm} est obligatoire. <br><b>{dd}</b> jour (01 à 31).<br><b>{mm}</b> mois (01 à 12).<br><b>{yy}</b>, <b>{yyyy}</b> ou <b>{y}</b> annee sur 2, 4 ou 1 chiffres.<br> +GenericMaskCodes2=<b>{cccc}</b> le code client sur n lettres<br><b>{cccc000}</b> le code client sur n lettres est suivi d'un compteur propre au client sans offset, complété par des zéros pour en avoir autant que dans le masque, et remis à zéro en même temps que le compteur global.<br> +GenericMaskCodes3=Tout autre caractère dans le masque sera laissé inchangé.<br>Les espaces ne sont pas permis.<br> +GenericMaskCodes4a=<u>Exemple sur la 99eme %s du tiers LaCompanie faite le 31/03/2007:</u><br> +GenericMaskCodes4b=<u>Exemple sur un tiers crée le 31/03/2007:</u><br> +GenericMaskCodes5=<b>ABC{yy}{mm}-{000000}</b> donnera <b>ABC0703-000099</b><br><b>{0000+100}-XXX/{dd}/YYY</b> donnera <b>0199-XXX/31/YYY</b> GenericNumRefModelDesc=Renvoie un numéro personalisable selon un masque à définir. ServerAvailableOnIPOrPort=Serveur disponible a l'adresse <b>%s</b> sur le port <b>%s</b> ServerNotAvailableOnIPOrPort=Serveur non disponible à l'adresse <b>%s</b> sur le port <b>%s</b> diff --git a/htdocs/langs/fr_FR/companies.lang b/htdocs/langs/fr_FR/companies.lang index 227c6b6267b5d6e7fedc6d426c667f06aefe3f0b..9dc45c86b64b36f1670b7e24dd873a0477988f0a 100644 --- a/htdocs/langs/fr_FR/companies.lang +++ b/htdocs/langs/fr_FR/companies.lang @@ -261,6 +261,7 @@ AutomaticallyGenerated=Généré automatiquement FiscalYearInformation=Information sur l'année fiscale FiscalMonthStart=Mois de début d'exercice -# Tigre -TigreNumRefModelDesc1=Renvoie un code client/fournisseur personnalisable selon un masque à définir. -TigreMaskCodes=Vous pouvez saisir tout masque de numérotation. Dans ce masque, les balises suivantes peuvent etre utilisées:<br><b>{000000}</b> correspond a un numéro qui sera incrémenté à chaque code client/fournisseur. Mettre autant de zéro que la longueur désirée du compteur. Le compteur sera complété par des 0 à gauche afin d'avoir autant de zéro que dans le masque.<br><b>{dd}</b> jour de la création du code client/fournisseur (01 à 31).<br><b>{mm}</b> mois de la création du code client/fournisseur (01 à 12).<br><b>{yy}</b> et/ou {yyyy} annee, sur 2 ou 4 chiffres, de la création du code client/fournisseur.<br><b>{pre}</b> prefix du tiers.<br>Tout autre caractère dans le masque sera laissé inchangé.<br>Vous pouvez utiliser les caractères suivant comme séparateur : slash, anti-slash et tiret<br>Différencier les éléments utilisés avec un pipe <b>|</b> (altgr+6).<br>Les espaces ne sont pas permis.<br><br><u>Exemple de code client/fournisseur simple</u><br><b>CC|{00000}</b> donnera <b>CC00001</b><br><b>CF|-|{00000}</b> donnera <b>CF-00001</b><br><br><u>Exemple sur le 99eme code client/fournisseur fait le 31/01/2007:</u><br><b>ABC|-|{yy}|{mm}|-|{000000}</b> donnera <b>ABC-0701-000099</b><br><b>{0000}|-|{pre}|/|{dd}|/|INV</b> donnera <b>0099-SFR/31/INV</b><br> +# Monkey +MonkeyNumRefModelDesc=Vérifie que le code client/fournisseur est un nombre sur 6 chiffres, sans ruptures. +# Leopard +LeopardNumRefModelDesc=Code client/fournisseur libre sans vérification. Peut-etre modifié à tout moment. diff --git a/htdocs/langs/it_IT/admin.lang b/htdocs/langs/it_IT/admin.lang index a5fe4e4d43035c96a14827679d359794a8adbc43..fb50997929ad3964139a687e06434b953ee6d689 100644 --- a/htdocs/langs/it_IT/admin.lang +++ b/htdocs/langs/it_IT/admin.lang @@ -192,7 +192,11 @@ SetupIsReadyForUse =Installare CurrentVersion =Dolibarr versione corrente CallUpdatePage =Vai alla pagina che aggiorna la struttura del database e dati su %s. LastStableVersion =Ultima versione stabile -GenericMaskCodes =Puoi inserire uno schema di numerazione. In questo schema, possono essere utilizzati i seguenti tag : <br><br> <b> {000000} </b> Corrisponde a un numero che sar� incrementato in ogni %s. Inserisci il numero di zeri euivalente alla lunghezza desiderata del contatore. Il contatore sar� completato da zeri a sinistra al fine di avere tanti zeri come lo schema definito. <br><b> {000000+000} </b> Come il precedente, ma un offset corrispondente al numero a destra del segno + viene applicato a partire dalla prima %s. <br> <b> {000000@x} </b> Lo stesso come il precedente, ma il contatore non viene reimpostato a zero quando il mese x � raggiunto (x � tra 1 e 12). Se viene utilizzata questa opzione e x � 2 o superiore, allora la sequenza {yy}{mm} o {yyyy}{mm} � anche necessaria. <br> <b> {dd} </b> giorno (da 01 a 31). <br> <b> {mm} </b> mese (da 01 a 12). <br> <b> {yy} </b>, <b> {yyyy} </b> o <b> {y} </b> anno pi� di 2, 4 o 1 numeri. <br><br> <b> {cccc000} </b> Il codice cliente su n caratteri seguiti dal contatore rif. cliente senza offset e azzerato con il contatore globale. <br> <br> Tutti gli altri caratteri nello schema rimarranno intatti. <br> Spazi non sono ammessi. <br> <br> <u> Esempio sulla 99a %s del terzo TheCompany fatta il 31/01/2007: </u> <br> <b> ABC{yy}{mm}-{000000} </b> dar� <b> ABC0701-000099 </b> <br> <b> {0000+100}-ZZZ/{dd}/XXX </b> dar� <b> 0199-ZZZ/31/XXX </b> <br> +GenericMaskCodes =Puoi inserire uno schema di numerazione. In questo schema, possono essere utilizzati i seguenti tag : <br><b> {000000} </b> Corrisponde a un numero che sar� incrementato in ogni %s. Inserisci il numero di zeri euivalente alla lunghezza desiderata del contatore. Il contatore sar� completato da zeri a sinistra al fine di avere tanti zeri come lo schema definito. <br><b> {000000+000} </b> Come il precedente, ma un offset corrispondente al numero a destra del segno + viene applicato a partire dalla prima %s. <br> <b> {000000@x} </b> Lo stesso come il precedente, ma il contatore non viene reimpostato a zero quando il mese x � raggiunto (x � tra 1 e 12). Se viene utilizzata questa opzione e x � 2 o superiore, allora la sequenza {yy}{mm} o {yyyy}{mm} � anche necessaria. <br> <b> {dd} </b> giorno (da 01 a 31). <br> <b> {mm} </b> mese (da 01 a 12). <br> <b> {yy} </b>, <b> {yyyy} </b> o <b> {y} </b> anno pi� di 2, 4 o 1 numeri.<br> +GenericMaskCodes2=<b> {cccc000} </b> Il codice cliente su n caratteri seguiti dal contatore rif. cliente senza offset e azzerato con il contatore globale.<br> +GenericMaskCodes3=Tutti gli altri caratteri nello schema rimarranno intatti. <br> Spazi non sono ammessi. <br> +GenericMaskCodes4a=<u> Esempio sulla 99a %s del terzo TheCompany fatta il 31/01/2007: </u> <br> +GenericMaskCodes5=<b> ABC{yy}{mm}-{000000} </b> dar� <b> ABC0701-000099 </b> <br> <b> {0000+100}-ZZZ/{dd}/XXX </b> dar� <b> 0199-ZZZ/31/XXX </b> GenericNumRefModelDesc =Ritorna un numero personalizzabile in base allo schema definito. ServerAvailableOnIPOrPort =Server � disponibile presso l'indirizzo <b> %s </b> sulla porta <b> %s </b> ServerNotAvailableOnIPOrPort =Server non � disponibile presso l'indirizzo <b> %s </b> sulla porta <b> %s </b> diff --git a/htdocs/langs/nl_BE/admin.lang b/htdocs/langs/nl_BE/admin.lang index 4b2c419921fbeabdf92b94d97c6f79c2d62d4a34..2c10c61ec992af718a19b44dca1c56beed8297b3 100644 --- a/htdocs/langs/nl_BE/admin.lang +++ b/htdocs/langs/nl_BE/admin.lang @@ -218,7 +218,7 @@ SetupIsReadyForUse=Installatie is voltooid en Dolibarr is gereed voor gebruik me CurrentVersion=Dolibarr huidige versie CallUpdatePage=Ga naar de pagina die updates database structuur en data% s. LastStableVersion=Laatste stabiele versie -GenericMaskCodes=U kunt elke nummering masker. In dit masker, de volgende tags kunnen worden gebruikt: <br> <b>(000000)</b> komt overeen met een aantal dat zal worden verhoogd voor elk% s. Voer zoveel nullen als de gewenste lengte van de teller. De teller zal worden aangevuld met nullen van links om zoveel nullen als het masker. <br> <b>(000000 +000)</b> hetzelfde als de vorige, maar een compensatie overeenkomt met het aantal aan het recht van het + teken is toegepast, beginnend op eerste% s. <br> <b>(000000 @ x)</b> hetzelfde als de vorige, maar de teller op nul wanneer maand x is bereikt (x tussen 1 en 12). Als deze optie wordt gebruikt en x 2 of hoger, dan sequentie yy () () of (mm jjjj) () mm is ook nodig. <br> <b>dd ()</b> dag (01 tot 31). <br> <b>() mm</b> maand (01 tot 12). <br> <b>yy (), (jjjj)</b> of <b>(y)</b> jaar gedurende 2, 4 of 1 nummers. <br> <b>() cccc000</b> de client code op n tekens gevolgd door een klant ref teller zonder offset en zeroized breken de wereldwijde teller. <br><br> Alle andere tekens in het masker blijft intact. <br> Spaties zijn niet toegestaan. <br><br> <u>Voorbeeld op de 99e% s van de derde partij TheCompany gedaan 31/01/2007:</u> <br> <b>ABC yy () (MM) - (000.000)</b> geeft <b>ABC0701-000099</b> <br> <b>0000 +100 ()-ZZZ / dd () / XXX</b> zal <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Terugkeer een aanpasbare aantal volgens een omschreven masker. ServerAvailableOnIPOrPort=Server is beschikbaar op het <b>adres% s</b> op <b>poort% s</b> ServerNotAvailableOnIPOrPort=Server is niet beschikbaar op het <b>adres% s</b> op <b>poort% s</b> diff --git a/htdocs/langs/nl_BE/bills.lang b/htdocs/langs/nl_BE/bills.lang index 7c6dfc0af1cc15ca33870f927a08bd9d9f117cd4..98df9e22ac6d20c2c174cf49435c65649f868efb 100644 --- a/htdocs/langs/nl_BE/bills.lang +++ b/htdocs/langs/nl_BE/bills.lang @@ -286,9 +286,6 @@ MarsNumRefModelDesc1=Numéro de facture sous la forme, PREF-10-2004-005, qui cor MarsNumRefModelDesc2=Le nombre final est formaté sur 3 chiffres ou plus. MarsNumRefModelDesc3=Si la constante FACTURE_MARS_DELTA est définie, un offset est appliqué sur le compteur -# mercure -MercureNumRefModelDesc1=Renvoie le numéro de facture sous une forme numérique simple, la première facture porte le numéro 1, la quinzième facture ayant le numéro 15, le numéro est préfixé par la lettre F, ce module peut être utilisé avec dans le cas d'une numérotaion double. - # neptune NeptuneNumRefModelDesc1=Renvoie le numéro de facture sous une forme du préfix FA suivi de l'année sur 2 chiffres et d'un compteur simple sur 4 chiffres. NeptuneNumRefModelDesc2=Si la constante FACTURE_NEPTUNE_DELTA est définie, un offset est appliqué sur le compteur diff --git a/htdocs/langs/nl_NL/admin.lang b/htdocs/langs/nl_NL/admin.lang index 2bc3aef58de0e4d54481a4e0233fadc5292dc96a..c58a5f46be5496a03d3dd127ff96fd1b269d5250 100644 --- a/htdocs/langs/nl_NL/admin.lang +++ b/htdocs/langs/nl_NL/admin.lang @@ -217,7 +217,7 @@ SetupIsReadyForUse=Installatie is voltooid en Dolibarr is gereed voor gebruik me CurrentVersion=Dolibarr huidige versie CallUpdatePage=Ga naar de pagina die updates database structuur en data% s. LastStableVersion=Laatste stabiele versie -GenericMaskCodes=U kunt elke nummering masker. In dit masker, de volgende tags kunnen worden gebruikt: <br> <b>(000000)</b> komt overeen met een aantal dat zal worden verhoogd voor elk% s. Voer zoveel nullen als de gewenste lengte van de teller. De teller zal worden aangevuld met nullen van links om zoveel nullen als het masker. <br> <b>(000000 +000)</b> hetzelfde als de vorige, maar een compensatie overeenkomt met het aantal aan het recht van het + teken is toegepast, beginnend op eerste% s. <br> <b>(000000 @ x)</b> hetzelfde als de vorige, maar de teller op nul wanneer maand x is bereikt (x tussen 1 en 12). Als deze optie wordt gebruikt en x 2 of hoger, dan sequentie yy () () of (mm jjjj) () mm is ook nodig. <br> <b>dd ()</b> dag (01 tot 31). <br> <b>() mm</b> maand (01 tot 12). <br> <b>yy (), (jjjj)</b> of <b>(y)</b> jaar gedurende 2, 4 of 1 nummers. <br> <b>() cccc000</b> de client code op n tekens gevolgd door een klant ref teller zonder offset en zeroized breken de wereldwijde teller. <br><br> Alle andere tekens in het masker blijft intact. <br> Spaties zijn niet toegestaan. <br><br> <u>Voorbeeld op de 99e% s van de derde partij TheCompany gedaan 31/01/2007:</u> <br> <b>ABC yy () (MM) - (000.000)</b> geeft <b>ABC0701-000099</b> <br> <b>0000 +100 ()-ZZZ / dd () / XXX</b> zal <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Terugkeer een aanpasbare aantal volgens een omschreven masker. ServerAvailableOnIPOrPort=Server is beschikbaar op het <b>adres% s</b> op <b>poort% s</b> ServerNotAvailableOnIPOrPort=Server is niet beschikbaar op het <b>adres% s</b> op <b>poort% s</b> diff --git a/htdocs/langs/pl_PL/admin.lang b/htdocs/langs/pl_PL/admin.lang index b0f97a6908717d8fbceff54cbbc0e05aff4c3526..5297cc801e848347519a2def33cad4c5439e63e5 100644 --- a/htdocs/langs/pl_PL/admin.lang +++ b/htdocs/langs/pl_PL/admin.lang @@ -217,7 +217,7 @@ SetupIsReadyForUse=Instalacja jest zakończona i Dolibarr jest gotowy do użycia CurrentVersion=Dolibarr aktualnej wersji CallUpdatePage=Wejdź na stronę aktualizacji struktury bazy danych i danych% s. LastStableVersion=Ostatnia wersja stabilna -GenericMaskCodes=Można wprowadzić wszelkie maski numeracji. W tym maskę, następujących tagów może być wykorzystana: <br> <b>(000000)</b> odpowiada szereg które będą zwiększane w każdym% s. Wpisz tyle zer w żądanej długości licznik. Licznik zostanie uzupełniona zerami od lewej w celu uzyskania jak wiele zer jak maska. <br> <b>(000000 +000)</b> samo jak poprzednie, ale offset odpowiadającą liczbie z prawej znak + jest stosowana począwszy od pierwszego% s. <br> <b>(X) @ 000000</b> samo jak poprzednie, ale zostanie wyzerowany do zera, kiedy zostanie osiągnięte miesięcy x (x pomiędzy 1 i 12). Jeśli opcja ta jest używana i x 2 lub wyższej, a następnie sekwencję rr () () lub (mm rrrr mm) () jest wymagana. <br> <b>dd ()</b> dni (od 01 do 31). <br> <b>(mm)</b> miesiące (od 01 do 12). <br> <b>rr (), (RRRR)</b> lub <b>(y)</b> roku ponad 2, 4 lub 1 numerów. <br> <b>() cccc000</b> klient kod na n znaków, a następnie klienta ref licznik bez wyrównania i zeroized whith globalnej licznik. <br><br> Wszystkie inne znaki w masce pozostaną nienaruszone. <br> Spacje są niedozwolone. <br><br> <u>Przykład na 99-cie% s strony trzeciej TheCompany zrobić 31/01/2007:</u> <br> <b>ABC rr) ((MM) - () 000000</b> dadzą <b>ABC0701-000099</b> <br> <b>(0000 +100) ZZZ / dd () / XXX</b> będzie <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Zwrotu dostosowywalne numer zgodnie z definicją maska. ServerAvailableOnIPOrPort=Serwer dostępny jest pod <b>adresem% s</b> na <b>porcie% s</b> ServerNotAvailableOnIPOrPort=Serwer nie jest dostępna pod <b>adresem% s</b> na <b>porcie% s</b> diff --git a/htdocs/langs/pt_PT/admin.lang b/htdocs/langs/pt_PT/admin.lang index e86fa65b052bb8715721424eb8e8a3f96fa3899d..45539a4182f5a54326c8b141615e1d4dfc694243 100644 --- a/htdocs/langs/pt_PT/admin.lang +++ b/htdocs/langs/pt_PT/admin.lang @@ -342,7 +342,7 @@ SetupIsReadyForUse=Instale Dolibarr está acabada e está pronto para uso com es CurrentVersion=Dolibarr versão atual CallUpdatePage=Ir para a página que atualiza estrutura de dados e dados% s. LastStableVersion=Última versão estável -GenericMaskCodes=Você pode entrar em qualquer numeração máscara. Nesta máscara, as seguintes tags poderiam ser utilizados: <br> <b>(000000)</b> corresponde a um número que será incrementado a cada% s. Digite tantos zeros como o comprimento desejado do balcão. O contador será completado por zeros a partir da esquerda, a fim de ter tantos zeros como a máscara. <br> <b>000.000 (000)</b> mesmo que anterior mas uma compensação correspondente ao número à direita do sinal é aplicado a partir de primeiro% s. <br> <b>000000) (@ x</b> mesmo como os anteriores, mas o contador é reposto a zero, quando é atingido mês x (x entre 1 e 12). Se esta opção for utilizada e x é 2 ou superior, então seqüência (yy)) ou ((MM AAAA)) (milímetros é também necessária. <br> <b>(dd)</b> dia (01 a 31). <br> <b>(MM)</b> mês (01 a 12). <br> <b>yy (), (yyyy) (y)</b> anos ou mais de 2, 4 ou 1 números. <br> <b>() cccc000</b> código do cliente sobre n caracteres seguido por um cliente do contador ref sem compensação e zeroized Com o contador global. <br><br> Todos os outros caracteres na máscara permanecerá intacta. <br> Espaços não são permitidos. <br><br> <u>Exemplo, sobre o 99.% S do terceiro TheCompany feito 31/01/2007:</u> <br> <b>ABC (yy) (MM) - (000000)</b> dará <b>ABC0701-000099</b> <br> <b>0000 (100)-ZZZ / dd) (/ XXX</b> dará <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Retornar customizable um número definido de acordo com uma máscara. ServerAvailableOnIPOrPort=Server está disponível no <b>endereço% s</b> na <b>porta% s</b> ServerNotAvailableOnIPOrPort=Servidor não está disponível no <b>endereço% s</b> na <b>porta% s</b> diff --git a/htdocs/langs/ro_RO/admin.lang b/htdocs/langs/ro_RO/admin.lang index 81c082055ed5b8d82ab48e64bff69006215bc3aa..b6bb4c882f31e34e8966cf1e6110c90d53dc0d14 100644 --- a/htdocs/langs/ro_RO/admin.lang +++ b/htdocs/langs/ro_RO/admin.lang @@ -215,7 +215,7 @@ SetupIsReadyForUse=Instalarea este terminat şi Dolibarr este gata pentru a fi u CurrentVersion=Dolibarr versiunea curentă CallUpdatePage=Du-te la pagina care se actualizează datele şi structura bazei de date% s. LastStableVersion=Ultima versiune stabilă -GenericMaskCodes=Puteţi introduce orice numerotare masca. În acest masca, următoarele tag-uri ar putea fi folosite: <br> <b>(000000)</b> corespunde un număr care va fi pe fiecare incremented% s. Introduceţi oricât de multe zerouri ca lungimea dorită din contra. În contra va fi completat de zero-uri de la stânga pentru a avea cât mai multe zero-uri ca masca. <br> <b>000000 (000)</b> fel ca precedenta, dar un offset corespunzător numărului de la dreptul de a semnul +, se aplică, începând cu prima% s. <br> <b>(000000 @ x)</b> aceeaşi ca şi precedent, dar contra este readus la zero, atunci când se ajunge la luna x (x intre 1 si 12). Dacă această opţiune este folosită şi x este de 2 sau mai mare, apoi secventa (aa) (mm) sau (AAAA) (mm) este, de asemenea, necesară. <br> <b>() zz</b> zi (01 - 31). <br> <b>(mm)</b> luni (01 la 12). <br> <b>(aa), (AAAA)</b> sau <b>(Y)</b> ani mai mult de 2, 4 sau 1 numere. <br> <b>() cccc000</b> cod de client pe n caractere urmat de un client, fără a compensa ref contra şi zeroized whith global contra. <br><br> Toate celelalte caractere în masca va rămâne intactă. <br> Spaţiile nu sunt permise. <br><br> <u>Exemplu pe 99th% s de-a treia parte TheCompany făcut 31/01/2007:</u> <br> <b>ABC (aa) (mm) - (000000)</b> va da <b>ABC0701-000099</b> <br> <b>(0000) 100-zzz / () zz / XXX</b> va da <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Întoarceţi-vă un număr de personalizabil definite în conformitate cu o masca. ServerAvailableOnIPOrPort=Server este disponibil la <b>adresa% s</b> pe <b>portul% s</b> ServerNotAvailableOnIPOrPort=Serverul nu este disponibil la <b>adresa% s</b> pe <b>portul% s</b> diff --git a/htdocs/langs/ru_RU/admin.lang b/htdocs/langs/ru_RU/admin.lang index 0a85ad5e6c61c5aa40fcea00ed6a10d4c4b7402d..f0ce12b443f79ca02598aebf3b8251b58a19dc7f 100644 --- a/htdocs/langs/ru_RU/admin.lang +++ b/htdocs/langs/ru_RU/admin.lang @@ -215,7 +215,7 @@ SetupIsReadyForUse=Установка закончена, и Dolibarr готов CurrentVersion=Dolibarr текущей версии CallUpdatePage=Зайдите на страницу, которая обновления структуры базы данных и данных% s. LastStableVersion=Последняя стабильная версия -GenericMaskCodes=Вы можете войти в любой нумерации маска. В этой маске, следующие теги можно использовать: <br> <b>(000000)</b> соответствует число, которое будет увеличивается на каждом% s. Введите столько нулей в качестве желаемой длины счетчика. Счетчик будет завершена к нулями слева, с тем чтобы иметь столько нулей, как маска. <br> <b>000000 (000)</b> же, как и предыдущий, но компенсировать соответствующий номер Право + знак применяется начиная с первого% s. <br> <b>(000000 @ X)</b> же, как и предыдущий, но счетчик сбрасывается до нуля, когда в месяц х достигнуто (X в период с 1 по 12). Если эта опция используется и Х 2 или выше, то последовательность (ГГ) () или мм гггг () () мм Также требуется. <br> <b>() дд</b> сутки (от 01 до 31). <br> <b>() мм</b> в месяц (от 01 до 12). <br> <b>YY (), ()</b> или <b>гггг (Y)</b> в год в течение 2, 4 или 1 числа. <br> <b>() cccc000</b> код клиента по N символов, после чего клиент исх борьбы без смещения и zeroized whith Глобальной контртеррористической стратегии. <br><br> Все другие символы в маске останутся нетронутыми. <br> Пространства, не допускается. <br><br> <u>Пример на 99-й% х сторонних TheCompany сделали 31/01/2007:</u> <br> <b>ABC YY () (мм) - () 000000</b> даст <b>ABC0701-000099</b> <br> <b>(100) 0000-ZZZ / (ДД) / XXX</b> даст <b>0199-ZZZ/31/XXX</b> <br> +GenericMaskCodes= GenericNumRefModelDesc=Возврат количества настраиваемых в соответствии с определенной маской. ServerAvailableOnIPOrPort=Сервер доступен по <b>адресу% S порт% S</b> ServerNotAvailableOnIPOrPort=Сервер не доступен по <b>адресу% S порт% S</b> diff --git a/htdocs/lib/functions2.lib.php b/htdocs/lib/functions2.lib.php index 73a896d9577ccd38222e05d3d61b67c71c6b73c7..a35ea9a608626b41b476fac370720ccbe4878e96 100644 --- a/htdocs/lib/functions2.lib.php +++ b/htdocs/lib/functions2.lib.php @@ -63,13 +63,13 @@ function array2table($data,$tableMarkup=1,$tableoptions='',$troptions='',$tdopti /** * Return next value for a mask * - * @param unknown_type $db - * @param $mask - * @param unknown_type $table - * @param unknown_type $field - * @param unknown_type $where To add a filter on selection (for exemple to filter for invoice types) - * @param unknown_type $valueforccc - * @param unknown_type $date + * @param unknown_type $db Database handler + * @param $mask Mask to use + * @param unknown_type $table Table containing field with counter + * @param unknown_type $field Field containing already used values of counter + * @param unknown_type $where To add a filter on selection (for exemple to filter on invoice types) + * @param unknown_type $valueforccc + * @param unknown_type $date * @return string New value */ function get_next_value($db,$mask,$table,$field,$where='',$valueforccc='',$date='') @@ -268,6 +268,102 @@ function get_next_value($db,$mask,$table,$field,$where='',$valueforccc='',$date= } +/** + * Check value + * + * @param unknown_type $db Database handler + * @param $mask Mask to use + * @param unknown_type $table Table containing field with counter + * @param unknown_type $field Field containing already used values of counter + * @param unknown_type $where To add a filter on selection (for exemple to filter on invoice types) + * @param unknown_type $valueforccc + * @param unknown_type $date + * @return int <0 if KO, 0 if OK + */ +function check_value($mask,$value) +{ + $result=0; + + // Extract value for mask counter, mask raz and mask offset + if (! eregi('\{(0+)([@\+][0-9]+)?([@\+][0-9]+)?\}',$mask,$reg)) return 'ErrorBadMask'; + $masktri=$reg[1].$reg[2].$reg[3]; + $maskcounter=$reg[1]; + $maskraz=-1; + $maskoffset=0; + if (strlen($maskcounter) < 3) return 'CounterMustHaveMoreThan3Digits'; + + // Extract value for third party mask counter + if (eregi('\{(c+)(0*)\}',$mask,$regClientRef)) + { + $maskrefclient=$regClientRef[1].$regClientRef[2]; + $maskrefclient_maskclientcode=$regClientRef[1]; + $maskrefclient_maskcounter=$regClientRef[2]; + $maskrefclient_maskoffset=0; //default value of maskrefclient_counter offset + $maskrefclient_clientcode=substr($valueforccc,0,strlen($maskrefclient_maskclientcode));//get n first characters of client code to form maskrefclient_clientcode + $maskrefclient_clientcode=str_pad($maskrefclient_clientcode,strlen($maskrefclient_maskclientcode),"#",STR_PAD_RIGHT);//padding maskrefclient_clientcode for having exactly n characters in maskrefclient_clientcode + $maskrefclient_clientcode=dol_string_nospecial($maskrefclient_clientcode);//sanitize maskrefclient_clientcode for sql insert and sql select like + if (strlen($maskrefclient_maskcounter) > 0 && strlen($maskrefclient_maskcounter) < 3) return 'CounterMustHaveMoreThan3Digits'; + } + else $maskrefclient=''; + + $maskwithonlyymcode=$mask; + $maskwithonlyymcode=eregi_replace('\{(0+)([@\+][0-9]+)?([@\+][0-9]+)?\}',$maskcounter,$maskwithonlyymcode); + $maskwithonlyymcode=eregi_replace('\{dd\}','dd',$maskwithonlyymcode); + $maskwithonlyymcode=eregi_replace('\{(c+)(0*)\}',$maskrefclient,$maskwithonlyymcode); + $maskwithnocode=$maskwithonlyymcode; + $maskwithnocode=eregi_replace('\{yyyy\}','yyyy',$maskwithnocode); + $maskwithnocode=eregi_replace('\{yy\}','yy',$maskwithnocode); + $maskwithnocode=eregi_replace('\{y\}','y',$maskwithnocode); + $maskwithnocode=eregi_replace('\{mm\}','mm',$maskwithnocode); + // Now maskwithnocode = 0000ddmmyyyyccc for example + // and maskcounter = 0000 for example + //print "maskwithonlyymcode=".$maskwithonlyymcode." maskwithnocode=".$maskwithnocode."\n<br>"; + + // If an offset is asked + if (! empty($reg[2]) && eregi('^\+',$reg[2])) $maskoffset=eregi_replace('^\+','',$reg[2]); + if (! empty($reg[3]) && eregi('^\+',$reg[3])) $maskoffset=eregi_replace('^\+','',$reg[3]); + + // Define $sqlwhere + + // If a restore to zero after a month is asked we check if there is already a value for this year. + if (! empty($reg[2]) && eregi('^@',$reg[2])) $maskraz=eregi_replace('^@','',$reg[2]); + if (! empty($reg[3]) && eregi('^@',$reg[3])) $maskraz=eregi_replace('^@','',$reg[3]); + if ($maskraz >= 0) + { + if ($maskraz > 12) return 'ErrorBadMaskBadRazMonth'; + + // Define reg + if ($maskraz > 1 && ! eregi('^(.*)\{(y+)\}\{(m+)\}',$maskwithonlyymcode,$reg)) return 'ErrorCantUseRazInStartedYearIfNoYearMonthInMask'; + if ($maskraz <= 1 && ! eregi('^(.*)\{(y+)\}',$maskwithonlyymcode,$reg)) return 'ErrorCantUseRazIfNoYearInMask'; + //print "x".$maskwithonlyymcode." ".$maskraz; + } + //print "masktri=".$masktri." maskcounter=".$maskcounter." maskraz=".$maskraz." maskoffset=".$maskoffset."<br>\n"; + + // Check we have a number in ($posnumstart+1).', '.strlen($maskcounter) + // + + // Check length + $len=strlen($maskwithnocode); + if (strlen($value) != $len) $result=-1; + + // Define $maskLike + $maskLike = dol_string_nospecial($mask); + $maskLike = str_replace("%","_",$maskLike); + // Replace protected special codes with matching number of _ as wild card caracter + $maskLike = str_replace(dol_string_nospecial('{yyyy}'),'____',$maskLike); + $maskLike = str_replace(dol_string_nospecial('{yy}'),'__',$maskLike); + $maskLike = str_replace(dol_string_nospecial('{y}'),'_',$maskLike); + $maskLike = str_replace(dol_string_nospecial('{mm}'),'__',$maskLike); + $maskLike = str_replace(dol_string_nospecial('{dd}'),'__',$maskLike); + $maskLike = str_replace(dol_string_nospecial('{'.$masktri.'}'),str_pad("",strlen($maskcounter),"_"),$maskLike); + if ($maskrefclient) $maskLike = str_replace(dol_string_nospecial('{'.$maskrefclient.'}'),str_pad("",strlen($maskrefclient),"_"),$maskLike); + + + dolibarr_syslog("functions2::check_value result=".$result,LOG_DEBUG); + return $result; +} + + /** * \brief Convert a binary data to string that represent hexadecimal value * \param bin Value to convert diff --git a/htdocs/lib/lib_foot.js b/htdocs/lib/lib_foot.js index 5ce21a2c0517ada28ef1eb7d25d58550837f7f22..2e5a07588ee96ec9c817c7caf8dde16d40acd2ba 100644 --- a/htdocs/lib/lib_foot.js +++ b/htdocs/lib/lib_foot.js @@ -14,7 +14,7 @@ ***********************************************/ var offsetxpoint=-60 //Customize x offset of tooltip -var offsetypoint=20 //Customize y offset of tooltip +var offsetypoint=18 //Customize y offset of tooltip var ie=document.all var ns6=document.getElementById && !document.all var enabletip=false @@ -47,7 +47,8 @@ function positiontip(e) var bottomedge=ie&&!window.opera? ietruebody().clientHeight-event.clientY-offsetypoint : window.innerHeight-e.clientY-offsetypoint-20 var leftedge=(offsetxpoint<0)? offsetxpoint*(-1) : -1000 - + //alert('curX='+curX+' curY='+curY+' rightedge='+rightedge+' bottomedge='+bottomedge+' leftedge='+leftedge+' tipobj.offsetHeight='+tipobj.offsetHeight); + //if the horizontal distance isn't enough to accomodate the width of the context menu if (rightedge<tipobj.offsetWidth) //move the horizontal position of the menu to the left by it's width diff --git a/htdocs/soc.php b/htdocs/soc.php index 0f305454db285c7cabba492f18ee762c7d043010..ed7fc88e2ee88ca2e773cbb4090051e9affd88cd 100644 --- a/htdocs/soc.php +++ b/htdocs/soc.php @@ -131,29 +131,13 @@ if ((! $_POST["getcustomercode"] && ! $_POST["getsuppliercode"]) if (! $error) { - // On v�rifie si un tiers devient client ou fournisseur pour l'obtention d'un code automatiqe - if ($soc->client && $soc->code_client == -1) - { - $soc->code_client = -1; - } - else if ($_POST['code_auto']) - { - $soc->code_client = ''; - } - - if ($soc->fournisseur && $soc->code_fournisseur == -1) - { - $soc->code_fournisseur = -1; - } - else if ($_POST['code_auto']) - { - $soc->code_fournisseur = ''; - } - if ($_POST["action"] == 'add') { $db->begin(); + if (empty($soc->client)) $soc->code_client=''; + if (empty($soc->fournisseur)) $soc->code_fournisseur=''; + $result = $soc->create($user); if ($result >= 0) { @@ -223,6 +207,10 @@ if ((! $_POST["getcustomercode"] && ! $_POST["getsuppliercode"]) $oldsoc=new Societe($db); $result=$oldsoc->fetch($socid); + // To not set code if third party is not concerned. But if it had values, we keep them. + if (empty($soc->client) && empty($oldsoc->code_client)) $soc->code_client=''; + if (empty($soc->fournisseur)&& empty($oldsoc->code_fournisseur)) $soc->code_fournisseur=''; + $result = $soc->update($socid,$user,1,$oldsoc->codeclient_modifiable(),$oldsoc->codefournisseur_modifiable()); if ($result >= 0) { @@ -408,15 +396,9 @@ $_GET["action"] == 'create' || $_POST["action"] == 'create') print '<td width="25%">'.$langs->trans('CustomerCode').'</td><td width="25%">'; print '<table class="nobordernopadding"><tr><td>'; - if ($modCodeClient->code_auto) - { - print '<input type="hidden" name="code_client" value="-1">'; - print $langs->trans('AutomaticallyGenerated').' '; - } - else - { - print '<input type="text" name="code_client" size="16" value="'.$soc->code_client.'" maxlength="15">'; - } + $tmpcode=$soc->code_client; + if ($modCodeClient->code_auto) $tmpcode=$modCodeClient->getNextValue($soc,0); + print '<input type="text" name="code_client" size="16" value="'.$tmpcode.'" maxlength="15">'; print '</td><td>'; $s=$modCodeClient->getToolTip($langs,$soc,0); print $form->textwithhelp('',$s,1); @@ -431,15 +413,9 @@ $_GET["action"] == 'create' || $_POST["action"] == 'create') print '</td>'; print '<td>'.$langs->trans('SupplierCode').'</td><td>'; print '<table class="nobordernopadding"><tr><td>'; - if ($modCodeFournisseur->code_auto) - { - print '<input type="hidden" name="code_fournisseur" value="-1">'; - print $langs->trans('AutomaticallyGenerated').' '; - } - else - { - print '<input type="text" name="code_fournisseur" size="16" value="'.$soc->code_fournisseur.'" maxlength="15">'; - } + $tmpcode=$soc->code_fournisseur; + if ($modCodeFournisseur->code_auto) $tmpcode=$modCodeFournisseur->getNextValue($soc,1); + print '<input type="text" name="code_fournisseur" size="16" value="'.$tmpcode.'" maxlength="15">'; print '</td><td>'; $s=$modCodeFournisseur->getToolTip($langs,$soc,1); print $form->textwithhelp('',$s,1); @@ -752,8 +728,9 @@ elseif ($_GET["action"] == 'edit' || $_POST["action"] == 'edit') print '<table class="nobordernopadding"><tr><td>'; if ((!$soc->code_client || $soc->code_client == -1) && $modCodeClient->code_auto) { - print '<input type="hidden" name="code_client" value="-1">'; - print $langs->trans('AutomaticallyGenerated').' '; + $tmpcode=$soc->code_client; + if (empty($tmpcode) && $modCodeClient->code_auto) $tmpcode=$modCodeClient->getNextValue($soc,0); + print '<input type="text" name="code_client" size="16" value="'.$tmpcode.'" maxlength="15">'; } else if ($soc->codeclient_modifiable()) { @@ -781,8 +758,9 @@ elseif ($_GET["action"] == 'edit' || $_POST["action"] == 'edit') print '<table class="nobordernopadding"><tr><td>'; if ((!$soc->code_fournisseur || $soc->code_fournisseur == -1) && $modCodeFournisseur->code_auto) { - print '<input type="hidden" name="code_fournisseur" value="-1">'; - print $langs->trans('AutomaticallyGenerated').' '; + $tmpcode=$soc->code_fournisseur; + if (empty($tmpcode) && $modCodeFournisseur->code_auto) $tmpcode=$modCodeFournisseur->getNextValue($soc,1); + print '<input type="text" name="code_fournisseur" size="16" value="'.$tmpcode.'" maxlength="15">'; } else if ($soc->codefournisseur_modifiable()) { diff --git a/htdocs/societe.class.php b/htdocs/societe.class.php index dbd5932e3019d1908c4dd3fc727368abcfad2e9a..ec38c660cd22303dec812c1a6f2ecc5457e5c932 100644 --- a/htdocs/societe.class.php +++ b/htdocs/societe.class.php @@ -82,9 +82,9 @@ class Societe extends CommonObject var $mode_reglement; var $cond_reglement; - var $client; - var $prospect; - var $fournisseur; + var $client; // 0=no customer, 1=customer, 2=prospect + var $prospect; // 0=no prospect, 1=prospect + var $fournisseur; // =0no supplier, 1=supplier var $prefixCustomerIsRequired; var $prefixSupplierIsRequired; @@ -145,8 +145,8 @@ class Societe extends CommonObject $this->db->begin(); - // Pour code automatique - if ($this->code_client == -1) $this->get_codeclient($this->prefix_comm,0); + // For automatic creation during create action (not used by Dolibarr) + if ($this->code_client == -1) $this->get_codeclient($this->prefix_comm,0); if ($this->code_fournisseur == -1) $this->get_codefournisseur($this->prefix_comm,1); $result = $this->verify(); @@ -154,7 +154,7 @@ class Societe extends CommonObject if ($result >= 0) { $sql = "INSERT INTO ".MAIN_DB_PREFIX."societe (nom, datec, datea, fk_user_creat)"; - $sql.= " VALUES ('".addslashes($this->nom)."', ".$this->db->idate(mktime()).", ".$this->db->idate(mktime()).","; + $sql.= " VALUES ('".addslashes($this->nom)."', ".$this->db->idate(gmmktime()).", ".$this->db->idate(gmmktime()).","; $sql.= " ".($user->id > 0 ? "'".$user->id."'":"null"); $sql.= ")"; @@ -348,7 +348,7 @@ class Societe extends CommonObject //Gencod $this->gencod=trim($this->gencod); - // Pour code client/fournisseur automatique + // For automatic creation (not used by Dolibarr) if ($this->code_client == -1) $this->get_codeclient($this->prefix_comm,0); if ($this->code_fournisseur == -1) $this->get_codefournisseur($this->prefix_comm,1); @@ -401,8 +401,7 @@ class Societe extends CommonObject if ($allowmodcodeclient) { - // Attention check_codeclient peut modifier le code suivant le module utilise - $this->check_codeclient(); + //$this->check_codeclient(); $sql .= ", code_client = ".($this->code_client?"'".addslashes($this->code_client)."'":"null"); @@ -414,8 +413,7 @@ class Societe extends CommonObject if ($allowmodcodefournisseur) { - // Attention check_codefournisseur peut modifier le code suivant le module utilise - $this->check_codefournisseur(); + //$this->check_codefournisseur(); $sql .= ", code_fournisseur = ".($this->code_fournisseur?"'".addslashes($this->code_fournisseur)."'":"null"); @@ -1516,7 +1514,7 @@ class Societe extends CommonObject /** * \brief Verifie code client - * \return int <0 si KO, 0 si OK, peut modifier le code client suivant le module utilis� + * \return int <0 si KO, 0 si OK, peut modifier le code client suivant le module utilise */ function check_codeclient() { @@ -1541,7 +1539,7 @@ class Societe extends CommonObject /** * \brief Verifie code fournisseur - * \return int <0 si KO, 0 si OK, peut modifier le code client suivant le module utilis� + * \return int <0 si KO, 0 si OK, peut modifier le code client suivant le module utilise */ function check_codefournisseur() { diff --git a/htdocs/theme/auguria/auguria.css.php b/htdocs/theme/auguria/auguria.css.php index e672361255b4274b7871e3b06ccfb5b9bd9dbcd0..e4ee52a2d7348f6d17e8dc563f489ccd4687e17c 100644 --- a/htdocs/theme/auguria/auguria.css.php +++ b/htdocs/theme/auguria/auguria.css.php @@ -377,7 +377,7 @@ div.blockvmenupair border-spacing: 0px; padding: 0px; width: 166px; - border : 0px solid #68ACCF; + border : 0px solid #68ACCF; } div.blockvmenuimpair { @@ -385,7 +385,7 @@ div.blockvmenuimpair border-spacing: 0px; padding: 0px; width: 166px; - border : 0px solid #68ACCF; + border : 0px solid #68ACCF; } @@ -442,7 +442,7 @@ div.menu_contenu { div.menu_fin { background: url(<?php echo $dolibarr_main_url_root.'/theme/auguria/img/bg-bas-rubrique.png' ?>); margin: 0px; - padding: 0px; + padding: 0px; height:6px; width:165px; background-repeat:no-repeat; @@ -850,7 +850,7 @@ border: 0px; table.box { margin: 2px; } - + tr.box_titre { background: #68ACCF; color: #FFFFFF; @@ -1090,7 +1090,7 @@ div.menuFleche #dhtmltooltip { position: absolute; -width: 420px; +width: 450px; border: 1px solid #444444; padding: 2px; background-color: #FFFFE0; @@ -1128,7 +1128,7 @@ table.dp { text-align:center; background-color:#617389;color:#FFFFFF; font-weight:bold; border: 1px outset black; - cursor:pointer; + cursor:pointer; } .dpButtons:Active,.tpButtons:Active{border: 1px outset black;} .dpDayNames td,.dpExplanation {background-color:#D9DBE1; font-weight:bold; text-align:center; font-size:11px;} @@ -1149,7 +1149,7 @@ table.dp { .tpMinute {margin-top:5px;} .tpMinute td:Hover {background-color:black; color:white; } .tpMinute td {background-color:#D9DBE1; text-align:center; cursor:pointer;} - + .dpInvisibleButtons { border-style:none; diff --git a/htdocs/theme/bluelagoon/bluelagoon.css b/htdocs/theme/bluelagoon/bluelagoon.css index 4c33a9f14f113bcb387d9d82499ff939ce756ebc..42691024cb1a5e3fb38dff9169746ae010cebb0b 100644 --- a/htdocs/theme/bluelagoon/bluelagoon.css +++ b/htdocs/theme/bluelagoon/bluelagoon.css @@ -657,7 +657,7 @@ tr.nonpayed { #dhtmltooltip { position: absolute; -width: 420px; +width: 450px; border: 1px solid #444444; padding: 2px; background-color: #FFFFE0; diff --git a/htdocs/theme/dev/dev.css b/htdocs/theme/dev/dev.css index 230ebafc7d9b54dca23f24e6d74fd5746947ddbe..6a909d43fb6ecf5cf461b9751b91a30f265eb1e7 100644 --- a/htdocs/theme/dev/dev.css +++ b/htdocs/theme/dev/dev.css @@ -843,7 +843,7 @@ tr.nonpayed { #dhtmltooltip { position: absolute; -width: 420px; +width: 450px; border: 1px solid #444444; padding: 2px; background-color: lightyellow; diff --git a/htdocs/theme/eldy/eldy.css.php b/htdocs/theme/eldy/eldy.css.php index 19b7aa9dc4d9c81cd5292b7e068004b1355bcc2d..71b931d93e550aeb9327eb5c2c9635aadd9b2424 100644 --- a/htdocs/theme/eldy/eldy.css.php +++ b/htdocs/theme/eldy/eldy.css.php @@ -220,7 +220,7 @@ a.tmenu:link color: #234046; padding: 0px 5px 0px 5px; margin: 0px 1px 2px 1px; - font-size: 12px; + font-size: 12px; font-family: helvetica, verdana, arial, sans-serif; font-weight: normal; } @@ -230,7 +230,7 @@ a.tmenu:visited padding: 0px 5px 0px 5px; margin: 0px 1px 2px 1px; border: 0px solid #b3c5cc; - font-size: 12px; + font-size: 12px; font-family: helvetica, verdana, arial, sans-serif; font-weight: normal; } @@ -303,7 +303,7 @@ div.tmenu ul { padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; list-style: none; - + } div.tmenu li { float: left; @@ -777,7 +777,7 @@ padding-bottom: 4px; margin: 0px 0px; } - + table.border { border: 1px solid #9CACBB; border-collapse: collapse; @@ -907,7 +907,7 @@ tr.box_titre { background: #7699A9; background-image: url(<?php echo $dolibarr_main_url_root.'/theme/eldy/img/liste_titre.png' ?>); color: #334444; -font-size: 12px; +font-size: 12px; font-family: arial, helvetica, verdana, sans-serif; font-weight: bold; border-bottom: 1px solid #FDFFFF; @@ -918,13 +918,13 @@ white-space: nowrap; tr.box_impair { background: #e6ebed; -font-size: 12px; +font-size: 12px; font-family: arial, helvetica, verdana, sans-serif; } tr.box_pair { background: #d0d4d7; -font-size: 12px; +font-size: 12px; font-family: arial, helvetica, verdana, sans-serif; } @@ -1044,7 +1044,7 @@ padding: 2px; #dhtmltooltip { position: absolute; -width: 420px; +width: 450px; border-top: solid 1px #BBBBBB; border-left: solid 1px #BBBBBB; border-right: solid 1px #444444; @@ -1252,7 +1252,7 @@ div.autocomplete ul li { cursor:pointer; } - + /* ============================================================================== */ /* Ajax - In place editor */ /* ============================================================================== */ @@ -1288,7 +1288,7 @@ form.inplaceeditor-form a { /* The cancel link */ } - + /* ============================================================================== */ /* Admin Menu */ /* ============================================================================== */ diff --git a/htdocs/theme/freelug/freelug.css.php b/htdocs/theme/freelug/freelug.css.php index 2e4ec07eb48110f5fc91e1408a35c9fbdf93e966..cddea1de27414329f14de9364d578acd28ab7c5f 100644 --- a/htdocs/theme/freelug/freelug.css.php +++ b/htdocs/theme/freelug/freelug.css.php @@ -1,6 +1,6 @@ <?php -/* Copyright (C) 2002 Rodolphe Quiedeville <rodolphe@quiedeville.org> - * Copyright (C) 2004-2008 Laurent Destailleur <eldy@users.sourceforge.net> +/* Copyright (C) 2002 Rodolphe Quiedeville <rodolphe@quiedeville.org> + * Copyright (C) 2004-2008 Laurent Destailleur <eldy@users.sourceforge.net> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -58,18 +58,18 @@ a:visited { font-family: helvetica, verdana, arial, sans-serif; font-weight: bol a:active { font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; color: #000000; text-decoration: none; } a:hover { font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; color: #000000; text-decoration: underline; } input -{ +{ font-size: 12px; - font-family: helvetica, verdana, arial, sans-serif; + font-family: helvetica, verdana, arial, sans-serif; background: #FFFFFF; border: 1px solid #8C9C9B; padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; } input.flat -{ +{ font-size: 12px; - font-family: helvetica, verdana, arial, sans-serif; + font-family: helvetica, verdana, arial, sans-serif; background: #FFFFFF; border: 1px solid #8C9C9B; padding: 0px 0px 0px 0px; @@ -105,7 +105,7 @@ select.flat font-size: 11px; font-family: arial,verdana,heletica, sans-serif; padding: 0px 2px 0px 2px; - margin: 0px 0px 0px 0px; + margin: 0px 0px 0px 0px; border-left: 1px solid #cccccc; border-right: 1px solid #aaaaaa; border-top: 1px solid #dddddd; @@ -118,7 +118,7 @@ select.flat font-size: 11px; font-family: arial,verdana,heletica, sans-serif; padding: 0px 2px 0px 2px; - margin: 0px 0px 0px 0px; + margin: 0px 0px 0px 0px; border-left: 1px solid #cccccc; border-right: 1px solid #aaaaaa; border-top: 1px solid #dddddd; @@ -169,8 +169,8 @@ div.tmenu font-weight: bold; font-size: 12px; height: 20px; - background: #dddddd; - color: #000000; + background: #dddddd; + color: #000000; text-decoration: none; } @@ -209,11 +209,11 @@ table.tmenu margin: 0px 0px 0px 6px; } -.menu -{ - background: #ccccb3; +.menu +{ + background: #ccccb3; font-size: 12px; - color: #000000; + color: #000000; text-decoration: none; } @@ -247,7 +247,7 @@ a.tmenu:hover } a.tmenusel -{ +{ color: #202020; background: #bbbbcc; padding: 0px 8px; @@ -265,7 +265,7 @@ div.tmenu ul { padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; list-style: none; - + } div.tmenu li { float: left; @@ -311,7 +311,7 @@ div.tmenu li a:active } div.tmenu li a:link { - + font-weight: normal; } @@ -372,12 +372,12 @@ a.help:active { font-family: helvetica, verdana, arial, sans-serif; text-align: a.help:hover { font-family: helvetica, verdana, arial, sans-serif; text-align:left; font-weight: normal; } div.blockvmenupair -{ +{ border-right: 1px solid #555555; border-bottom: 1px solid #555555; background: #dddddd; font-family: helvetica, verdana, arial, sans-serif; - color: #202020; + color: #202020; text-align:left; text-decoration: none; padding: 3px; @@ -390,7 +390,7 @@ div.blockvmenuimpair border-bottom: 1px solid #555555; background: #dddddd; font-family: helvetica, verdana, arial, sans-serif; - color: #202020; + color: #202020; text-align:left; text-decoration: none; padding: 3px; @@ -410,24 +410,24 @@ div.help margin: 1px 0px 0px 0px; } -td.barre { +td.barre { border-right: 1px solid #000000; border-bottom: 1px solid #000000; background: #DDDDDD; font-size: 12px; - font-family: helvetica, verdana; - color: #000000; + font-family: helvetica, verdana; + color: #000000; text-align:left; text-decoration: none } td.barre_select { - background: #b3cccc; - color: #000000 + background: #b3cccc; + color: #000000 } td.photo { - background: #FCFCFC; + background: #FCFCFC; color: #000000; border: 1px solid #b3c5cc; } @@ -521,39 +521,39 @@ a.butAction:hover { font-family: helvetica, verdana, arial, sans-serif; backgr .butActionRefused { font-family: helvetica, verdana, arial, sans-serif; background: white; border: 1px solid #AAAAAA; color: #AAAAAA !important; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none !important; white-space: nowrap; cursor: not-allowed; } a.butActionDelete:link { font-family: helvetica, verdana, arial, sans-serif; - background: white; - border: 1px solid #997777; - color: #436976; - padding: 0em 0.7em; - margin: 0em 0.5em; - text-decoration: none; + background: white; + border: 1px solid #997777; + color: #436976; + padding: 0em 0.7em; + margin: 0em 0.5em; + text-decoration: none; white-space: nowrap; } a.butActionDelete:active { font-family: helvetica, verdana, arial, sans-serif; - background: white; - border: 1px solid #997777; - color: #436976; - padding: 0em 0.7em; - margin: 0em 0.5em; - text-decoration: none; + background: white; + border: 1px solid #997777; + color: #436976; + padding: 0em 0.7em; + margin: 0em 0.5em; + text-decoration: none; white-space: nowrap; } a.butActionDelete:visited { font-family: helvetica, verdana, arial, sans-serif; - background: white; - border: 1px solid #997777; - color: #436976; - padding: 0em 0.7em; - margin: 0em 0.5em; - text-decoration: none; + background: white; + border: 1px solid #997777; + color: #436976; + padding: 0em 0.7em; + margin: 0em 0.5em; + text-decoration: none; white-space: nowrap; } a.butActionDelete:hover { font-family: helvetica, verdana, arial, sans-serif; - background: #FFe7ec; - border: 1px solid #997777; - color: #436976; - padding: 0em 0.7em; - margin: 0em 0.5em; - text-decoration: none; + background: #FFe7ec; + border: 1px solid #997777; + color: #436976; + padding: 0em 0.7em; + margin: 0em 0.5em; + text-decoration: none; white-space: nowrap; } @@ -623,14 +623,14 @@ width: 100%; /* * Tableaux - */ + */ -td.border { +td.border { border-top: 1px solid #000000; border-right: 1px solid #000000; border-bottom: 1px solid #000000; @@ -654,7 +654,7 @@ div.warning { } div.error { - color: #550000; font-weight: bold; + color: #550000; font-weight: bold; padding: 0.2em 0.2em 0.2em 0.2em; margin: 0.5em 0em 0.5em 0em; border: 1px solid #969090; @@ -692,22 +692,22 @@ a.impayee:hover { font-weight: bold; color: #550000; } div.titre { font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; - color: #777799; + color: #777799; text-decoration: none } /* * Widgets standard - */ -input.liste_titre { + */ +input.liste_titre { background: #777799; border: 0px; } -tr.liste_titre { +tr.liste_titre { color: #FFFFFF; - background: #777799; + background: #777799; font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; border-left: 1px solid #FFFFFF; @@ -717,9 +717,9 @@ tr.liste_titre { white-space: nowrap; } -td.liste_titre { +td.liste_titre { color: #FFFFFF; - background: #777799; + background: #777799; font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; border-top: 1px solid #FFFFFF; @@ -728,9 +728,9 @@ td.liste_titre { } .liste_titre_sel -{ +{ color: #DCCCBB; - background: #777799; + background: #777799; font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; border-top: 1px solid #FFFFFF; @@ -745,9 +745,9 @@ tr.liste_total td { border-top: 1px solid #888888; } -th { +th { color: #FFFFFF; - background: #777799; + background: #777799; font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; border-left: 1px solid #FFFFFF; @@ -759,40 +759,40 @@ th { } -.pair { - background: #dcdcd0; - font-size: 12px; +.pair { + background: #dcdcd0; + font-size: 12px; } -.impair { - background: #eeeedd; - font-size: 12px; +.impair { + background: #eeeedd; + font-size: 12px; } /* * Boxes */ -tr.box_titre { +tr.box_titre { color: #FFFFFF; background: #777799; font-family: Helvetica, Verdana; font-size: 1.0em; font-weight: bold; } -tr.box_pair { - background: #dcdcd0; +tr.box_pair { + background: #dcdcd0; font-size: 0.95em; } -tr.box_impair { - background: #eeeedd; +tr.box_impair { + background: #eeeedd; font-family: Helvetica, Verdana; font-size: 0.95em; } -tr.fiche { +tr.fiche { font-family: Helvetica, Verdana; font-size: 0.6em; } -td.delete { +td.delete { background: red; font-weight: bold; } @@ -850,7 +850,7 @@ padding: 2px; #dhtmltooltip { position: absolute; -width: 420px; +width: 450px; border-top: solid 1px #BBBBBB; border-left: solid 1px #BBBBBB; border-right: solid 1px #444444; @@ -881,7 +881,7 @@ table.dp { } .dp td, .tpHour td, .tpMinute td{padding:2px; font-size:10px;} /* Barre titre */ -.dpHead,.tpHead,.tpHour td:Hover .tpHead{ +.dpHead,.tpHead,.tpHour td:Hover .tpHead{ font-weight:bold; background-color:#777799; color:white; diff --git a/htdocs/theme/rodolphe/rodolphe.css b/htdocs/theme/rodolphe/rodolphe.css index 2acc8013f433cd77ccdce881d76e5e3ab331bed4..17a733b9effeb72885ad7f82dced0c9b0e94ba4b 100644 --- a/htdocs/theme/rodolphe/rodolphe.css +++ b/htdocs/theme/rodolphe/rodolphe.css @@ -731,7 +731,7 @@ tr.nonpayed { #dhtmltooltip { position: absolute; -width: 420px; +width: 450px; border: 1px solid #444444; padding: 2px; background-color: lightyellow; diff --git a/htdocs/theme/yellow/yellow.css.php b/htdocs/theme/yellow/yellow.css.php index ea82549780dcdc0488ed975fad89dd9a57e9f402..7687fb0068b19cf049db672628d9a51343b10d4b 100644 --- a/htdocs/theme/yellow/yellow.css.php +++ b/htdocs/theme/yellow/yellow.css.php @@ -1,6 +1,6 @@ <?php -/* Copyright (C) 2002-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org> - * Copyright (C) 2004-2008 Laurent Destailleur <eldy@users.sourceforge.net> +/* Copyright (C) 2002-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org> + * Copyright (C) 2004-2008 Laurent Destailleur <eldy@users.sourceforge.net> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -41,8 +41,8 @@ if (! isset($conf->global->MAIN_FEATURES_LEVEL) || $conf->global->MAIN_FEATURES_ /* ============================================================================== */ body { - background: #ebebe0; - font-size: 12px; + background: #ebebe0; + font-size: 12px; font-family: helvetica, verdana, arial, sans-serif; margin-top: 0; margin-bottom: 0; @@ -55,15 +55,15 @@ a:visited { font-family: helvetica, verdana, arial, sans-serif; font-weight: bol a:active { font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; color: #000000; text-decoration: none; } a:hover { font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; color: #000000; text-decoration: underline; } input -{ +{ font-size: 12px; - font-family: helvetica, verdana, arial, sans-serif; + font-family: helvetica, verdana, arial, sans-serif; border: 1px solid #cccccc; padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; } input.flat -{ +{ font-size: 12px; font-family: helvetica, verdana, arial, sans-serif; border: 1px solid #cccccc; @@ -94,7 +94,7 @@ select.flat padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; } -.button +.button { font-family: arial,verdana,helvetica, sans-serif; font-size: 100%; @@ -156,8 +156,8 @@ div.tmenu font-weight: bold; font-size: 12px; height: 20px; - background: #dcdcb3; - color: #000000; + background: #dcdcb3; + color: #000000; text-decoration: none; } a.tmenudisabled @@ -221,7 +221,7 @@ a.tmenu:hover } a.tmenusel -{ +{ color: #234046; background: #eeeecc; padding: 0px 5px; @@ -349,7 +349,7 @@ div.blockvmenupair border-bottom: 1px solid #555555; background: #dcdcb3; font-family: helvetica, verdana, arial, sans-serif; - color: #000000; + color: #000000; text-align:left; text-decoration: none; padding-left: 3px; @@ -366,7 +366,7 @@ div.blockvmenuimpair border-bottom: 1px solid #555555; background: #dcdcb3; font-family: helvetica, verdana, arial, sans-serif; - color: #000000; + color: #000000; text-align:left; text-decoration: none; padding-left: 3px; @@ -383,7 +383,7 @@ div.help border-bottom: 1px solid #000000; background: #f0f0f0; font-family: helvetica, verdana, arial, sans-serif; - color: #000000; + color: #000000; text-align:left; text-decoration: none; padding-left: 3px; @@ -393,23 +393,23 @@ div.help margin: 1px 0px 0px 0px; } -td.barre { +td.barre { border-right: 1px solid #000000; border-bottom: 1px solid #000000; background: #b3c5cc; font-family: helvetica, verdana, arial, sans-serif; - color: #000000; + color: #000000; text-align:left; text-decoration: none } -td.barre_select { - background: #b3c5cc; - color: #000000 +td.barre_select { + background: #b3c5cc; + color: #000000 } -td.photo { - background: #FFFFFF; - color: #000000 +td.photo { + background: #FFFFFF; + color: #000000 } @@ -506,8 +506,8 @@ a.butActionDelete:link { font-family: helvetica, verdana, arial, sans-serif; a.butActionDelete:active { font-family: helvetica, verdana, arial, sans-serif; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; } a.butActionDelete:visited { font-family: helvetica, verdana, arial, sans-serif; background: white; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; } a.butActionDelete:hover { font-family: helvetica, verdana, arial, sans-serif; background: #FFe7ec; border: 1px solid #997777; color: #436976; padding: 0em 0.7em; margin: 0em 0.5em; text-decoration: none; white-space: nowrap; } - - + + /* ============================================================================== */ /* Tables */ @@ -574,15 +574,15 @@ background: #ddddcc; } -td.border { +td.border { border-top: 1px solid #000000; border-right: 1px solid #000000; border-bottom: 1px solid #000000; border-left: 1px solid #000000; } -div.menus { - background: #eeeecc; +div.menus { + background: #eeeecc; color: #bbbb88; font-size: 0.95em; border-top: 1px dashed #ccccb3; @@ -592,15 +592,15 @@ div.menus { } -a.leftmenu { - font-weight: bold; +a.leftmenu { + font-weight: bold; color: #202020; } -div.leftmenu { - background: #ccccb3; +div.leftmenu { + background: #ccccb3; text-align: left; border-right: 1px solid #000000; border-bottom: 1px solid #000000; @@ -626,7 +626,7 @@ div.warning { } div.error { - color: #550000; font-weight: bold; + color: #550000; font-weight: bold; padding: 0.2em 0.2em 0.2em 0.2em; margin: 0.5em 0em 0.5em 0em; border: 1px solid #000000; @@ -644,7 +644,7 @@ div.info { * Liens Payes/Non payes */ -a.normal:link { font-weight: normal } +a.normal:link { font-weight: normal } a.normal:visited { font-weight: normal } a.normal:active { font-weight: normal } a.normal:hover { font-weight: normal } @@ -661,22 +661,22 @@ a.impayee:hover { font-weight: bold; color: #550000; } /* * ??? */ -div.titre { +div.titre { font-family: helvetica, verdana, arial, sans-serif; - font-weight: bold; - color: #666633; + font-weight: bold; + color: #666633; text-decoration: none } /* * Tableaux - */ + */ -input.liste_titre { +input.liste_titre { background: #BBBB88; border: 0px; } -tr.liste_titre { +tr.liste_titre { background: #BBBB88; font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; @@ -684,7 +684,7 @@ tr.liste_titre { white-space: nowrap; } -td.liste_titre { +td.liste_titre { background: #BBBB88; font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; @@ -694,24 +694,24 @@ td.liste_titre { } .liste_titre_sel -{ +{ color: #fcfffc; background: #BBBB88; font-family: helvetica, verdana, arial, sans-serif; - font-weight: bold; + font-weight: bold; border-top: 1px solid #FFFFFF; border-bottom: 1px solid #FFFFFF; white-space: nowrap; } -tr.liste_total td { +tr.liste_total td { background: #F0F0F0; font-weight: bold; white-space: nowrap; border-top: 1px solid #888888; } -th { +th { background: #BBBB88; font-family: helvetica, verdana, arial, sans-serif; font-weight: bold; @@ -723,52 +723,52 @@ th { font-size: 1.0em; } -.pair { - background: #eeeecc; - font-size: 1.0em; +.pair { + background: #eeeecc; + font-size: 1.0em; } -.impair { - background: #dcdcb3; - font-size: 1.0em; +.impair { + background: #dcdcb3; + font-size: 1.0em; } /* * Boxes */ -tr.box_titre { +tr.box_titre { background: #BBBB88; font-family: Helvetica, Verdana; font-size: 1.0em; font-weight: bold; } -tr.box_pair { - background: #dcdcb3; +tr.box_pair { + background: #dcdcb3; font-size: 0.95em; } -tr.box_impair { - background: #eeeecc; +tr.box_impair { + background: #eeeecc; font-family: Helvetica, Verdana; font-size: 0.95em; } -tr.fiche { +tr.fiche { font-family: Helvetica, Verdana; font-size: 0.6em; } /* * Widgets standard */ -td.delete { +td.delete { background: red; font-weight: bold; } -td.small { +td.small { font-size: 10px; } -tr.nonpayed { +tr.nonpayed { font-weight: bold; } @@ -803,7 +803,7 @@ table.valid { #dhtmltooltip { position: absolute; -width: 420px; +width: 450px; border: 1px solid #444444; padding: 2px; background-color: lightyellow; @@ -815,13 +815,13 @@ z-index: 100; /* ============================================================================== */ /* Calendar */ /* ============================================================================== */ -.bodyline { +.bodyline { -moz-border-radius:8px; - border: 1px #ECECE4 outset; + border: 1px #ECECE4 outset; padding:0px; margin-bottom:5px; } -table.dp { +table.dp { width: 180px; background-color: #FFFFFF; border-top: solid 2px #DDDDDD; @@ -831,19 +831,19 @@ table.dp { } .dp td, .tpHour td, .tpMinute td{padding:2px; font-size:10px;} /* Barre titre */ -.dpHead,.tpHead,.tpHour td:Hover .tpHead{ +.dpHead,.tpHead,.tpHour td:Hover .tpHead{ font-weight:bold; background-color:#ccc5b3; - color:black; + color:black; font-size:11px; cursor:auto; } /* Barre navigation */ .dpButtons,.tpButtons { text-align:center; - background-color:#dcdcb3;color:#000000; font-weight:bold; + background-color:#dcdcb3;color:#000000; font-weight:bold; border: 1px outset black; - cursor:pointer; + cursor:pointer; } .dpButtons:Active,.tpButtons:Active{border: 1px outset black;} .dpDayNames td,.dpExplanation {background-color:#D9DBE1; font-weight:bold; text-align:center; font-size:11px;} @@ -964,7 +964,7 @@ div.autocomplete ul li { cursor:pointer; } - + /* ============================================================================== */ /* Ajax - In place editor */ /* ============================================================================== */ @@ -1000,7 +1000,7 @@ form.inplaceeditor-form a { /* The cancel link */ } - + /* ============================================================================== */ /* Admin Menu */ /* ============================================================================== */