Enhance script to track duplicate translation string and use it to
remove around 50 duplicates.
This commit is contained in:
parent
d4268c079f
commit
7f3531a04c
277
dev/translation/sanity_check_en_langfiles.php
Normal file → Executable file
277
dev/translation/sanity_check_en_langfiles.php
Normal file → Executable file
@ -1,82 +1,102 @@
|
|||||||
|
#!/usr/bin/php
|
||||||
<?php
|
<?php
|
||||||
/* Copyright (c) 2015 Tommaso Basilici <t.basilici@19.coop>
|
/* Copyright (c) 2015 Tommaso Basilici <t.basilici@19.coop>
|
||||||
*
|
* Copyright (c) 2015 Laurent Destailleur <eldy@destailleur.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
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
* it under the terms of the GNU General Public License as published by
|
||||||
* (at your option) any later version.
|
* 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
|
* This program is distributed in the hope that it will be useful,
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* GNU General Public License for more details.
|
* 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, see <http://www.gnu.org/licenses/>.
|
* You should have received a copy of the GNU General Public License
|
||||||
*/
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
echo "<html>";
|
$sapi_type = php_sapi_name();
|
||||||
echo "<head>";
|
$script_file = basename(__FILE__);
|
||||||
|
$path=dirname(__FILE__).'/';
|
||||||
|
|
||||||
echo "<STYLE type=\"text/css\">
|
$web=0;
|
||||||
|
|
||||||
table {
|
// Test if batch mode
|
||||||
background: #f5f5f5;
|
if (substr($sapi_type, 0, 3) == 'cgi')
|
||||||
border-collapse: separate;
|
{
|
||||||
box-shadow: inset 0 1px 0 #fff;
|
$web=1;
|
||||||
font-size: 12px;
|
|
||||||
line-height: 24px;
|
|
||||||
margin: 30px auto;
|
|
||||||
text-align: left;
|
|
||||||
width: 800px;
|
|
||||||
}
|
|
||||||
|
|
||||||
th {
|
|
||||||
background-color: #777;
|
|
||||||
border-left: 1px solid #555;
|
|
||||||
border-right: 1px solid #777;
|
|
||||||
border-top: 1px solid #555;
|
|
||||||
border-bottom: 1px solid #333;
|
|
||||||
color: #fff;
|
|
||||||
font-weight: bold;
|
|
||||||
padding: 10px 15px;
|
|
||||||
position: relative;
|
|
||||||
text-shadow: 0 1px 0 #000;
|
|
||||||
}
|
|
||||||
|
|
||||||
td {
|
|
||||||
border-right: 1px solid #fff;
|
|
||||||
border-left: 1px solid #e8e8e8;
|
|
||||||
border-top: 1px solid #fff;
|
|
||||||
border-bottom: 1px solid #e8e8e8;
|
|
||||||
padding: 10px 15px;
|
|
||||||
position: relative;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
tr {
|
if ($web)
|
||||||
background-color: #f1f1f1;
|
{
|
||||||
|
echo "<html>";
|
||||||
|
echo "<head>";
|
||||||
|
|
||||||
|
echo "<STYLE type=\"text/css\">
|
||||||
|
|
||||||
|
table {
|
||||||
|
background: #f5f5f5;
|
||||||
|
border-collapse: separate;
|
||||||
|
box-shadow: inset 0 1px 0 #fff;
|
||||||
|
font-size: 12px;
|
||||||
|
line-height: 24px;
|
||||||
|
margin: 30px auto;
|
||||||
|
text-align: left;
|
||||||
|
width: 800px;
|
||||||
|
}
|
||||||
|
|
||||||
|
th {
|
||||||
|
background-color: #777;
|
||||||
|
border-left: 1px solid #555;
|
||||||
|
border-right: 1px solid #777;
|
||||||
|
border-top: 1px solid #555;
|
||||||
|
border-bottom: 1px solid #333;
|
||||||
|
color: #fff;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 10px 15px;
|
||||||
|
position: relative;
|
||||||
|
text-shadow: 0 1px 0 #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
td {
|
||||||
|
border-right: 1px solid #fff;
|
||||||
|
border-left: 1px solid #e8e8e8;
|
||||||
|
border-top: 1px solid #fff;
|
||||||
|
border-bottom: 1px solid #e8e8e8;
|
||||||
|
padding: 10px 15px;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
tr {
|
||||||
|
background-color: #f1f1f1;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
tr:nth-child(odd) td {
|
||||||
|
background-color: #f1f1f1;
|
||||||
|
}
|
||||||
|
|
||||||
|
</STYLE>";
|
||||||
|
|
||||||
|
echo "<body>";
|
||||||
}
|
}
|
||||||
|
|
||||||
tr:nth-child(odd) td {
|
echo "If you call this file with the argument \"?unused=true\" it searches for the translation strings that exist in en_US but are never used.\n";
|
||||||
background-color: #f1f1f1;
|
if ($web) print "<br>";
|
||||||
}
|
echo "IMPORTANT: that can take quite a lot of time (up to 10 minutes), you need to tune the max_execution_time on your php.ini accordingly.\n";
|
||||||
|
if ($web) print "<br>";
|
||||||
|
|
||||||
</STYLE>";
|
|
||||||
|
|
||||||
echo "<body>";
|
|
||||||
|
|
||||||
echo "If you call this file with the argument \"?unused=true\" it searches for the translation strings that exist in en_US but are never used.<br>";
|
|
||||||
echo "IMPORTANT: that can take quite a lot of time (up to 10 minutes), you need to tune the max_execution_time on your php.ini accordingly.<br>";
|
|
||||||
echo "Happy translating :)<br>";
|
|
||||||
|
|
||||||
|
|
||||||
// STEP 1 - Search duplicates keys
|
// STEP 1 - Search duplicates keys
|
||||||
|
|
||||||
|
|
||||||
// directory containing the php and lang files
|
// directory containing the php and lang files
|
||||||
$htdocs = "../../htdocs/";
|
$htdocs = $path."/../../htdocs/";
|
||||||
|
|
||||||
// directory containing the english lang files
|
// directory containing the english lang files
|
||||||
$workdir = $htdocs."langs/en_US/";
|
$workdir = $htdocs."langs/en_US/";
|
||||||
@ -114,8 +134,10 @@ foreach ($files AS $file) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($langstrings_3d AS $filename => $file) {
|
foreach ($langstrings_3d AS $filename => $file)
|
||||||
foreach ($file AS $linenum => $value) {
|
{
|
||||||
|
foreach ($file AS $linenum => $value)
|
||||||
|
{
|
||||||
$keys = array_keys($langstrings_full, $value);
|
$keys = array_keys($langstrings_full, $value);
|
||||||
if (count($keys)>1)
|
if (count($keys)>1)
|
||||||
{
|
{
|
||||||
@ -126,30 +148,95 @@ foreach ($langstrings_3d AS $filename => $file) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "<h2>Duplicate strings in lang files in $workdir - ".count($dups)." found</h2>";
|
if ($web) print "<h2>";
|
||||||
|
print "Duplicate strings in lang files in $workdir - ".count($dups)." found\n";
|
||||||
|
if ($web) print "</h2>";
|
||||||
|
|
||||||
echo "<table border_bottom=1> ";
|
if ($web)
|
||||||
echo "<thead><tr><th align=\"center\">#</th><th>String</th><th>File and lines</th></thead>";
|
{
|
||||||
echo "<tbody>";
|
echo '<table border_bottom="1">'."\n";
|
||||||
$count = 0;
|
echo "<thead><tr><th align=\"center\">#</th><th>String</th><th>File and lines</th></thead>\n";
|
||||||
foreach ($dups as $string => $pages) {
|
echo "<tbody>\n";
|
||||||
$count++;
|
}
|
||||||
echo "<tr>";
|
|
||||||
echo "<td align=\"center\">$count</td>";
|
$sduplicateinsamefile='';
|
||||||
echo "<td>$string</td>";
|
$sinmainandother='';
|
||||||
echo "<td>";
|
$sininstallandadmin='';
|
||||||
foreach ($pages AS $page => $lines ) {
|
$sother='';
|
||||||
echo "$page ";
|
|
||||||
foreach ($lines as $line => $translatedvalue) {
|
$count = 0;
|
||||||
//echo "($line - ".(substr($translatedvalue,0,20)).") ";
|
foreach ($dups as $string => $pages)
|
||||||
echo "($line - ".htmlentities($translatedvalue).") ";
|
{
|
||||||
}
|
$count++;
|
||||||
echo "<br>";
|
$s='';
|
||||||
}
|
|
||||||
echo "</td></tr>\n";
|
// Keyword $string
|
||||||
|
if ($web) $s.="<tr>";
|
||||||
|
if ($web) $s.="<td align=\"center\">";
|
||||||
|
if ($web) $s.=$count;
|
||||||
|
if ($web) $s.="</td>";
|
||||||
|
if ($web) $s.="<td>";
|
||||||
|
$s.=$string;
|
||||||
|
if ($web) $s.="</td>";
|
||||||
|
if ($web) $s.="<td>";
|
||||||
|
if (! $web) $s.= ' : ';
|
||||||
|
|
||||||
|
// Loop on each files keyword was found
|
||||||
|
$duplicateinsamefile=0;
|
||||||
|
$inmain=0;
|
||||||
|
$inadmin=0;
|
||||||
|
foreach ($pages AS $file => $lines)
|
||||||
|
{
|
||||||
|
if ($file == 'main.lang') { $inmain=1; $inadmin=0; }
|
||||||
|
if ($file == 'admin.lang' && ! $inmain) { $inadmin=1; }
|
||||||
|
|
||||||
|
$s.=$file." ";
|
||||||
|
|
||||||
|
// Loop on each line keword was found into file.
|
||||||
|
$listoffilesforthisentry=array();
|
||||||
|
foreach ($lines as $line => $translatedvalue)
|
||||||
|
{
|
||||||
|
if (! empty($listoffilesforthisentry[$file])) $duplicateinsamefile=1;
|
||||||
|
$listoffilesforthisentry[$file]=1;
|
||||||
|
|
||||||
|
$s.= "(".$line." - ".htmlentities($translatedvalue).") ";
|
||||||
|
}
|
||||||
|
if ($web) $s.="<br>";
|
||||||
|
}
|
||||||
|
if ($web) $s.="</td></tr>";
|
||||||
|
$s.="\n";
|
||||||
|
|
||||||
|
if ($duplicateinsamefile) $sduplicateinsamefile .= $s;
|
||||||
|
else if ($inmain) $sinmainandother .= $s;
|
||||||
|
else if ($inadmin) $sininstallandadmin .= $s;
|
||||||
|
else $sother .= $s;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (! $web) print "\n***** Entries duplicated in same file\n";
|
||||||
|
print $sduplicateinsamefile;
|
||||||
|
if (! $web && empty($sduplicateinsamefile)) print "None\n";
|
||||||
|
if (! $web) print "\n";
|
||||||
|
|
||||||
|
if (! $web) print "***** Entries in main and another (keep only entry in main)\n";
|
||||||
|
print $sinmainandother;
|
||||||
|
if (! $web && empty($sinmainandother)) print "None\n";
|
||||||
|
if (! $web) print "\n";
|
||||||
|
|
||||||
|
if (! $web) print "***** Entries in admin and another\n";
|
||||||
|
print $sininstallandadmin;
|
||||||
|
if (! $web && empty($sininstallandadmin)) print "None\n";
|
||||||
|
if (! $web) print "\n";
|
||||||
|
|
||||||
|
if (! $web) print "***** Other\n";
|
||||||
|
print $sother;
|
||||||
|
if (! $web && empty($sother)) print "None\n";
|
||||||
|
if (! $web) print "\n";
|
||||||
|
|
||||||
|
if ($web)
|
||||||
|
{
|
||||||
|
echo "</tbody>\n";
|
||||||
|
echo "</table>\n";
|
||||||
}
|
}
|
||||||
echo "</tbody>";
|
|
||||||
echo "</table>";
|
|
||||||
|
|
||||||
|
|
||||||
// STEP 2 - Search key not used
|
// STEP 2 - Search key not used
|
||||||
@ -168,12 +255,20 @@ if (! empty($_REQUEST['unused']) && $_REQUEST['unused'] == 'true')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "<h2>Strings in en_US that are never used</h2>";
|
if ($web) print "<h2>\n";
|
||||||
echo "<pre>";
|
print "Strings in en_US that are never used\n";
|
||||||
|
if ($web) print "</h2>\n";
|
||||||
|
if ($web) echo "<pre>";
|
||||||
print_r($unused);
|
print_r($unused);
|
||||||
echo "</pre>";
|
if ($web) echo "</pre>\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "\n";
|
echo "\n";
|
||||||
echo "</body>";
|
if ($web)
|
||||||
echo "</html>";
|
{
|
||||||
|
echo "</body>\n";
|
||||||
|
echo "</html>\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
exit;
|
||||||
|
|
||||||
|
|||||||
@ -2833,7 +2833,7 @@ else if ($id > 0 || ! empty($ref))
|
|||||||
print '<tr><td>' . $langs->trans('Company') . '</td>';
|
print '<tr><td>' . $langs->trans('Company') . '</td>';
|
||||||
print '</td><td colspan="5">';
|
print '</td><td colspan="5">';
|
||||||
if (! empty($conf->global->FACTURE_CHANGE_THIRDPARTY) && $action != 'editthirdparty' && $object->brouillon && $user->rights->facture->creer)
|
if (! empty($conf->global->FACTURE_CHANGE_THIRDPARTY) && $action != 'editthirdparty' && $object->brouillon && $user->rights->facture->creer)
|
||||||
print '<td align="right"><a href="' . $_SERVER["PHP_SELF"] . '?action=editthirdparty&facid=' . $object->id . '">' . img_edit($langs->trans('SetLinkToThirdParty'), 1) . '</a></td>';
|
print '<td align="right"><a href="' . $_SERVER["PHP_SELF"] . '?action=editthirdparty&facid=' . $object->id . '">' . img_edit($langs->trans('SetLinkToAnotherThirdParty'), 1) . '</a></td>';
|
||||||
print '</tr></table>';
|
print '</tr></table>';
|
||||||
print '</td><td colspan="5">';
|
print '</td><td colspan="5">';
|
||||||
if ($action == 'editthirdparty') {
|
if ($action == 'editthirdparty') {
|
||||||
|
|||||||
@ -121,9 +121,9 @@ abstract class DolibarrTriggers
|
|||||||
$langs->load("admin");
|
$langs->load("admin");
|
||||||
|
|
||||||
if ($this->version == self::VERSION_DEVELOPMENT) {
|
if ($this->version == self::VERSION_DEVELOPMENT) {
|
||||||
return $langs->trans("Development");
|
return $langs->trans("VersionDevelopment");
|
||||||
} elseif ($this->version == self::VERSION_EXPERIMENTAL) {
|
} elseif ($this->version == self::VERSION_EXPERIMENTAL) {
|
||||||
return $langs->trans("Experimental");
|
return $langs->trans("VersionExperimental");
|
||||||
} elseif ($this->version == self::VERSION_DOLIBARR) {
|
} elseif ($this->version == self::VERSION_DOLIBARR) {
|
||||||
return DOL_VERSION;
|
return DOL_VERSION;
|
||||||
} elseif ($this->version) {
|
} elseif ($this->version) {
|
||||||
|
|||||||
@ -333,9 +333,9 @@ if (! empty($force_install_message))
|
|||||||
if ($note) $option.=' '.$note;
|
if ($note) $option.=' '.$note;
|
||||||
// Deprecated and experimental
|
// Deprecated and experimental
|
||||||
if ($type=='mysql') $option.=' ' . $langs->trans("Deprecated");
|
if ($type=='mysql') $option.=' ' . $langs->trans("Deprecated");
|
||||||
elseif ($type=='mssql') $option.=' '.$langs->trans("Experimental");
|
elseif ($type=='mssql') $option.=' '.$langs->trans("VersionExperimental");
|
||||||
elseif ($type=='sqlite') $option.=' '.$langs->trans("Experimental");
|
elseif ($type=='sqlite') $option.=' '.$langs->trans("VersionExperimental");
|
||||||
elseif ($type=='sqlite3') $option.=' '.$langs->trans("Experimental");
|
elseif ($type=='sqlite3') $option.=' '.$langs->trans("VersionExperimental");
|
||||||
// No available
|
// No available
|
||||||
elseif (! function_exists($testfunction)) $option.=' - '.$langs->trans("FunctionNotAvailableInThisPHP");
|
elseif (! function_exists($testfunction)) $option.=' - '.$langs->trans("FunctionNotAvailableInThisPHP");
|
||||||
$option.='</option>';
|
$option.='</option>';
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - en_US - Accounting Expert
|
# Dolibarr language file - en_US - Accounting Expert
|
||||||
CHARSET=UTF-8
|
|
||||||
ACCOUNTING_EXPORT_SEPARATORCSV=Column separator for export file
|
ACCOUNTING_EXPORT_SEPARATORCSV=Column separator for export file
|
||||||
ACCOUNTING_EXPORT_DATE=Date format for export file
|
ACCOUNTING_EXPORT_DATE=Date format for export file
|
||||||
ACCOUNTING_EXPORT_PIECE=Export the number of piece
|
ACCOUNTING_EXPORT_PIECE=Export the number of piece
|
||||||
@ -12,8 +11,6 @@ ACCOUNTING_EXPORT_PREFIX_SPEC=Specify the prefix for the file name
|
|||||||
|
|
||||||
Accounting=Accounting
|
Accounting=Accounting
|
||||||
Globalparameters=Global parameters
|
Globalparameters=Global parameters
|
||||||
Chartofaccounts=Chart of accounts
|
|
||||||
Fiscalyear=Fiscal years
|
|
||||||
Menuaccount=Accounting accounts
|
Menuaccount=Accounting accounts
|
||||||
Menuthirdpartyaccount=Thirdparty accounts
|
Menuthirdpartyaccount=Thirdparty accounts
|
||||||
MenuTools=Tools
|
MenuTools=Tools
|
||||||
@ -33,23 +30,17 @@ Back=Return
|
|||||||
|
|
||||||
Definechartofaccounts=Define a chart of accounts
|
Definechartofaccounts=Define a chart of accounts
|
||||||
Selectchartofaccounts=Select a chart of accounts
|
Selectchartofaccounts=Select a chart of accounts
|
||||||
Validate=Validate
|
|
||||||
Addanaccount=Add an accounting account
|
Addanaccount=Add an accounting account
|
||||||
AccountAccounting=Accounting account
|
AccountAccounting=Accounting account
|
||||||
AccountAccountingSuggest=Accounting account suggest
|
AccountAccountingSuggest=Accounting account suggest
|
||||||
Ventilation=Breakdown
|
Ventilation=Breakdown
|
||||||
ToDispatch=To dispatch
|
|
||||||
Dispatched=Dispatched
|
|
||||||
|
|
||||||
CustomersVentilation=Breakdown customers
|
CustomersVentilation=Breakdown customers
|
||||||
SuppliersVentilation=Breakdown suppliers
|
SuppliersVentilation=Breakdown suppliers
|
||||||
TradeMargin=Trade margin
|
TradeMargin=Trade margin
|
||||||
Reports=Reports
|
Reports=Reports
|
||||||
ByCustomerInvoice=By invoices customers
|
ByCustomerInvoice=By invoices customers
|
||||||
ByMonth=By Month
|
|
||||||
NewAccount=New accounting account
|
NewAccount=New accounting account
|
||||||
Update=Update
|
|
||||||
List=List
|
|
||||||
Create=Create
|
Create=Create
|
||||||
CreateMvts=Create movement
|
CreateMvts=Create movement
|
||||||
UpdateAccount=Modification of an accounting account
|
UpdateAccount=Modification of an accounting account
|
||||||
@ -61,7 +52,6 @@ AccountBalanceByMonth=Account balance by month
|
|||||||
AccountingVentilation=Breakdown accounting
|
AccountingVentilation=Breakdown accounting
|
||||||
AccountingVentilationSupplier=Breakdown accounting supplier
|
AccountingVentilationSupplier=Breakdown accounting supplier
|
||||||
AccountingVentilationCustomer=Breakdown accounting customer
|
AccountingVentilationCustomer=Breakdown accounting customer
|
||||||
Line=Line
|
|
||||||
|
|
||||||
CAHTF=Total purchase supplier before tax
|
CAHTF=Total purchase supplier before tax
|
||||||
InvoiceLines=Lines of invoice to be ventilated
|
InvoiceLines=Lines of invoice to be ventilated
|
||||||
@ -112,17 +102,12 @@ Docref=Reference
|
|||||||
Numerocompte=Account
|
Numerocompte=Account
|
||||||
Code_tiers=Thirdparty
|
Code_tiers=Thirdparty
|
||||||
Labelcompte=Label account
|
Labelcompte=Label account
|
||||||
Debit=Debit
|
|
||||||
Credit=Credit
|
|
||||||
Amount=Amount
|
|
||||||
Sens=Sens
|
Sens=Sens
|
||||||
Codejournal=Journal
|
Codejournal=Journal
|
||||||
|
|
||||||
DelBookKeeping=Delete the records of the general ledger
|
DelBookKeeping=Delete the records of the general ledger
|
||||||
|
|
||||||
SellsJournal=Sells journal
|
DescSellsJournal=Sales journal
|
||||||
PurchasesJournal=Purchases journal
|
|
||||||
DescSellsJournal=Sells journal
|
|
||||||
DescPurchasesJournal=Purchases journal
|
DescPurchasesJournal=Purchases journal
|
||||||
BankJournal=Bank journal
|
BankJournal=Bank journal
|
||||||
DescBankJournal=Bank journal including all the types of payments other than cash
|
DescBankJournal=Bank journal including all the types of payments other than cash
|
||||||
@ -150,9 +135,6 @@ Pcgversion=Version of the plan
|
|||||||
Pcgtype=Class of account
|
Pcgtype=Class of account
|
||||||
Pcgsubtype=Under class of account
|
Pcgsubtype=Under class of account
|
||||||
Accountparent=Root of the account
|
Accountparent=Root of the account
|
||||||
Active=Statement
|
|
||||||
|
|
||||||
NewFiscalYear=New fiscal year
|
|
||||||
|
|
||||||
DescVentilCustomer=Consult here the annual breakdown accounting of your invoices customers
|
DescVentilCustomer=Consult here the annual breakdown accounting of your invoices customers
|
||||||
TotalVente=Total turnover before tax
|
TotalVente=Total turnover before tax
|
||||||
|
|||||||
@ -105,7 +105,6 @@ DetailPosition=Sort number to define menu position
|
|||||||
PersonalizedMenusNotSupported=Personalized menus not supported
|
PersonalizedMenusNotSupported=Personalized menus not supported
|
||||||
AllMenus=All
|
AllMenus=All
|
||||||
NotConfigured=Module not configured
|
NotConfigured=Module not configured
|
||||||
Setup=Setup
|
|
||||||
Activation=Activation
|
Activation=Activation
|
||||||
Active=Active
|
Active=Active
|
||||||
SetupShort=Setup
|
SetupShort=Setup
|
||||||
@ -193,15 +192,12 @@ ExportOptions=Export Options
|
|||||||
AddDropDatabase=Add DROP DATABASE command
|
AddDropDatabase=Add DROP DATABASE command
|
||||||
AddDropTable=Add DROP TABLE command
|
AddDropTable=Add DROP TABLE command
|
||||||
ExportStructure=Structure
|
ExportStructure=Structure
|
||||||
Datas=Data
|
|
||||||
NameColumn=Name columns
|
NameColumn=Name columns
|
||||||
ExtendedInsert=Extended INSERT
|
ExtendedInsert=Extended INSERT
|
||||||
NoLockBeforeInsert=No lock commands around INSERT
|
NoLockBeforeInsert=No lock commands around INSERT
|
||||||
DelayedInsert=Delayed insert
|
DelayedInsert=Delayed insert
|
||||||
EncodeBinariesInHexa=Encode binary data in hexadecimal
|
EncodeBinariesInHexa=Encode binary data in hexadecimal
|
||||||
IgnoreDuplicateRecords=Ignore errors of duplicate records (INSERT IGNORE)
|
IgnoreDuplicateRecords=Ignore errors of duplicate records (INSERT IGNORE)
|
||||||
Yes=Yes
|
|
||||||
No=No
|
|
||||||
AutoDetectLang=Autodetect (browser language)
|
AutoDetectLang=Autodetect (browser language)
|
||||||
FeatureDisabledInDemo=Feature disabled in demo
|
FeatureDisabledInDemo=Feature disabled in demo
|
||||||
Rights=Permissions
|
Rights=Permissions
|
||||||
@ -926,7 +922,6 @@ MenuCompanySetup=Company/Foundation
|
|||||||
MenuNewUser=New user
|
MenuNewUser=New user
|
||||||
MenuTopManager=Top menu manager
|
MenuTopManager=Top menu manager
|
||||||
MenuLeftManager=Left menu manager
|
MenuLeftManager=Left menu manager
|
||||||
MenuManager=Menu manager
|
|
||||||
MenuSmartphoneManager=Smartphone menu manager
|
MenuSmartphoneManager=Smartphone menu manager
|
||||||
DefaultMenuTopManager=Top menu manager
|
DefaultMenuTopManager=Top menu manager
|
||||||
DefaultMenuLeftManager=Left menu manager
|
DefaultMenuLeftManager=Left menu manager
|
||||||
@ -1110,7 +1105,6 @@ XDebugInstalled=XDebug is loaded.
|
|||||||
XCacheInstalled=XCache is loaded.
|
XCacheInstalled=XCache is loaded.
|
||||||
AddRefInList=Display customer/supplier ref into list (select list or combobox) and most of hyperlink. Third parties will appears with name "CC12345 - SC45678 - The big company coorp", instead of "The big company coorp".
|
AddRefInList=Display customer/supplier ref into list (select list or combobox) and most of hyperlink. Third parties will appears with name "CC12345 - SC45678 - The big company coorp", instead of "The big company coorp".
|
||||||
FieldEdition=Edition of field %s
|
FieldEdition=Edition of field %s
|
||||||
FixTZ=TimeZone fix
|
|
||||||
FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced)
|
FillThisOnlyIfRequired=Example: +2 (fill only if timezone offset problems are experienced)
|
||||||
GetBarCode=Get barcode
|
GetBarCode=Get barcode
|
||||||
EmptyNumRefModelDesc=The code is free. This code can be modified at any time.
|
EmptyNumRefModelDesc=The code is free. This code can be modified at any time.
|
||||||
@ -1644,8 +1638,6 @@ OpenFiscalYear=Open fiscal year
|
|||||||
CloseFiscalYear=Close fiscal year
|
CloseFiscalYear=Close fiscal year
|
||||||
DeleteFiscalYear=Delete fiscal year
|
DeleteFiscalYear=Delete fiscal year
|
||||||
ConfirmDeleteFiscalYear=Are you sure to delete this fiscal year ?
|
ConfirmDeleteFiscalYear=Are you sure to delete this fiscal year ?
|
||||||
Opened=Open
|
|
||||||
Closed=Closed
|
|
||||||
AlwaysEditable=Can always be edited
|
AlwaysEditable=Can always be edited
|
||||||
MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application)
|
MAIN_APPLICATION_TITLE=Force visible name of application (warning: setting your own name here may break autofill login feature when using DoliDroid mobile application)
|
||||||
NbMajMin=Minimum number of uppercase characters
|
NbMajMin=Minimum number of uppercase characters
|
||||||
|
|||||||
@ -59,7 +59,6 @@ PaymentBack=Payment back
|
|||||||
Payments=Payments
|
Payments=Payments
|
||||||
PaymentsBack=Payments back
|
PaymentsBack=Payments back
|
||||||
PaidBack=Paid back
|
PaidBack=Paid back
|
||||||
DatePayment=Payment date
|
|
||||||
DeletePayment=Delete payment
|
DeletePayment=Delete payment
|
||||||
ConfirmDeletePayment=Are you sure you want to delete this payment ?
|
ConfirmDeletePayment=Are you sure you want to delete this payment ?
|
||||||
ConfirmConvertToReduc=Do you want to convert this credit note or deposit into an absolute discount ?<br>The amount will so be saved among all discounts and could be used as a discount for a current or a future invoice for this customer.
|
ConfirmConvertToReduc=Do you want to convert this credit note or deposit into an absolute discount ?<br>The amount will so be saved among all discounts and could be used as a discount for a current or a future invoice for this customer.
|
||||||
@ -103,7 +102,6 @@ ConvertToReduc=Convert into future discount
|
|||||||
EnterPaymentReceivedFromCustomer=Enter payment received from customer
|
EnterPaymentReceivedFromCustomer=Enter payment received from customer
|
||||||
EnterPaymentDueToCustomer=Make payment due to customer
|
EnterPaymentDueToCustomer=Make payment due to customer
|
||||||
DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero
|
DisabledBecauseRemainderToPayIsZero=Disabled because remaining unpaid is zero
|
||||||
Amount=Amount
|
|
||||||
PriceBase=Price base
|
PriceBase=Price base
|
||||||
BillStatus=Invoice status
|
BillStatus=Invoice status
|
||||||
BillStatusDraft=Draft (needs to be validated)
|
BillStatusDraft=Draft (needs to be validated)
|
||||||
@ -187,7 +185,6 @@ ShowInvoiceReplace=Show replacing invoice
|
|||||||
ShowInvoiceAvoir=Show credit note
|
ShowInvoiceAvoir=Show credit note
|
||||||
ShowInvoiceDeposit=Show deposit invoice
|
ShowInvoiceDeposit=Show deposit invoice
|
||||||
ShowPayment=Show payment
|
ShowPayment=Show payment
|
||||||
File=File
|
|
||||||
AlreadyPaid=Already paid
|
AlreadyPaid=Already paid
|
||||||
AlreadyPaidBack=Already paid back
|
AlreadyPaidBack=Already paid back
|
||||||
AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and deposits)
|
AlreadyPaidNoCreditNotesNoDeposits=Already paid (without credit notes and deposits)
|
||||||
@ -240,7 +237,6 @@ Reduction=Reduction
|
|||||||
ReductionShort=Reduc.
|
ReductionShort=Reduc.
|
||||||
Reductions=Reductions
|
Reductions=Reductions
|
||||||
ReductionsShort=Reduc.
|
ReductionsShort=Reduc.
|
||||||
Discount=Discount
|
|
||||||
Discounts=Discounts
|
Discounts=Discounts
|
||||||
AddDiscount=Create discount
|
AddDiscount=Create discount
|
||||||
AddRelativeDiscount=Create relative discount
|
AddRelativeDiscount=Create relative discount
|
||||||
|
|||||||
@ -56,7 +56,6 @@ ReportByCustomers=Report by customers
|
|||||||
ReportByQuarter=Report by rate
|
ReportByQuarter=Report by rate
|
||||||
CivilityCode=Civility code
|
CivilityCode=Civility code
|
||||||
RegisteredOffice=Registered office
|
RegisteredOffice=Registered office
|
||||||
Name=Name
|
|
||||||
Lastname=Last name
|
Lastname=Last name
|
||||||
Firstname=First name
|
Firstname=First name
|
||||||
PostOrFunction=Post/Function
|
PostOrFunction=Post/Function
|
||||||
|
|||||||
@ -79,7 +79,6 @@ ListPayment=List of payments
|
|||||||
ListOfPayments=List of payments
|
ListOfPayments=List of payments
|
||||||
ListOfCustomerPayments=List of customer payments
|
ListOfCustomerPayments=List of customer payments
|
||||||
ListOfSupplierPayments=List of supplier payments
|
ListOfSupplierPayments=List of supplier payments
|
||||||
DatePayment=Payment date
|
|
||||||
DateStartPeriod=Date start period
|
DateStartPeriod=Date start period
|
||||||
DateEndPeriod=Date end period
|
DateEndPeriod=Date end period
|
||||||
NewVATPayment=New VAT payment
|
NewVATPayment=New VAT payment
|
||||||
@ -200,7 +199,6 @@ ByProductsAndServices=By products and services
|
|||||||
RefExt=External ref
|
RefExt=External ref
|
||||||
ToCreateAPredefinedInvoice=To create a predefined invoice, create a standard invoice then, without validating it, click onto button "Convert to predefined invoice".
|
ToCreateAPredefinedInvoice=To create a predefined invoice, create a standard invoice then, without validating it, click onto button "Convert to predefined invoice".
|
||||||
LinkedOrder=Link to order
|
LinkedOrder=Link to order
|
||||||
ReCalculate=Recalculate
|
|
||||||
Mode1=Method 1
|
Mode1=Method 1
|
||||||
Mode2=Method 2
|
Mode2=Method 2
|
||||||
CalculationRuleDesc=To calculate total VAT, there is two methods:<br>Method 1 is rounding vat on each line, then summing them.<br>Method 2 is summing all vat on each line, then rounding result.<br>Final result may differs from few cents. Default mode is mode <b>%s</b>.
|
CalculationRuleDesc=To calculate total VAT, there is two methods:<br>Method 1 is rounding vat on each line, then summing them.<br>Method 2 is summing all vat on each line, then rounding result.<br>Final result may differs from few cents. Default mode is mode <b>%s</b>.
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - Source file is en_US - ecm
|
# Dolibarr language file - Source file is en_US - ecm
|
||||||
MenuECM=Documents
|
|
||||||
DocsMine=My documents
|
DocsMine=My documents
|
||||||
DocsGenerated=Generated documents
|
DocsGenerated=Generated documents
|
||||||
DocsElements=Elements documents
|
DocsElements=Elements documents
|
||||||
|
|||||||
@ -3,8 +3,6 @@
|
|||||||
# No errors
|
# No errors
|
||||||
NoErrorCommitIsDone=No error, we commit
|
NoErrorCommitIsDone=No error, we commit
|
||||||
# Errors
|
# Errors
|
||||||
Error=Error
|
|
||||||
Errors=Errors
|
|
||||||
ErrorButCommitIsDone=Errors found but we validate despite this
|
ErrorButCommitIsDone=Errors found but we validate despite this
|
||||||
ErrorBadEMail=EMail %s is wrong
|
ErrorBadEMail=EMail %s is wrong
|
||||||
ErrorBadUrl=Url %s is wrong
|
ErrorBadUrl=Url %s is wrong
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
# Dolibarr language file - en_US - hrm
|
# Dolibarr language file - en_US - hrm
|
||||||
CHARSET=UTF-8
|
|
||||||
# Admin
|
# Admin
|
||||||
HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service
|
HRM_EMAIL_EXTERNAL_SERVICE=Email to prevent HRM external service
|
||||||
Establishments=Establishments
|
Establishments=Establishments
|
||||||
|
|||||||
@ -52,9 +52,7 @@ ServerPortDescription=Database server port. Keep empty if unknown.
|
|||||||
DatabaseServer=Database server
|
DatabaseServer=Database server
|
||||||
DatabaseName=Database name
|
DatabaseName=Database name
|
||||||
DatabasePrefix=Database prefix table
|
DatabasePrefix=Database prefix table
|
||||||
Login=Login
|
|
||||||
AdminLogin=Login for Dolibarr database owner.
|
AdminLogin=Login for Dolibarr database owner.
|
||||||
Password=Password
|
|
||||||
PasswordAgain=Retype password a second time
|
PasswordAgain=Retype password a second time
|
||||||
AdminPassword=Password for Dolibarr database owner.
|
AdminPassword=Password for Dolibarr database owner.
|
||||||
CreateDatabase=Create database
|
CreateDatabase=Create database
|
||||||
@ -62,14 +60,11 @@ CreateUser=Create owner
|
|||||||
DatabaseSuperUserAccess=Database server - Superuser access
|
DatabaseSuperUserAccess=Database server - Superuser access
|
||||||
CheckToCreateDatabase=Check box if database does not exist and must be created.<br>In this case, you must fill the login/password for superuser account at the bottom of this page.
|
CheckToCreateDatabase=Check box if database does not exist and must be created.<br>In this case, you must fill the login/password for superuser account at the bottom of this page.
|
||||||
CheckToCreateUser=Check box if database owner does not exist and must be created.<br>In this case, you must choose its login and password and also fill the login/password for the superuser account at the bottom of this page. If this box is unchecked, owner database and its passwords must exists.
|
CheckToCreateUser=Check box if database owner does not exist and must be created.<br>In this case, you must choose its login and password and also fill the login/password for the superuser account at the bottom of this page. If this box is unchecked, owner database and its passwords must exists.
|
||||||
Experimental=(experimental)
|
|
||||||
Deprecated=(deprecated)
|
|
||||||
DatabaseRootLoginDescription=Login of the user allowed to create new databases or new users, mandatory if your database or its owner does not already exists.
|
DatabaseRootLoginDescription=Login of the user allowed to create new databases or new users, mandatory if your database or its owner does not already exists.
|
||||||
KeepEmptyIfNoPassword=Leave empty if user has no password (avoid this)
|
KeepEmptyIfNoPassword=Leave empty if user has no password (avoid this)
|
||||||
SaveConfigurationFile=Save values
|
SaveConfigurationFile=Save values
|
||||||
ConfigurationSaving=Saving configuration file
|
ConfigurationSaving=Saving configuration file
|
||||||
ServerConnection=Server connection
|
ServerConnection=Server connection
|
||||||
DatabaseConnection=Database connection
|
|
||||||
DatabaseCreation=Database creation
|
DatabaseCreation=Database creation
|
||||||
UserCreation=User creation
|
UserCreation=User creation
|
||||||
CreateDatabaseObjects=Database objects creation
|
CreateDatabaseObjects=Database objects creation
|
||||||
@ -92,7 +87,6 @@ GoToDolibarr=Go to Dolibarr
|
|||||||
GoToSetupArea=Go to Dolibarr (setup area)
|
GoToSetupArea=Go to Dolibarr (setup area)
|
||||||
MigrationNotFinished=Version of your database is not completely up to date, so you'll have to run the upgrade process again.
|
MigrationNotFinished=Version of your database is not completely up to date, so you'll have to run the upgrade process again.
|
||||||
GoToUpgradePage=Go to upgrade page again
|
GoToUpgradePage=Go to upgrade page again
|
||||||
Examples=Examples
|
|
||||||
WithNoSlashAtTheEnd=Without the slash "/" at the end
|
WithNoSlashAtTheEnd=Without the slash "/" at the end
|
||||||
DirectoryRecommendation=It is recommanded to use a directory outside of your directory of your web pages.
|
DirectoryRecommendation=It is recommanded to use a directory outside of your directory of your web pages.
|
||||||
LoginAlreadyExists=Already exists
|
LoginAlreadyExists=Already exists
|
||||||
@ -113,7 +107,6 @@ Upgrade=Upgrade
|
|||||||
UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data.
|
UpgradeDesc=Use this mode if you have replaced old Dolibarr files with files from a newer version. This will upgrade your database and data.
|
||||||
Start=Start
|
Start=Start
|
||||||
InstallNotAllowed=Setup not allowed by <b>conf.php</b> permissions
|
InstallNotAllowed=Setup not allowed by <b>conf.php</b> permissions
|
||||||
NotAvailable=Not available
|
|
||||||
YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process.
|
YouMustCreateWithPermission=You must create file %s and set write permissions on it for the web server during install process.
|
||||||
CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload page.
|
CorrectProblemAndReloadPage=Please fix the problem and press F5 to reload page.
|
||||||
AlreadyDone=Already migrated
|
AlreadyDone=Already migrated
|
||||||
|
|||||||
@ -28,6 +28,7 @@ NoTranslation=No translation
|
|||||||
NoRecordFound=No record found
|
NoRecordFound=No record found
|
||||||
NoError=No error
|
NoError=No error
|
||||||
Error=Error
|
Error=Error
|
||||||
|
Errors=Errors
|
||||||
ErrorFieldRequired=Field '%s' is required
|
ErrorFieldRequired=Field '%s' is required
|
||||||
ErrorFieldFormat=Field '%s' has a bad value
|
ErrorFieldFormat=Field '%s' has a bad value
|
||||||
ErrorFileDoesNotExists=File %s does not exist
|
ErrorFileDoesNotExists=File %s does not exist
|
||||||
@ -671,7 +672,7 @@ NewAttribute=New attribute
|
|||||||
AttributeCode=Attribute code
|
AttributeCode=Attribute code
|
||||||
OptionalFieldsSetup=Extra attributes setup
|
OptionalFieldsSetup=Extra attributes setup
|
||||||
URLPhoto=URL of photo/logo
|
URLPhoto=URL of photo/logo
|
||||||
SetLinkToThirdParty=Link to another third party
|
SetLinkToAnotherThirdParty=Link to another third party
|
||||||
CreateDraft=Create draft
|
CreateDraft=Create draft
|
||||||
SetToDraft=Back to draft
|
SetToDraft=Back to draft
|
||||||
ClickToEdit=Click to edit
|
ClickToEdit=Click to edit
|
||||||
|
|||||||
@ -121,7 +121,6 @@ AttributeName=Attribute name
|
|||||||
String=String
|
String=String
|
||||||
Text=Text
|
Text=Text
|
||||||
Int=Int
|
Int=Int
|
||||||
Date=Date
|
|
||||||
DateAndTime=Date and time
|
DateAndTime=Date and time
|
||||||
PublicMemberCard=Member public card
|
PublicMemberCard=Member public card
|
||||||
MemberNotOrNoMoreExpectedToSubscribe=Member not or no more expected to subscribe
|
MemberNotOrNoMoreExpectedToSubscribe=Member not or no more expected to subscribe
|
||||||
|
|||||||
@ -64,7 +64,6 @@ SearchOrder=Search order
|
|||||||
SearchACustomerOrder=Search a customer order
|
SearchACustomerOrder=Search a customer order
|
||||||
SearchASupplierOrder=Search a supplier order
|
SearchASupplierOrder=Search a supplier order
|
||||||
ShipProduct=Ship product
|
ShipProduct=Ship product
|
||||||
Discount=Discount
|
|
||||||
CreateOrder=Create Order
|
CreateOrder=Create Order
|
||||||
RefuseOrder=Refuse order
|
RefuseOrder=Refuse order
|
||||||
ApproveOrder=Approve order
|
ApproveOrder=Approve order
|
||||||
|
|||||||
@ -10,27 +10,26 @@ BirthdayAlertOn= birthday alert active
|
|||||||
BirthdayAlertOff= birthday alert inactive
|
BirthdayAlertOff= birthday alert inactive
|
||||||
Notify_FICHINTER_VALIDATE=Intervention validated
|
Notify_FICHINTER_VALIDATE=Intervention validated
|
||||||
Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail
|
Notify_FICHINTER_SENTBYMAIL=Intervention sent by mail
|
||||||
Notify_BILL_VALIDATE=Customer invoice validated
|
Notify_ORDER_VALIDATE=Customer order validated
|
||||||
Notify_BILL_UNVALIDATE=Customer invoice unvalidated
|
Notify_ORDER_SENTBYMAIL=Customer order sent by mail
|
||||||
|
Notify_ORDER_SUPPLIER_SENTBYMAIL=Supplier order sent by mail
|
||||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order recorded
|
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order recorded
|
||||||
Notify_ORDER_SUPPLIER_APPROVE=Supplier order approved
|
Notify_ORDER_SUPPLIER_APPROVE=Supplier order approved
|
||||||
Notify_ORDER_SUPPLIER_REFUSE=Supplier order refused
|
Notify_ORDER_SUPPLIER_REFUSE=Supplier order refused
|
||||||
Notify_ORDER_VALIDATE=Customer order validated
|
|
||||||
Notify_PROPAL_VALIDATE=Customer proposal validated
|
Notify_PROPAL_VALIDATE=Customer proposal validated
|
||||||
Notify_PROPAL_CLOSE_SIGNED=Customer propal closed signed
|
Notify_PROPAL_CLOSE_SIGNED=Customer propal closed signed
|
||||||
Notify_PROPAL_CLOSE_REFUSED=Customer propal closed refused
|
Notify_PROPAL_CLOSE_REFUSED=Customer propal closed refused
|
||||||
|
Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail
|
||||||
Notify_WITHDRAW_TRANSMIT=Transmission withdrawal
|
Notify_WITHDRAW_TRANSMIT=Transmission withdrawal
|
||||||
Notify_WITHDRAW_CREDIT=Credit withdrawal
|
Notify_WITHDRAW_CREDIT=Credit withdrawal
|
||||||
Notify_WITHDRAW_EMIT=Perform withdrawal
|
Notify_WITHDRAW_EMIT=Perform withdrawal
|
||||||
Notify_ORDER_SENTBYMAIL=Customer order sent by mail
|
|
||||||
Notify_COMPANY_CREATE=Third party created
|
Notify_COMPANY_CREATE=Third party created
|
||||||
Notify_COMPANY_SENTBYMAIL=Mails sent from third party card
|
Notify_COMPANY_SENTBYMAIL=Mails sent from third party card
|
||||||
Notify_PROPAL_SENTBYMAIL=Commercial proposal sent by mail
|
Notify_BILL_VALIDATE=Customer invoice validated
|
||||||
|
Notify_BILL_UNVALIDATE=Customer invoice unvalidated
|
||||||
Notify_BILL_PAYED=Customer invoice payed
|
Notify_BILL_PAYED=Customer invoice payed
|
||||||
Notify_BILL_CANCEL=Customer invoice canceled
|
Notify_BILL_CANCEL=Customer invoice canceled
|
||||||
Notify_BILL_SENTBYMAIL=Customer invoice sent by mail
|
Notify_BILL_SENTBYMAIL=Customer invoice sent by mail
|
||||||
Notify_ORDER_SUPPLIER_VALIDATE=Supplier order validated
|
|
||||||
Notify_ORDER_SUPPLIER_SENTBYMAIL=Supplier order sent by mail
|
|
||||||
Notify_BILL_SUPPLIER_VALIDATE=Supplier invoice validated
|
Notify_BILL_SUPPLIER_VALIDATE=Supplier invoice validated
|
||||||
Notify_BILL_SUPPLIER_PAYED=Supplier invoice payed
|
Notify_BILL_SUPPLIER_PAYED=Supplier invoice payed
|
||||||
Notify_BILL_SUPPLIER_SENTBYMAIL=Supplier invoice sent by mail
|
Notify_BILL_SUPPLIER_SENTBYMAIL=Supplier invoice sent by mail
|
||||||
@ -138,7 +137,6 @@ VolumeUnitinch3=in³
|
|||||||
VolumeUnitounce=ounce
|
VolumeUnitounce=ounce
|
||||||
VolumeUnitlitre=litre
|
VolumeUnitlitre=litre
|
||||||
VolumeUnitgallon=gallon
|
VolumeUnitgallon=gallon
|
||||||
Size=size
|
|
||||||
SizeUnitm=m
|
SizeUnitm=m
|
||||||
SizeUnitdm=dm
|
SizeUnitdm=dm
|
||||||
SizeUnitcm=cm
|
SizeUnitcm=cm
|
||||||
|
|||||||
@ -106,7 +106,6 @@ AddToOtherProposals=Add to other proposals
|
|||||||
AddToMyBills=Add to my bills
|
AddToMyBills=Add to my bills
|
||||||
AddToOtherBills=Add to other bills
|
AddToOtherBills=Add to other bills
|
||||||
CorrectStock=Correct stock
|
CorrectStock=Correct stock
|
||||||
AddPhoto=Add photo
|
|
||||||
ListOfStockMovements=List of stock movements
|
ListOfStockMovements=List of stock movements
|
||||||
BuyingPrice=Buying price
|
BuyingPrice=Buying price
|
||||||
PriceForEachProduct=Products with specific prices
|
PriceForEachProduct=Products with specific prices
|
||||||
@ -139,7 +138,6 @@ KeywordFilter=Keyword filter
|
|||||||
CategoryFilter=Category filter
|
CategoryFilter=Category filter
|
||||||
ProductToAddSearch=Search product to add
|
ProductToAddSearch=Search product to add
|
||||||
AddDel=Add/Delete
|
AddDel=Add/Delete
|
||||||
Quantity=Quantity
|
|
||||||
NoMatchFound=No match found
|
NoMatchFound=No match found
|
||||||
ProductAssociationList=List of products/services that are component of this virtual product/package
|
ProductAssociationList=List of products/services that are component of this virtual product/package
|
||||||
ProductParentList=List of package products/services with this product as a component
|
ProductParentList=List of package products/services with this product as a component
|
||||||
|
|||||||
@ -99,7 +99,6 @@ ReOpenAProject=Open project
|
|||||||
ConfirmReOpenAProject=Are you sure you want to re-open this project ?
|
ConfirmReOpenAProject=Are you sure you want to re-open this project ?
|
||||||
ProjectContact=Project contacts
|
ProjectContact=Project contacts
|
||||||
ActionsOnProject=Events on project
|
ActionsOnProject=Events on project
|
||||||
OpenedProjects=Opened projects
|
|
||||||
YouAreNotContactOfProject=You are not a contact of this private project
|
YouAreNotContactOfProject=You are not a contact of this private project
|
||||||
DeleteATimeSpent=Delete time spent
|
DeleteATimeSpent=Delete time spent
|
||||||
ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent ?
|
ConfirmDeleteATimeSpent=Are you sure you want to delete this time spent ?
|
||||||
|
|||||||
@ -11,7 +11,6 @@ DraftRequests=Draft requests
|
|||||||
LastModifiedRequests=Last %s modified price requests
|
LastModifiedRequests=Last %s modified price requests
|
||||||
RequestsOpened=Open price requests
|
RequestsOpened=Open price requests
|
||||||
SupplierProposalArea=Supplier proposals area
|
SupplierProposalArea=Supplier proposals area
|
||||||
SupplierProposal=Supplier proposal
|
|
||||||
SupplierProposalShort=Supplier proposal
|
SupplierProposalShort=Supplier proposal
|
||||||
SupplierProposals=Supplier proposals
|
SupplierProposals=Supplier proposals
|
||||||
NewAskPrice=New price request
|
NewAskPrice=New price request
|
||||||
|
|||||||
@ -53,8 +53,6 @@ AddLineMini=Add
|
|||||||
Date_DEBUT=Period date start
|
Date_DEBUT=Period date start
|
||||||
Date_FIN=Period date end
|
Date_FIN=Period date end
|
||||||
ModePaiement=Payment mode
|
ModePaiement=Payment mode
|
||||||
Note=Note
|
|
||||||
Project=Project
|
|
||||||
|
|
||||||
VALIDATOR=User responsible for approval
|
VALIDATOR=User responsible for approval
|
||||||
VALIDOR=Approved by
|
VALIDOR=Approved by
|
||||||
|
|||||||
@ -41,7 +41,6 @@ SearchAUser=Search a user
|
|||||||
LoginNotDefined=Login is not defined.
|
LoginNotDefined=Login is not defined.
|
||||||
NameNotDefined=Name is not defined.
|
NameNotDefined=Name is not defined.
|
||||||
ListOfUsers=List of users
|
ListOfUsers=List of users
|
||||||
Administrator=Administrator
|
|
||||||
SuperAdministrator=Super Administrator
|
SuperAdministrator=Super Administrator
|
||||||
SuperAdministratorDesc=Global administrator
|
SuperAdministratorDesc=Global administrator
|
||||||
AdministratorDesc=Administrator
|
AdministratorDesc=Administrator
|
||||||
|
|||||||
@ -48,7 +48,6 @@ RefusedReason=Reason for rejection
|
|||||||
RefusedInvoicing=Billing the rejection
|
RefusedInvoicing=Billing the rejection
|
||||||
NoInvoiceRefused=Do not charge the rejection
|
NoInvoiceRefused=Do not charge the rejection
|
||||||
InvoiceRefused=Invoice refused (Charge the rejection to customer)
|
InvoiceRefused=Invoice refused (Charge the rejection to customer)
|
||||||
Status=Status
|
|
||||||
StatusUnknown=Unknown
|
StatusUnknown=Unknown
|
||||||
StatusWaiting=Waiting
|
StatusWaiting=Waiting
|
||||||
StatusTrans=Sent
|
StatusTrans=Sent
|
||||||
|
|||||||
@ -51,8 +51,9 @@ $select_pricing_rules=array(
|
|||||||
);
|
);
|
||||||
if ($conf->global->MAIN_FEATURES_LEVEL >= 2)
|
if ($conf->global->MAIN_FEATURES_LEVEL >= 2)
|
||||||
{
|
{
|
||||||
$select_pricing_rules['PRODUIT_CUSTOMER_PRICES_BY_QTY'] = $langs->trans('PriceByQuantity').' ('.$langs->trans("Experimental").')'; // TODO If this is enabled, price must be hidden when price by qty is enabled, also price for quantity must be used when adding product into order/propal/invoice
|
$langs->load("admin");
|
||||||
$select_pricing_rules['PRODUIT_CUSTOMER_PRICES_BY_QTY&PRODUIT_MULTIPRICES'] = $langs->trans('MultiPricesAbility') . '+' . $langs->trans('PriceByQuantity').' ('.$langs->trans("Experimental").')';
|
$select_pricing_rules['PRODUIT_CUSTOMER_PRICES_BY_QTY'] = $langs->trans('PriceByQuantity').' ('.$langs->trans("VersionExperimental").')'; // TODO If this is enabled, price must be hidden when price by qty is enabled, also price for quantity must be used when adding product into order/propal/invoice
|
||||||
|
$select_pricing_rules['PRODUIT_CUSTOMER_PRICES_BY_QTY&PRODUIT_MULTIPRICES'] = $langs->trans('MultiPricesAbility') . '+' . $langs->trans('PriceByQuantity').' ('.$langs->trans("VersionExperimental").')';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Clean param
|
// Clean param
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user