diff --git a/ChangeLog b/ChangeLog
index 1c0e96fc27c..2c9e138e1f9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -143,6 +143,123 @@ Following changes may create regressions for some external modules, but were nec
+***** ChangeLog for 14.0.4 compared to 14.0.3 *****
+
+FIX: $totalarray is overwritten, totals were lost
+FIX: 13.0 - due to a typo in the 'mode' parameter, the "first name" column of the list of members displays the full name
+FIX: 13.0: end date required to edit a ticket message
+FIX: 13.0 feedback of PR #18993: make ticket messages punctual events with attr percentage = -1
+FIX: 13.0 PR #18993: add comment on modified part
+FIX: 13.0: sometimes firstname was mistyped as fistname
+FIX: 14.0 - civility field of private third party creation form has inadequate width
+FIX: 14.0 - civility field width inadequate due to select2 calculating the width while the field has no width (display: none)
+FIX: 14.0 - due to a typo in the 'mode' parameter, the "first name" co…
+FIX: #18634 : Problem of virtual stock with reception module enabled
+FIX: #18695 Added ref_ext to supplier invoice
+FIX: #18698 Supplier invoice list - "alert" checkbox not working
+FIX: #18735
+FIX: #18767 : Adherent delete
+FIX: #18797
+FIX: #18854
+FIX: #18875 in v14
+FIX: #18910
+FIX: #18910 : MRP List SQL query syntax error with more than one extrafileds.
+FIX: #18912 Accountancy - SQL error when custom group is added without country defined
+FIX: #18934 on-registration in the extrafieldsline database for deliveries
+FIX: #18968
+FIX: #19008
+FIX: #19014 - the properties of some fields are not updated when you submit the form
+FIX: #19210
+FIX: #19214 : PostgreSQL error on admin/limits.php
+FIX: #19241 Project - Fix display salary in overview
+FIX: #19305
+FIX: 2 columns for total labels
+FIX: Accountancy - Format Quadra export - Missing line type C to create automaticly a subledger account with label
+FIX: Accountancy - If deposit invoice is used, force binding in deposit accounting account to solve transaction
+FIX: Accountancy - Missing specific filename for export on format FEC2, Ciel & repare it
+FIX: Accountancy - Option of export popup are inverted
+FIX: Accountancy - PHP8
+FIX: Accountancy - Product admin - SQL error when we affect accounting account with product_perentity activated
+FIX: Accountancy simplified - Salaries are not present in report
+FIX: Accountancy - Some correction on export name
+FIX: Accountancy - Trunc code_journal to 2 in format XIMPORT (Ciel, Sage50)
+FIX: add warehouse in projects' overview count
+FIX: also on customer index for automatic binding
+FIX: Attachment of pdf into shipment when sending email
+FIX: autocalculation of the supplier price in main currency.
+FIX: avoid warning if $categories is an id
+FIX: bad sign of amount stored for multicurrency columns on credit notes
+FIX: Bad use of a forced contact of another company on PDF/ODT documents
+FIX: Bad use of dol_concatdesc()
+FIX: Button text on proposal card for create a invoice
+FIX: calculateCosts of BOM must not be included into fetch
+FIX: calculation of balance in conciliation page on desc sorting.
+FIX: card.php
+FIX: Change date format of the inventorycode to be equal as mass stock transfert
+FIX: check if greater 0
+FIX: close cash with some terminals in TakePOS
+FIX: compatibility with Multicompany
+FIX: consistent UX when calling a tab from the invoice card with empty ref/id
+FIX: default language defined for IN country
+FIX: Expense report - In edit mode, field qty doesn't accept decimal unlike the create mode
+FIX: fetch of product with modulebuilder load too much data
+FIX: filter for export of accounting documents
+FIX: Filter on categories
+FIX: generate documents with PDF options
+FIX: indentation
+FIX: init hookmanager after loading $conf values
+FIX: invoice: inpossible to create an invoice because of very bad check + warnings when trying to print tabs for invoice with no ID
+FIX: legal issue on expense report pdf (must also show price without tax)
+FIX: list of categories in stats of supplier invoices
+FIX: load tranlate array after setting lang
+FIX: lost superadmin grade after edit user card
+FIX: missing filter status=1 on rss feeds
+FIX: missing permission check reported by me@lainwir3d.net on product api
+FIX: missing return status
+FIX: missing sql filter by entity
+FIX: move fetch_optionnal into $ac_static->fetch()
+FIX: only a superadmin can modify entity
+FIX: only ones value is return for dictionaries
+FIX: optional visibility on create card
+FIX: payment style and html5 tags
+FIX: payment using wrong type in takepos when too many payment mode
+FIX: PR#18931 Remove useless explicit call to dol_shutdown
+FIX: Product accountancy affectation with product_perentity activated (PR #18620)
+FIX: products/services card: hidden extrafields were overridden
+FIX: project task list: extrafields could not be displayed
+FIX: Propal list - Problem of pagination on date
+FIX: reload user lang
+FIX: Remove not complete order from the virtual stock
+FIX: Replenish: SQL error when no warehouse has been created + Warning when there are no warehouses
+FIX: resource list : Use standard code to handle list filters
+FIX: restrictedArea for payment delete
+FIX: Ret PR
+FIX: second approval back in stable feature as is the setting for minimum amount (last part from PR#14286)
+FIX: selected lines on supplier invoice create
+FIX: Selection of type "people" for membership must hide the company
+FIX: select list of orders not complete when field type of company is on
+FIX: show end hours in events linked to objects
+FIX: support of localtax on expense report
+FIX: task time: can't filter by user with pgsql + show error message
+FIX: task time: keep on using natural_search
+FIX: tcpdf vulnerability to roman numeral bomb, cf. tecnickom/TCPDF issue #315
+FIX: Test when date of invoie is in future (pb with TZ and offset)
+FIX: Ticket - Card - Wrong font awesome library
+FIX: Ticket - Duplicate field project when we create ticket from project
+FIX: translation into email for member at membership validation.
+FIX: Travis Sanitize SQL
+FIX: unprivileged user can see task associated with a not allowed project
+FIX: URGENT: impossible to create an invoice
+FIX: Use of accent into filename of GED
+FIX: user date timezone offset
+FIX: User salary card - translation problem
+FIX: user without permission can set ticket subject
+FIX: We need a default price base type in variant creation case with multiprices when parent has been created with only one level price
+FIX: wrong array key value
+FIX: wrong check
+FIX: wrong position of error message
+Sync transifex.
+
***** ChangeLog for 14.0.3 compared to 14.0.2 *****
FIX: #18698 Supplier invoice list - "alert" checkbox not working
diff --git a/dev/resources/iso-normes/14-pourquoi le format PDF A.pdf b/dev/resources/iso-normes/14-pourquoi le format PDF A.pdf
new file mode 100644
index 00000000000..0ceeb5230de
Binary files /dev/null and b/dev/resources/iso-normes/14-pourquoi le format PDF A.pdf differ
diff --git a/htdocs/accountancy/admin/accountmodel.php b/htdocs/accountancy/admin/accountmodel.php
index 97a460beaac..29c2b7d5510 100644
--- a/htdocs/accountancy/admin/accountmodel.php
+++ b/htdocs/accountancy/admin/accountmodel.php
@@ -495,7 +495,7 @@ if ($id) {
if ($valuetoshow != '') {
print '
';
+ }
} else {
print $db->lasterror(); // Show last sql error
}
diff --git a/htdocs/accountancy/supplier/list.php b/htdocs/accountancy/supplier/list.php
index 18cb15d61a5..2b1260ea0da 100644
--- a/htdocs/accountancy/supplier/list.php
+++ b/htdocs/accountancy/supplier/list.php
@@ -532,9 +532,9 @@ if ($result) {
// product_type: 0 = service, 1 = product
// if product does not exist we use the value of product_type provided in facturedet to define if this is a product or service
// issue : if we change product_type value in product DB it should differ from the value stored in facturedet DB !
- $objp->code_buy_l = '';
- $objp->code_buy_p = '';
- $objp->aarowid_suggest = ''; // Will be set later
+ $code_buy_l = '';
+ $code_buy_p = '';
+ $code_buy_t = '';
$thirdpartystatic->id = $objp->socid;
$thirdpartystatic->name = $objp->name;
@@ -585,6 +585,8 @@ if ($result) {
$code_buy_p_notset = '';
$code_buy_t_notset = '';
+ $suggestedid = 0;
+
$return=$accountingAccount->getAccountingCodeToBind($mysoc, $thirdpartystatic, $product_static, $facturefourn_static, $facturefourn_static_det, $accountingAccountArray, 'supplier');
if (!is_array($return) && $return<0) {
setEventMessage($accountingAccount->error, 'errors');
@@ -598,9 +600,6 @@ if ($result) {
}
//var_dump($return);
- // Level 3: Search suggested account for this thirdparty (similar code exists in page index.php to make automatic binding)
- // Not supported for suppliers
-
if (!empty($code_buy_p)) {
// Value was defined previously
} else {
@@ -616,6 +615,7 @@ if ($result) {
// $code_buy_l is now default code of product/service
// $code_buy_p is now code of product/service
// $code_buy_t is now code of thirdparty
+ //var_dump($code_buy_l.' - '.$code_buy_p.' - '.$code_buy_t.' -> '.$suggestedid.' ('.$suggestedaccountingaccountbydefaultfor.' '.$suggestedaccountingaccountfor.')');
print '
';
$modulepart = 'import';
$relativepath = GETPOST('filetoimport');
- print '';
+ print '';
print img_mime($file, '', 'pictofixedwidth');
print $filetoimport;
print '';
diff --git a/htdocs/install/check.php b/htdocs/install/check.php
index c138dc42fdb..14448841217 100644
--- a/htdocs/install/check.php
+++ b/htdocs/install/check.php
@@ -93,7 +93,7 @@ if (versioncompare(versionphparray(), $arrayphpminversionerror) < 0) { //
print ' '.$langs->trans("PHPVersion")." ".versiontostring(versionphparray());
}
if (empty($force_install_nophpinfo)) {
- print ' ('.$langs->trans("MoreInformation").')';
+ print ' ('.$langs->trans("MoreInformation").')';
}
print " \n";
diff --git a/htdocs/install/mysql/data/llx_c_paiement.sql b/htdocs/install/mysql/data/llx_c_paiement.sql
index ffe129ec501..e29b47639f2 100644
--- a/htdocs/install/mysql/data/llx_c_paiement.sql
+++ b/htdocs/install/mysql/data/llx_c_paiement.sql
@@ -30,13 +30,18 @@
-- Types paiement
--
-insert into llx_c_paiement (id,code,libelle,type,active) values ( 1, 'TIP', 'TIP', 2,0);
-insert into llx_c_paiement (id,code,libelle,type,active) values ( 2, 'VIR', 'Transfer', 2,1);
-insert into llx_c_paiement (id,code,libelle,type,active) values ( 3, 'PRE', 'Debit order', 2,1);
-insert into llx_c_paiement (id,code,libelle,type,active) values ( 4, 'LIQ', 'Cash', 2,1);
-insert into llx_c_paiement (id,code,libelle,type,active) values ( 6, 'CB', 'Credit card', 2,1);
-insert into llx_c_paiement (id,code,libelle,type,active) values ( 7, 'CHQ', 'Cheque', 2,1);
-insert into llx_c_paiement (id,code,libelle,type,active) values (50, 'VAD', 'Online payment', 2,0);
-insert into llx_c_paiement (id,code,libelle,type,active) values (51, 'TRA', 'Traite', 2,0);
-insert into llx_c_paiement (id,code,libelle,type,active) values (52, 'LCR', 'LCR', 2,0);
-insert into llx_c_paiement (id,code,libelle,type,active) values (53, 'FAC', 'Factor', 2,0);
+insert into llx_c_paiement (id,code,libelle,type,active) values ( 1, 'TIP', 'TIP', 2, 0);
+insert into llx_c_paiement (id,code,libelle,type,active) values ( 2, 'VIR', 'Transfer', 2, 1);
+insert into llx_c_paiement (id,code,libelle,type,active) values ( 3, 'PRE', 'Debit order', 2, 1);
+insert into llx_c_paiement (id,code,libelle,type,active) values ( 4, 'LIQ', 'Cash', 2, 1);
+insert into llx_c_paiement (id,code,libelle,type,active) values ( 6, 'CB', 'Credit card', 2, 1);
+insert into llx_c_paiement (id,code,libelle,type,active) values ( 7, 'CHQ', 'Cheque', 2, 1);
+insert into llx_c_paiement (id,code,libelle,type,active) values (50, 'VAD', 'Online payment', 2, 0);
+insert into llx_c_paiement (id,code,libelle,type,active) values (51, 'TRA', 'Traite', 2, 0);
+insert into llx_c_paiement (id,code,libelle,type,active) values (52, 'LCR', 'LCR', 2, 0);
+insert into llx_c_paiement (id,code,libelle,type,active) values (53, 'FAC', 'Factor', 2, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (100, 'KLA', 'Klarna', 1, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (101, 'SOF', 'Sofort', 1, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (102, 'BAN', 'Bancontact', 1, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (103, 'IDE', 'iDeal', 1, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (104, 'GIR', 'Giropay', 1, 0);
diff --git a/htdocs/install/mysql/migration/14.0.0-15.0.0.sql b/htdocs/install/mysql/migration/14.0.0-15.0.0.sql
index 0a8be50ee92..01204e0bd55 100644
--- a/htdocs/install/mysql/migration/14.0.0-15.0.0.sql
+++ b/htdocs/install/mysql/migration/14.0.0-15.0.0.sql
@@ -448,3 +448,48 @@ ALTER TABLE llx_socpeople DROP COLUMN googleplus;
ALTER TABLE llx_socpeople DROP COLUMN youtube;
ALTER TABLE llx_socpeople DROP COLUMN whatsapp;
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (100, 'KLA', 'Klarna', 1, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (101, 'SOF', 'Sofort', 1, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (102, 'BAN', 'Bancontact', 1, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (103, 'IDE', 'iDeal', 1, 0);
+INSERT INTO llx_c_paiement (id,code,libelle,type,active) values (104, 'GIR', 'Giropay', 1, 0);
+
+ALTER TABLE llx_paiement_facture ADD COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_paiement_facture ADD COLUMN multicurrency_tx double(24,8) DEFAULT 1;
+ALTER TABLE llx_paiement_facture ADD COLUMN multicurrency_amount double(24,8) DEFAULT 0;
+
+ALTER TABLE llx_paiementfourn_facturefourn ADD COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_paiementfourn_facturefourn ADD COLUMN multicurrency_tx double(24,8) DEFAULT 1;
+ALTER TABLE llx_paiementfourn_facturefourn ADD COLUMN multicurrency_amount double(24,8) DEFAULT 0;
+
+
+ALTER TABLE llx_commande_fournisseur MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_commande_fournisseurdet MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_commande MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_commandedet MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_contratdet MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_expensereport_det MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_expensereport MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_facture_fourn_det MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_facture_fourn MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_facture_rec MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_facture MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_facturedet_rec MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_facturedet MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_paiement_facture MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_paiementfourn_facturefourn MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_product_fournisseur_price_log MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_product_fournisseur_price MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_product_price_by_qty MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_product_price MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_propal MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_propaldet MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_societe MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_supplier_proposal MODIFY COLUMN multicurrency_code varchar(3);
+ALTER TABLE llx_supplier_proposaldet MODIFY COLUMN multicurrency_code varchar(3);
+
+ALTER TABLE llx_propal ADD COLUMN online_sign_ip varchar(48);
+ALTER TABLE llx_propal ADD COLUMN online_sign_name varchar(64);
+
+ALTER TABLE llx_entrepot ADD COLUMN warehouse_usage integer DEFAULT 1;
+
diff --git a/htdocs/install/mysql/tables/llx_commande.sql b/htdocs/install/mysql/tables/llx_commande.sql
index e3a075933c2..5b8a78c7bf8 100644
--- a/htdocs/install/mysql/tables/llx_commande.sql
+++ b/htdocs/install/mysql/tables/llx_commande.sql
@@ -77,7 +77,7 @@ create table llx_commande
extraparams varchar(255), -- for stock other parameters with json format
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseur.sql b/htdocs/install/mysql/tables/llx_commande_fournisseur.sql
index 56486b551c8..e7d1d7b6c1d 100644
--- a/htdocs/install/mysql/tables/llx_commande_fournisseur.sql
+++ b/htdocs/install/mysql/tables/llx_commande_fournisseur.sql
@@ -70,7 +70,7 @@ create table llx_commande_fournisseur
extraparams varchar(255), -- for stock other parameters with json format
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_commande_fournisseurdet.sql b/htdocs/install/mysql/tables/llx_commande_fournisseurdet.sql
index b780d24f1e2..f6092bc4c74 100644
--- a/htdocs/install/mysql/tables/llx_commande_fournisseurdet.sql
+++ b/htdocs/install/mysql/tables/llx_commande_fournisseurdet.sql
@@ -53,7 +53,7 @@ create table llx_commande_fournisseurdet
fk_unit integer DEFAULT NULL,
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_commandedet.sql b/htdocs/install/mysql/tables/llx_commandedet.sql
index caff1ce7028..d269e2ddfe2 100644
--- a/htdocs/install/mysql/tables/llx_commandedet.sql
+++ b/htdocs/install/mysql/tables/llx_commandedet.sql
@@ -62,7 +62,7 @@ create table llx_commandedet
fk_commandefourndet integer DEFAULT NULL, -- link to detail line of commande fourn (resplenish)
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_contratdet.sql b/htdocs/install/mysql/tables/llx_contratdet.sql
index e9be3c4ad0c..075de80270d 100644
--- a/htdocs/install/mysql/tables/llx_contratdet.sql
+++ b/htdocs/install/mysql/tables/llx_contratdet.sql
@@ -66,7 +66,7 @@ create table llx_contratdet
fk_unit integer DEFAULT NULL,
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_entrepot.sql b/htdocs/install/mysql/tables/llx_entrepot.sql
index be49978f6b7..b2e814c15c6 100644
--- a/htdocs/install/mysql/tables/llx_entrepot.sql
+++ b/htdocs/install/mysql/tables/llx_entrepot.sql
@@ -35,9 +35,10 @@ create table llx_entrepot
fk_pays integer DEFAULT 0,
phone varchar(20), -- phone number
fax varchar(20), -- fax number
+ warehouse_usage integer DEFAULT 1, -- 1=internal, 2=external (virtual warehouse or stock out of company)
statut tinyint DEFAULT 1, -- 1 open, 0 close
fk_user_author integer,
model_pdf varchar(255),
- import_key varchar(14),
+ import_key varchar(14),
fk_parent integer DEFAULT 0
)ENGINE=innodb;
diff --git a/htdocs/install/mysql/tables/llx_expensereport.sql b/htdocs/install/mysql/tables/llx_expensereport.sql
index 36bd5efb50c..e5c44ec0f36 100644
--- a/htdocs/install/mysql/tables/llx_expensereport.sql
+++ b/htdocs/install/mysql/tables/llx_expensereport.sql
@@ -56,7 +56,7 @@ CREATE TABLE llx_expensereport (
last_main_doc varchar(255), -- relative filepath+filename of last main generated document
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_expensereport_det.sql b/htdocs/install/mysql/tables/llx_expensereport_det.sql
index e6304f64c7f..7855ad16643 100644
--- a/htdocs/install/mysql/tables/llx_expensereport_det.sql
+++ b/htdocs/install/mysql/tables/llx_expensereport_det.sql
@@ -45,7 +45,7 @@ CREATE TABLE llx_expensereport_det
info_bits integer DEFAULT 0, -- TVA NPR ou non
special_code integer DEFAULT 0, -- code for special lines
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_facture.sql b/htdocs/install/mysql/tables/llx_facture.sql
index 562d29efe97..081213868cc 100644
--- a/htdocs/install/mysql/tables/llx_facture.sql
+++ b/htdocs/install/mysql/tables/llx_facture.sql
@@ -100,7 +100,7 @@ create table llx_facture
extraparams varchar(255), -- for other parameters with json format
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_facture_fourn.sql b/htdocs/install/mysql/tables/llx_facture_fourn.sql
index 1b7401898ab..683f15623a6 100644
--- a/htdocs/install/mysql/tables/llx_facture_fourn.sql
+++ b/htdocs/install/mysql/tables/llx_facture_fourn.sql
@@ -83,7 +83,7 @@ create table llx_facture_fourn
extraparams varchar(255), -- for stock other parameters with json format
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_facture_fourn_det.sql b/htdocs/install/mysql/tables/llx_facture_fourn_det.sql
index 4012fb7087d..30f57fa184b 100644
--- a/htdocs/install/mysql/tables/llx_facture_fourn_det.sql
+++ b/htdocs/install/mysql/tables/llx_facture_fourn_det.sql
@@ -54,7 +54,7 @@ create table llx_facture_fourn_det
fk_unit integer DEFAULT NULL,
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_facture_rec.sql b/htdocs/install/mysql/tables/llx_facture_rec.sql
index c3cb6aeed46..bb65ea4b6d8 100644
--- a/htdocs/install/mysql/tables/llx_facture_rec.sql
+++ b/htdocs/install/mysql/tables/llx_facture_rec.sql
@@ -57,7 +57,7 @@ create table llx_facture_rec
modelpdf varchar(255),
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_facturedet.sql b/htdocs/install/mysql/tables/llx_facturedet.sql
index 5e48b16be09..9fabf237c62 100644
--- a/htdocs/install/mysql/tables/llx_facturedet.sql
+++ b/htdocs/install/mysql/tables/llx_facturedet.sql
@@ -70,7 +70,7 @@ create table llx_facturedet
fk_user_modif integer, -- user making last change
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_facturedet_rec.sql b/htdocs/install/mysql/tables/llx_facturedet_rec.sql
index f515276c442..c84c517d390 100644
--- a/htdocs/install/mysql/tables/llx_facturedet_rec.sql
+++ b/htdocs/install/mysql/tables/llx_facturedet_rec.sql
@@ -62,7 +62,7 @@ create table llx_facturedet_rec
fk_user_modif integer, -- user making last change
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_paiement_facture.sql b/htdocs/install/mysql/tables/llx_paiement_facture.sql
index f15f651f7ae..1728b698f34 100644
--- a/htdocs/install/mysql/tables/llx_paiement_facture.sql
+++ b/htdocs/install/mysql/tables/llx_paiement_facture.sql
@@ -23,7 +23,7 @@ create table llx_paiement_facture
fk_facture integer,
amount double(24,8) DEFAULT 0,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_amount double(24,8) DEFAULT 0
)ENGINE=innodb;
diff --git a/htdocs/install/mysql/tables/llx_paiementfourn_facturefourn.sql b/htdocs/install/mysql/tables/llx_paiementfourn_facturefourn.sql
index cb1b8441444..ab2e2bfa0f2 100644
--- a/htdocs/install/mysql/tables/llx_paiementfourn_facturefourn.sql
+++ b/htdocs/install/mysql/tables/llx_paiementfourn_facturefourn.sql
@@ -25,7 +25,7 @@ create table llx_paiementfourn_facturefourn
fk_facturefourn INTEGER DEFAULT NULL,
amount double(24,8) DEFAULT 0,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_amount double(24,8) DEFAULT 0
)ENGINE=innodb;
diff --git a/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql b/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql
index 51b691e8ae2..725d2bb30e2 100644
--- a/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql
+++ b/htdocs/install/mysql/tables/llx_product_fournisseur_price.sql
@@ -53,7 +53,7 @@ create table llx_product_fournisseur_price
packaging varchar(64),
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_unitprice double(24,8) DEFAULT NULL, -- unit price without tax
multicurrency_price double(24,8) DEFAULT NULL
diff --git a/htdocs/install/mysql/tables/llx_product_fournisseur_price_log.sql b/htdocs/install/mysql/tables/llx_product_fournisseur_price_log.sql
index cb59cc78bef..fdfc4176c0a 100644
--- a/htdocs/install/mysql/tables/llx_product_fournisseur_price_log.sql
+++ b/htdocs/install/mysql/tables/llx_product_fournisseur_price_log.sql
@@ -27,7 +27,7 @@ create table llx_product_fournisseur_price_log
fk_user integer,
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_unitprice double(24,8) DEFAULT NULL, -- unit price without tax
multicurrency_price double(24,8) DEFAULT NULL
diff --git a/htdocs/install/mysql/tables/llx_product_price.sql b/htdocs/install/mysql/tables/llx_product_price.sql
index 9ebbeed9f96..77a00939428 100644
--- a/htdocs/install/mysql/tables/llx_product_price.sql
+++ b/htdocs/install/mysql/tables/llx_product_price.sql
@@ -48,7 +48,7 @@ create table llx_product_price
import_key varchar(14),
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_price double(24,8) DEFAULT NULL,
multicurrency_price_ttc double(24,8) DEFAULT NULL
diff --git a/htdocs/install/mysql/tables/llx_product_price_by_qty.sql b/htdocs/install/mysql/tables/llx_product_price_by_qty.sql
index dc3a21bfedb..86cf28244ad 100644
--- a/htdocs/install/mysql/tables/llx_product_price_by_qty.sql
+++ b/htdocs/install/mysql/tables/llx_product_price_by_qty.sql
@@ -35,7 +35,7 @@ create table llx_product_price_by_qty
fk_user_modif integer,
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_price double(24,8) DEFAULT NULL,
multicurrency_price_ttc double(24,8) DEFAULT NULL,
diff --git a/htdocs/install/mysql/tables/llx_propal.sql b/htdocs/install/mysql/tables/llx_propal.sql
index 7c94086b3b9..3499a51e8b8 100644
--- a/htdocs/install/mysql/tables/llx_propal.sql
+++ b/htdocs/install/mysql/tables/llx_propal.sql
@@ -60,6 +60,9 @@ create table llx_propal
fk_cond_reglement integer, -- condition de reglement (30 jours, fin de mois ...)
fk_mode_reglement integer, -- mode de reglement (Virement, Prelevement)
+ online_sign_ip varchar(48),
+ online_sign_name varchar(64),
+
note_private text,
note_public text,
@@ -78,7 +81,7 @@ create table llx_propal
fk_delivery_address integer, -- delivery address (deprecated)
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_propaldet.sql b/htdocs/install/mysql/tables/llx_propaldet.sql
index 4dc9d570838..103118d6b77 100644
--- a/htdocs/install/mysql/tables/llx_propaldet.sql
+++ b/htdocs/install/mysql/tables/llx_propaldet.sql
@@ -57,7 +57,7 @@ create table llx_propaldet
fk_unit integer DEFAULT NULL, -- lien vers table des unités
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_societe.sql b/htdocs/install/mysql/tables/llx_societe.sql
index c30c934b792..c8b78d42fae 100644
--- a/htdocs/install/mysql/tables/llx_societe.sql
+++ b/htdocs/install/mysql/tables/llx_societe.sql
@@ -125,7 +125,7 @@ create table llx_societe
fk_user_modif integer, -- utilisateur qui a modifie l'info
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
import_key varchar(14) -- import key
)ENGINE=innodb;
diff --git a/htdocs/install/mysql/tables/llx_supplier_proposal.sql b/htdocs/install/mysql/tables/llx_supplier_proposal.sql
index cf64d76d7d1..0008f08642f 100644
--- a/htdocs/install/mysql/tables/llx_supplier_proposal.sql
+++ b/htdocs/install/mysql/tables/llx_supplier_proposal.sql
@@ -56,7 +56,7 @@ CREATE TABLE llx_supplier_proposal (
extraparams varchar(255) DEFAULT NULL,
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_tx double(24,8) DEFAULT 1,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/install/mysql/tables/llx_supplier_proposaldet.sql b/htdocs/install/mysql/tables/llx_supplier_proposaldet.sql
index 4e3d8bd13f9..bbf3decd7fa 100644
--- a/htdocs/install/mysql/tables/llx_supplier_proposaldet.sql
+++ b/htdocs/install/mysql/tables/llx_supplier_proposaldet.sql
@@ -49,7 +49,7 @@ CREATE TABLE llx_supplier_proposaldet (
rang integer DEFAULT 0,
ref_fourn varchar(30) DEFAULT NULL,
fk_multicurrency integer,
- multicurrency_code varchar(255),
+ multicurrency_code varchar(3),
multicurrency_subprice double(24,8) DEFAULT 0,
multicurrency_total_ht double(24,8) DEFAULT 0,
multicurrency_total_tva double(24,8) DEFAULT 0,
diff --git a/htdocs/langs/de_AT/modulebuilder.lang b/htdocs/langs/de_AT/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/de_AT/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/de_CH/modulebuilder.lang b/htdocs/langs/de_CH/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/de_CH/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/el_CY/propal.lang b/htdocs/langs/el_CY/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/el_CY/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/en_AE/accountancy.lang b/htdocs/langs/en_AE/accountancy.lang
new file mode 100644
index 00000000000..fd4bce2d49b
--- /dev/null
+++ b/htdocs/langs/en_AE/accountancy.lang
@@ -0,0 +1,3 @@
+# Dolibarr language file - Source file is en_US - accountancy
+NotifiedExportDate=Flag exported lines as exported (modification of the lines will not be possible)
+NotifiedValidationDate=Validate the exported entries (modification or deletion of the lines will not be possible)
diff --git a/htdocs/langs/en_AE/cashdesk.lang b/htdocs/langs/en_AE/cashdesk.lang
new file mode 100644
index 00000000000..19dc45d5847
--- /dev/null
+++ b/htdocs/langs/en_AE/cashdesk.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - cashdesk
+NotAvailableWithBrowserPrinter=Not available when printer for receipt is set to browser
diff --git a/htdocs/langs/en_AE/compta.lang b/htdocs/langs/en_AE/compta.lang
new file mode 100644
index 00000000000..21e186d2a79
--- /dev/null
+++ b/htdocs/langs/en_AE/compta.lang
@@ -0,0 +1,8 @@
+# Dolibarr language file - Source file is en_US - compta
+VATReportByThirdParties=Sales tax report by third party
+InvoiceLate30Days =Invoices late (> 30 days)
+InvoiceLate15Days =Invoices late (15 to 30 days)
+InvoiceLateMinus15Days =Invoices late (< 15 days)
+InvoiceNotLate =To be collected (< 15 days)
+InvoiceNotLate15Days =To be collected (15 to 30 days)
+InvoiceNotLate30Days =To be collected (> 30 days)
diff --git a/htdocs/langs/en_AE/errors.lang b/htdocs/langs/en_AE/errors.lang
new file mode 100644
index 00000000000..b701bac654c
--- /dev/null
+++ b/htdocs/langs/en_AE/errors.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - errors
+ErrorRecordHasAtLeastOneChildOfType=Object %s has at least one child of type %s
diff --git a/htdocs/langs/en_AE/eventorganization.lang b/htdocs/langs/en_AE/eventorganization.lang
new file mode 100644
index 00000000000..dac8822b8d7
--- /dev/null
+++ b/htdocs/langs/en_AE/eventorganization.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - eventorganization
+EventOrganizationDescriptionLong=Manage the organization of an event (show, conferences, attendees or speakers, with public pages for suggestion, vote or registration)
diff --git a/htdocs/langs/en_AE/members.lang b/htdocs/langs/en_AE/members.lang
new file mode 100644
index 00000000000..a4efe013601
--- /dev/null
+++ b/htdocs/langs/en_AE/members.lang
@@ -0,0 +1,3 @@
+# Dolibarr language file - Source file is en_US - members
+MembersTickets=Membership address sheet
+NewSubscription=New contribution
diff --git a/htdocs/langs/en_AE/modulebuilder.lang b/htdocs/langs/en_AE/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/en_AE/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/en_AE/mrp.lang b/htdocs/langs/en_AE/mrp.lang
new file mode 100644
index 00000000000..e0e12fc5350
--- /dev/null
+++ b/htdocs/langs/en_AE/mrp.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - mrp
+ConfirmDeleteMo=Are you sure you want to delete this Manufacturing Order?
diff --git a/htdocs/langs/en_AE/orders.lang b/htdocs/langs/en_AE/orders.lang
new file mode 100644
index 00000000000..bed33ccde24
--- /dev/null
+++ b/htdocs/langs/en_AE/orders.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - orders
+SaleOrderLines=Sales order lines
diff --git a/htdocs/langs/en_AE/printing.lang b/htdocs/langs/en_AE/printing.lang
new file mode 100644
index 00000000000..31440f79aed
--- /dev/null
+++ b/htdocs/langs/en_AE/printing.lang
@@ -0,0 +1,7 @@
+# Dolibarr language file - Source file is en_US - printing
+Module64000Name=One click Printing
+Module64000Desc=Enable One click Printing System
+PrintingSetup=Setup of One click Printing System
+PrintingDesc=This module adds a Print button to various modules to allow documents to be printed directly to a printer with no need to open the document into another application.
+MenuDirectPrinting=One click Printing jobs
+DirectPrint=One click Print
diff --git a/htdocs/langs/en_AE/products.lang b/htdocs/langs/en_AE/products.lang
new file mode 100644
index 00000000000..a50a97fd8db
--- /dev/null
+++ b/htdocs/langs/en_AE/products.lang
@@ -0,0 +1,3 @@
+# Dolibarr language file - Source file is en_US - products
+IncludingProductWithTag=Including products/services with the tag
+UseProductFournDesc=Add a feature to define the product description defined by the vendors (for each vendor reference) in addition to the description for customers
diff --git a/htdocs/langs/en_AE/propal.lang b/htdocs/langs/en_AE/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/en_AE/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/en_AE/receptions.lang b/htdocs/langs/en_AE/receptions.lang
new file mode 100644
index 00000000000..088c09f1f33
--- /dev/null
+++ b/htdocs/langs/en_AE/receptions.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - receptions
+ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the Purchase Order record.
diff --git a/htdocs/langs/en_AE/sendings.lang b/htdocs/langs/en_AE/sendings.lang
new file mode 100644
index 00000000000..c4a28b980b9
--- /dev/null
+++ b/htdocs/langs/en_AE/sendings.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - sendings
+ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the Sales Order record.
diff --git a/htdocs/langs/en_AE/stocks.lang b/htdocs/langs/en_AE/stocks.lang
new file mode 100644
index 00000000000..eaebe0207bc
--- /dev/null
+++ b/htdocs/langs/en_AE/stocks.lang
@@ -0,0 +1,3 @@
+# Dolibarr language file - Source file is en_US - stocks
+WarehouseAskWarehouseDuringOrder=Set a warehouse on Sales Orders
+VirtualStockAtDate=Virtual stock at a future date
diff --git a/htdocs/langs/en_AE/ticket.lang b/htdocs/langs/en_AE/ticket.lang
new file mode 100644
index 00000000000..64a5c8d3778
--- /dev/null
+++ b/htdocs/langs/en_AE/ticket.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - ticket
+BoxNewTicketVSClose=Number of tickets versus closed tickets (today)
diff --git a/htdocs/langs/en_AE/trips.lang b/htdocs/langs/en_AE/trips.lang
new file mode 100644
index 00000000000..dd9decdd4fe
--- /dev/null
+++ b/htdocs/langs/en_AE/trips.lang
@@ -0,0 +1,6 @@
+# Dolibarr language file - Source file is en_US - trips
+ExpenseReportRulesDesc=You can define max amount rules for expense reports. These rules will be applied when a new expense is added to an expense report
+ExpenseReportLimitAmount=Max amount
+ExpenseReportRestrictive=Exceeding forbidden
+ExpenseReportConstraintViolationError=Max amount exceeded (rule %s): %s is higher than %s (Exceeding forbidden)
+ExpenseReportConstraintViolationWarning=Max amount exceeded (rule %s): %s is higher than %s (Exceeding authorized)
diff --git a/htdocs/langs/en_AU/modulebuilder.lang b/htdocs/langs/en_AU/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/en_AU/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/en_AU/propal.lang b/htdocs/langs/en_AU/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/en_AU/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/en_AU/ticket.lang b/htdocs/langs/en_AU/ticket.lang
new file mode 100644
index 00000000000..64a5c8d3778
--- /dev/null
+++ b/htdocs/langs/en_AU/ticket.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - ticket
+BoxNewTicketVSClose=Number of tickets versus closed tickets (today)
diff --git a/htdocs/langs/en_CA/modulebuilder.lang b/htdocs/langs/en_CA/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/en_CA/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/en_CA/propal.lang b/htdocs/langs/en_CA/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/en_CA/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/en_CA/ticket.lang b/htdocs/langs/en_CA/ticket.lang
new file mode 100644
index 00000000000..64a5c8d3778
--- /dev/null
+++ b/htdocs/langs/en_CA/ticket.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - ticket
+BoxNewTicketVSClose=Number of tickets versus closed tickets (today)
diff --git a/htdocs/langs/en_GB/modulebuilder.lang b/htdocs/langs/en_GB/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/en_GB/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/en_GB/ticket.lang b/htdocs/langs/en_GB/ticket.lang
new file mode 100644
index 00000000000..64a5c8d3778
--- /dev/null
+++ b/htdocs/langs/en_GB/ticket.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - ticket
+BoxNewTicketVSClose=Number of tickets versus closed tickets (today)
diff --git a/htdocs/langs/en_IN/modulebuilder.lang b/htdocs/langs/en_IN/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/en_IN/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/en_IN/ticket.lang b/htdocs/langs/en_IN/ticket.lang
new file mode 100644
index 00000000000..64a5c8d3778
--- /dev/null
+++ b/htdocs/langs/en_IN/ticket.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - ticket
+BoxNewTicketVSClose=Number of tickets versus closed tickets (today)
diff --git a/htdocs/langs/en_SG/modulebuilder.lang b/htdocs/langs/en_SG/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/en_SG/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/en_SG/propal.lang b/htdocs/langs/en_SG/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/en_SG/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/en_SG/ticket.lang b/htdocs/langs/en_SG/ticket.lang
new file mode 100644
index 00000000000..64a5c8d3778
--- /dev/null
+++ b/htdocs/langs/en_SG/ticket.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - ticket
+BoxNewTicketVSClose=Number of tickets versus closed tickets (today)
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index 28d585b8f6f..4601f2c15b9 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -265,8 +265,8 @@ OtherResources=Other resources
ExternalResources=External Resources
SocialNetworks=Social Networks
SocialNetworkId=Social Network ID
-ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...), take a look at the Dolibarr Wiki: %s
-ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum: %s
+ForDocumentationSeeWiki=For user or developer documentation (Doc, FAQs...), take a look at the Dolibarr Wiki: %s
+ForAnswersSeeForum=For any other questions/help, you can use the Dolibarr forum: %s
HelpCenterDesc1=Here are some resources for getting help and support with Dolibarr.
HelpCenterDesc2=Some of these resources are only available in english.
CurrentMenuHandler=Current menu handler
@@ -762,6 +762,7 @@ Permission121=Read third parties linked to user
Permission122=Create/modify third parties linked to user
Permission125=Delete third parties linked to user
Permission126=Export third parties
+Permission130=Create/modify third parties payment information
Permission141=Read all projects and tasks (also private projects for which I am not a contact)
Permission142=Create/modify all projects and tasks (also private projects for which I am not a contact)
Permission144=Delete all projects and tasks (also private projects i am not contact for)
diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang
index 3aaa5465ca0..930a6489b83 100644
--- a/htdocs/langs/en_US/bills.lang
+++ b/htdocs/langs/en_US/bills.lang
@@ -604,3 +604,4 @@ SituationTotalProgress=Total progress %d %%
SearchUnpaidInvoicesWithDueDate=Search unpaid invoices with a due date = %s
NoPaymentAvailable=No payment available for %s
PaymentRegisteredAndInvoiceSetToPaid=Payment registered and invoice %s set to paid
+SendEmailsRemindersOnInvoiceDueDate=Send reminder by email for unpaid invoices
diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang
index 616619adb92..3a97af20788 100644
--- a/htdocs/langs/en_US/companies.lang
+++ b/htdocs/langs/en_US/companies.lang
@@ -369,7 +369,7 @@ VATIntraCheck=Check
VATIntraCheckDesc=The VAT ID must include the country prefix. The link %s uses the European VAT checker service (VIES) which requires internet access from the Dolibarr server.
VATIntraCheckURL=http://ec.europa.eu/taxation_customs/vies/vieshome.do
VATIntraCheckableOnEUSite=Check the intra-Community VAT ID on the European Commission website
-VATIntraManualCheck=You can also check manually on the European Commission website %s
+VATIntraManualCheck=You can also check manually on the European Commission website %s
ErrorVATCheckMS_UNAVAILABLE=Check not possible. Check service is not provided by the member state (%s).
NorProspectNorCustomer=Not prospect, nor customer
JuridicalStatus=Business entity type
diff --git a/htdocs/langs/en_US/compta.lang b/htdocs/langs/en_US/compta.lang
index ace3e518003..0a17b937b1f 100644
--- a/htdocs/langs/en_US/compta.lang
+++ b/htdocs/langs/en_US/compta.lang
@@ -294,4 +294,6 @@ InvoiceNotLate15Days = To be collected (15 to 30 days)
InvoiceNotLate30Days = To be collected (> 30 days)
InvoiceToPay=To pay (< 15 days)
InvoiceToPay15Days=To pay (15 to 30 days)
-InvoiceToPay30Days=To pay (> 30 days)
\ No newline at end of file
+InvoiceToPay30Days=To pay (> 30 days)
+ConfirmPreselectAccount=Preselect accountancy code
+ConfirmPreselectAccountQuestion=Are you sure you want to preselect the %s selected lines with this accountancy code ?
diff --git a/htdocs/langs/en_US/help.lang b/htdocs/langs/en_US/help.lang
index 048de16d3c0..d699cb56fd2 100644
--- a/htdocs/langs/en_US/help.lang
+++ b/htdocs/langs/en_US/help.lang
@@ -20,4 +20,4 @@ BackToHelpCenter=Otherwise, go back to Help center home page.
LinkToGoldMember=You can call one of the trainers preselected by Dolibarr for your language (%s) by clicking their Widget (status and maximum price are automatically updated):
PossibleLanguages=Supported languages
SubscribeToFoundation=Help the Dolibarr project, subscribe to the foundation
-SeeOfficalSupport=For official Dolibarr support in your language: %s
+SeeOfficalSupport=For official Dolibarr support in your language: %s
diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang
index a81aa0a836a..4544525e020 100644
--- a/htdocs/langs/en_US/main.lang
+++ b/htdocs/langs/en_US/main.lang
@@ -906,7 +906,7 @@ ViewFlatList=View flat list
ViewAccountList=View ledger
ViewSubAccountList=View subaccount ledger
RemoveString=Remove string '%s'
-SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements.
+SomeTranslationAreUncomplete=Some of the languages offered may be only partially translated or may contain errors. Please help to correct your language by registering at https://transifex.com/projects/p/dolibarr/ to add your improvements.
DirectDownloadLink=Public download link
PublicDownloadLinkDesc=Only the link is required to download the file
DirectDownloadInternalLink=Private download link
@@ -1159,4 +1159,6 @@ hasBeenValidated=%s has been validated
ClientTZ=Client Time Zone (user)
NotClosedYet=Not yet closed
ClearSignature=Signature reset
+CanceledHidden=Canceled hidden
+CanceledShown=Canceled shown
AddLineOnPosition=Add line on position (at the end if empty)
diff --git a/htdocs/langs/en_US/modulebuilder.lang b/htdocs/langs/en_US/modulebuilder.lang
index e479438769d..bc4e3b5be59 100644
--- a/htdocs/langs/en_US/modulebuilder.lang
+++ b/htdocs/langs/en_US/modulebuilder.lang
@@ -1,5 +1,5 @@
# Dolibarr language file - Source file is en_US - loan
-ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here.
+ModuleBuilderDesc=This tool must be used only by experienced users or developers. It provides utilities to build or edit your own module. Documentation for alternative manual development is here.
EnterNameOfModuleDesc=Enter name of the module/application to create with no spaces. Use uppercase to separate words (For example: MyModule, EcommerceForShop, SyncWithMySystem...)
EnterNameOfObjectDesc=Enter name of the object to create with no spaces. Use uppercase to separate words (For example: MyObject, Student, Teacher...). The CRUD class file, but also API file, pages to list/add/edit/delete object and SQL files will be generated.
ModuleBuilderDesc2=Path where modules are generated/edited (first directory for external modules defined into %s): %s
diff --git a/htdocs/langs/en_US/oauth.lang b/htdocs/langs/en_US/oauth.lang
index d52422a194a..dda6f1bdf73 100644
--- a/htdocs/langs/en_US/oauth.lang
+++ b/htdocs/langs/en_US/oauth.lang
@@ -23,10 +23,10 @@ TOKEN_DELETE=Delete saved token
OAUTH_GOOGLE_NAME=OAuth Google service
OAUTH_GOOGLE_ID=OAuth Google Id
OAUTH_GOOGLE_SECRET=OAuth Google Secret
-OAUTH_GOOGLE_DESC=Go to this page then "Credentials" to create OAuth credentials
+OAUTH_GOOGLE_DESC=Go to this page then "Credentials" to create OAuth credentials
OAUTH_GITHUB_NAME=OAuth GitHub service
OAUTH_GITHUB_ID=OAuth GitHub Id
OAUTH_GITHUB_SECRET=OAuth GitHub Secret
-OAUTH_GITHUB_DESC=Go to this page then "Register a new application" to create OAuth credentials
+OAUTH_GITHUB_DESC=Go to this page then "Register a new application" to create OAuth credentials
OAUTH_STRIPE_TEST_NAME=OAuth Stripe Test
OAUTH_STRIPE_LIVE_NAME=OAuth Stripe Live
\ No newline at end of file
diff --git a/htdocs/langs/en_US/paybox.lang b/htdocs/langs/en_US/paybox.lang
index 6f320c03181..a2bfb1773e4 100644
--- a/htdocs/langs/en_US/paybox.lang
+++ b/htdocs/langs/en_US/paybox.lang
@@ -1,6 +1,6 @@
# Dolibarr language file - Source file is en_US - paybox
PayBoxSetup=PayBox module setup
-PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...)
+PayBoxDesc=This module offer pages to allow payment on Paybox by customers. This can be used for a free payment or for a payment on a particular Dolibarr object (invoice, order, ...)
FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects
PaymentForm=Payment form
WelcomeOnPaymentPage=Welcome to our online payment service
diff --git a/htdocs/langs/en_US/paypal.lang b/htdocs/langs/en_US/paypal.lang
index 5eb5f389445..beaf9a5ea3f 100644
--- a/htdocs/langs/en_US/paypal.lang
+++ b/htdocs/langs/en_US/paypal.lang
@@ -1,6 +1,6 @@
# Dolibarr language file - Source file is en_US - paypal
PaypalSetup=PayPal module setup
-PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...)
+PaypalDesc=This module allows payment by customers via PayPal. This can be used for a ad-hoc payment or for a payment related to a Dolibarr object (invoice, order, ...)
PaypalOrCBDoPayment=Pay with PayPal (Card or PayPal)
PaypalDoPayment=Pay with PayPal
PAYPAL_API_SANDBOX=Mode test/sandbox
diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang
index 0b713a2197b..c19f32a0396 100644
--- a/htdocs/langs/en_US/projects.lang
+++ b/htdocs/langs/en_US/projects.lang
@@ -281,6 +281,6 @@ AddPersonToTask=Add also to tasks
UsageOrganizeEvent=Usage: Event Organization
PROJECT_CLASSIFY_CLOSED_WHEN_ALL_TASKS_DONE=Classify project as closed when all its tasks are completed (100%% progress)
PROJECT_CLASSIFY_CLOSED_WHEN_ALL_TASKS_DONE_help=Note: existing projects with all tasks at 100 %% progress won't be affected: you will have to close them manually. This option only affects open projects.
-SelectLinesOfTimeSpentToInvoice=Select lines of time spent that are unbilled, then bulk action "Generate Invoice" to bill them
+SelectLinesOfTimeSpentToInvoice=Select lines of time spent that are unbilled, then bulk action "Generate Invoice" to bill them
ProjectTasksWithoutTimeSpent=Project tasks without time spent
-FormForNewLeadDesc=Thanks to fill the following form to contact us. You can also send us an email directly to %s.
\ No newline at end of file
+FormForNewLeadDesc=Thanks to fill the following form to contact us. You can also send us an email directly to %s.
diff --git a/htdocs/langs/en_US/receptions.lang b/htdocs/langs/en_US/receptions.lang
index 46b2d689609..d9e8bdeebb7 100644
--- a/htdocs/langs/en_US/receptions.lang
+++ b/htdocs/langs/en_US/receptions.lang
@@ -23,7 +23,9 @@ ReceptionsAndReceivingForSameOrder=Receptions and receipts for this order
ReceptionsToValidate=Receptions to validate
StatusReceptionCanceled=Canceled
StatusReceptionDraft=Draft
-StatusReceptionValidated=Validated (products to ship or already shipped)
+StatusReceptionValidated=Validated (products to receive or already received)
+StatusReceptionValidatedToReceive=Validated (products to receive)
+StatusReceptionValidatedReceived=Validated (products received)
StatusReceptionProcessed=Processed
StatusReceptionDraftShort=Draft
StatusReceptionValidatedShort=Validated
@@ -36,7 +38,7 @@ StatsOnReceptionsOnlyValidated=Statistics conducted on receptions only validated
SendReceptionByEMail=Send reception by email
SendReceptionRef=Submission of reception %s
ActionsOnReception=Events on reception
-ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the Purchase Order record.
+ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the Purchase Order.
ReceptionLine=Reception line
ProductQtyInReceptionAlreadySent=Product quantity from open sales order already sent
ProductQtyInSuppliersReceptionAlreadyRecevied=Product quantity from open supplier order already received
@@ -46,3 +48,6 @@ ReceptionsReceiptModel=Document templates for receptions
NoMorePredefinedProductToDispatch=No more predefined products to dispatch
ReceptionExist=A reception exists
ByingPrice=Bying price
+ReceptionBackToDraftInDolibarr=Reception %s back to draft
+ReceptionClassifyClosedInDolibarr=Reception %s classified Closed
+ReceptionUnClassifyCloseddInDolibarr=Reception %s re-open
\ No newline at end of file
diff --git a/htdocs/langs/en_US/salaries.lang b/htdocs/langs/en_US/salaries.lang
index c0e115a20df..20a10694500 100644
--- a/htdocs/langs/en_US/salaries.lang
+++ b/htdocs/langs/en_US/salaries.lang
@@ -24,3 +24,4 @@ SalariesStatistics=Salary statistics
SalariesAndPayments=Salaries and payments
ConfirmDeleteSalaryPayment=Do you want to delete this salary payment ?
FillFieldFirst=Fill employee field first
+UpdateAmountWithLastSalary=Set amount with last salary
diff --git a/htdocs/langs/en_US/stocks.lang b/htdocs/langs/en_US/stocks.lang
index 19875f55148..0110943b000 100644
--- a/htdocs/langs/en_US/stocks.lang
+++ b/htdocs/langs/en_US/stocks.lang
@@ -178,6 +178,7 @@ ProductStockWarehouseDeleted=Stock limit for alert and desired optimal stock cor
AddNewProductStockWarehouse=Set new limit for alert and desired optimal stock
AddStockLocationLine=Decrease quantity then click to add another warehouse for this product
InventoryDate=Inventory date
+Inventories=Inventories
NewInventory=New inventory
inventorySetup = Inventory Setup
inventoryCreatePermission=Create new inventory
@@ -206,8 +207,8 @@ INVENTORY_USE_INVENTORY_DATE_FOR_DATE_OF_MVT=Stock movements will have the date
inventoryChangePMPPermission=Allow to change PMP value for a product
ColumnNewPMP=New unit PMP
OnlyProdsInStock=Do not add product without stock
-TheoricalQty=Theorique qty
-TheoricalValue=Theorique qty
+TheoricalQty=Theorical qty
+TheoricalValue=Theorical qty
LastPA=Last BP
CurrentPA=Curent BP
RecordedQty=Recorded Qty
@@ -264,3 +265,5 @@ ProductBatchDoesNotExist=Product with batch/serial does not exist
ProductBarcodeDoesNotExist=Product with barcode does not exist
WarehouseId=Warehouse ID
WarehouseRef=Warehouse Ref
+SaveQtyFirst=Save the real inventoried quantities first, before asking creation of the stock movement.
+InventoryStartedShort=Started
\ No newline at end of file
diff --git a/htdocs/langs/en_US/stripe.lang b/htdocs/langs/en_US/stripe.lang
index 0eba2f5c286..d245df3f6cb 100644
--- a/htdocs/langs/en_US/stripe.lang
+++ b/htdocs/langs/en_US/stripe.lang
@@ -1,6 +1,6 @@
# Dolibarr language file - Source file is en_US - stripe
StripeSetup=Stripe module setup
-StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...)
+StripeDesc=Offer customers a Stripe online payment page for payments with credit/cebit cards via Stripe. This can be used to allow your customers to make ad-hoc payments or for payments related to a particular Dolibarr object (invoice, order, ...)
StripeOrCBDoPayment=Pay with credit card or Stripe
FollowingUrlAreAvailableToMakePayments=Following URLs are available to offer a page to a customer to make a payment on Dolibarr objects
PaymentForm=Payment form
diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang
index cd1964ff383..b5ef14bd118 100644
--- a/htdocs/langs/en_US/website.lang
+++ b/htdocs/langs/en_US/website.lang
@@ -45,7 +45,7 @@ ViewWebsiteInProduction=View web site using home URLs
SetHereVirtualHost=Use with Apache/NGinx/... Create on your web server (Apache, Nginx, ...) a dedicated Virtual Host with PHP enabled and a Root directory on %s
ExampleToUseInApacheVirtualHostConfig=Example to use in Apache virtual host setup:
YouCanAlsoTestWithPHPS=Use with PHP embedded server On develop environment, you may prefer to test the site with the PHP embedded web server (PHP 5.5 required) by running php -S 0.0.0.0:8080 -t %s
-YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org
+YouCanAlsoDeployToAnotherWHP=Run your web site with another Dolibarr Hosting provider If you don't have a web server like Apache or NGinx available on internet, you can export and import your web site onto another Dolibarr instance provided by another Dolibarr hosting provider that provide full integration with the Website module. You can find a list of some Dolibarr hosting providers on https://saas.dolibarr.org
CheckVirtualHostPerms=Check also that the virtual host user (for example www-data) has %s permissions on files into %s
ReadPerm=Read
WritePerm=Write
@@ -60,7 +60,7 @@ YouCanEditHtmlSourceckeditor=You can edit HTML source code using the "Source" bu
YouCanEditHtmlSource= You can include PHP code into this source using tags <?php ?>. The following global variables are available: $conf, $db, $mysoc, $user, $website, $websitepage, $weblangs, $pagelangs.
You can also include content of another Page/Container with the following syntax: <?php includeContainer('alias_of_container_to_include'); ?>
You can make a redirect to another Page/Container with the following syntax (Note: do not output any content before a redirect): <?php redirectToContainer('alias_of_container_to_redirect_to'); ?>
To add a link to another page, use the syntax: <a href="alias_of_page_to_link_to.php">mylink<a>
To include a link to download a file stored into the documents directory, use the document.php wrapper: Example, for a file into documents/ecm (need to be logged), syntax is: <a href="/document.php?modulepart=ecm&file=[relative_dir/]filename.ext"> For a file into documents/medias (open directory for public access), syntax is: <a href="/document.php?modulepart=medias&file=[relative_dir/]filename.ext"> For a file shared with a share link (open access using the sharing hash key of file), syntax is: <a href="/document.php?hashp=publicsharekeyoffile">
To include an image stored into the documents directory, use the viewimage.php wrapper: Example, for an image into documents/medias (open directory for public access), syntax is: <img src="/viewimage.php?modulepart=medias&file=[relative_dir/]filename.ext">
#YouCanEditHtmlSource2= To include a image shared publicaly, use the viewimage.php wrapper: Example with a shared key 123456789, syntax is: <img src="/viewimage.php?hashp=12345679012...">
YouCanEditHtmlSource2=For an image shared with a share link (open access using the sharing hash key of file), syntax is: <img src="/viewimage.php?hashp=12345679012...">
-YouCanEditHtmlSourceMore= More examples of HTML or dynamic code available on the wiki documentation .
+YouCanEditHtmlSourceMore= More examples of HTML or dynamic code available on the wiki documentation .
ClonePage=Clone page/container
CloneSite=Clone site
SiteAdded=Website added
diff --git a/htdocs/langs/en_US/workflow.lang b/htdocs/langs/en_US/workflow.lang
index fafbc6e8d8a..b65f8449fef 100644
--- a/htdocs/langs/en_US/workflow.lang
+++ b/htdocs/langs/en_US/workflow.lang
@@ -14,9 +14,13 @@ descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER=Classify linked source sales o
descWORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER=Classify linked source sales order as billed when customer invoice is set to paid (and if the amount of the invoice is the same as the total amount of the linked order)
descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING=Classify linked source sales order as shipped when a shipment is validated (and if the quantity shipped by all shipments is the same as in the order to update)
descWORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING_CLOSED=Classify linked source sales order as shipped when a shipment is closed (and if the quantity shipped by all shipments is the same as in the order to update)
-# Autoclassify purchase order
+# Autoclassify purchase proposal
descWORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL=Classify linked source vendor proposal as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked proposal)
+# Autoclassify purchase order
descWORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER=Classify linked source purchase order as billed when vendor invoice is validated (and if the amount of the invoice is the same as the total amount of the linked order)
+descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION=Classify linked source purchase order as received when a reception is validated (and if the quantity received by all receptions is the same as in the purchase order to update)
+descWORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED=Classify linked source purchase order as received when a reception is closed (and if the quantity received by all rceptions is the same as in the purchase order to update)
+# Autoclassify purchase invoice
descWORKFLOW_BILL_ON_RECEPTION=Classify receptions to "billed" when a linked supplier order is validated
# Autoclose intervention
descWORKFLOW_TICKET_CLOSE_INTERVENTION=Close all interventions linked to the ticket when a ticket is closed
diff --git a/htdocs/langs/en_ZA/accountancy.lang b/htdocs/langs/en_ZA/accountancy.lang
new file mode 100644
index 00000000000..fd4bce2d49b
--- /dev/null
+++ b/htdocs/langs/en_ZA/accountancy.lang
@@ -0,0 +1,3 @@
+# Dolibarr language file - Source file is en_US - accountancy
+NotifiedExportDate=Flag exported lines as exported (modification of the lines will not be possible)
+NotifiedValidationDate=Validate the exported entries (modification or deletion of the lines will not be possible)
diff --git a/htdocs/langs/en_ZA/cashdesk.lang b/htdocs/langs/en_ZA/cashdesk.lang
new file mode 100644
index 00000000000..19dc45d5847
--- /dev/null
+++ b/htdocs/langs/en_ZA/cashdesk.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - cashdesk
+NotAvailableWithBrowserPrinter=Not available when printer for receipt is set to browser
diff --git a/htdocs/langs/en_ZA/compta.lang b/htdocs/langs/en_ZA/compta.lang
new file mode 100644
index 00000000000..21e186d2a79
--- /dev/null
+++ b/htdocs/langs/en_ZA/compta.lang
@@ -0,0 +1,8 @@
+# Dolibarr language file - Source file is en_US - compta
+VATReportByThirdParties=Sales tax report by third party
+InvoiceLate30Days =Invoices late (> 30 days)
+InvoiceLate15Days =Invoices late (15 to 30 days)
+InvoiceLateMinus15Days =Invoices late (< 15 days)
+InvoiceNotLate =To be collected (< 15 days)
+InvoiceNotLate15Days =To be collected (15 to 30 days)
+InvoiceNotLate30Days =To be collected (> 30 days)
diff --git a/htdocs/langs/en_ZA/errors.lang b/htdocs/langs/en_ZA/errors.lang
new file mode 100644
index 00000000000..b701bac654c
--- /dev/null
+++ b/htdocs/langs/en_ZA/errors.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - errors
+ErrorRecordHasAtLeastOneChildOfType=Object %s has at least one child of type %s
diff --git a/htdocs/langs/en_ZA/eventorganization.lang b/htdocs/langs/en_ZA/eventorganization.lang
new file mode 100644
index 00000000000..dac8822b8d7
--- /dev/null
+++ b/htdocs/langs/en_ZA/eventorganization.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - eventorganization
+EventOrganizationDescriptionLong=Manage the organization of an event (show, conferences, attendees or speakers, with public pages for suggestion, vote or registration)
diff --git a/htdocs/langs/en_ZA/members.lang b/htdocs/langs/en_ZA/members.lang
new file mode 100644
index 00000000000..a4efe013601
--- /dev/null
+++ b/htdocs/langs/en_ZA/members.lang
@@ -0,0 +1,3 @@
+# Dolibarr language file - Source file is en_US - members
+MembersTickets=Membership address sheet
+NewSubscription=New contribution
diff --git a/htdocs/langs/en_ZA/modulebuilder.lang b/htdocs/langs/en_ZA/modulebuilder.lang
new file mode 100644
index 00000000000..5db0d6ffc2c
--- /dev/null
+++ b/htdocs/langs/en_ZA/modulebuilder.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - modulebuilder
+TriggerDefDesc=Define in the trigger file the code that you want to execute when a business event external to your module is executed (events recorded by other modules).
diff --git a/htdocs/langs/en_ZA/mrp.lang b/htdocs/langs/en_ZA/mrp.lang
new file mode 100644
index 00000000000..e0e12fc5350
--- /dev/null
+++ b/htdocs/langs/en_ZA/mrp.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - mrp
+ConfirmDeleteMo=Are you sure you want to delete this Manufacturing Order?
diff --git a/htdocs/langs/en_ZA/orders.lang b/htdocs/langs/en_ZA/orders.lang
new file mode 100644
index 00000000000..bed33ccde24
--- /dev/null
+++ b/htdocs/langs/en_ZA/orders.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - orders
+SaleOrderLines=Sales order lines
diff --git a/htdocs/langs/en_ZA/printing.lang b/htdocs/langs/en_ZA/printing.lang
new file mode 100644
index 00000000000..31440f79aed
--- /dev/null
+++ b/htdocs/langs/en_ZA/printing.lang
@@ -0,0 +1,7 @@
+# Dolibarr language file - Source file is en_US - printing
+Module64000Name=One click Printing
+Module64000Desc=Enable One click Printing System
+PrintingSetup=Setup of One click Printing System
+PrintingDesc=This module adds a Print button to various modules to allow documents to be printed directly to a printer with no need to open the document into another application.
+MenuDirectPrinting=One click Printing jobs
+DirectPrint=One click Print
diff --git a/htdocs/langs/en_ZA/products.lang b/htdocs/langs/en_ZA/products.lang
new file mode 100644
index 00000000000..a50a97fd8db
--- /dev/null
+++ b/htdocs/langs/en_ZA/products.lang
@@ -0,0 +1,3 @@
+# Dolibarr language file - Source file is en_US - products
+IncludingProductWithTag=Including products/services with the tag
+UseProductFournDesc=Add a feature to define the product description defined by the vendors (for each vendor reference) in addition to the description for customers
diff --git a/htdocs/langs/en_ZA/propal.lang b/htdocs/langs/en_ZA/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/en_ZA/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/en_ZA/receptions.lang b/htdocs/langs/en_ZA/receptions.lang
new file mode 100644
index 00000000000..088c09f1f33
--- /dev/null
+++ b/htdocs/langs/en_ZA/receptions.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - receptions
+ReceptionCreationIsDoneFromOrder=For the moment, creation of a new reception is done from the Purchase Order record.
diff --git a/htdocs/langs/en_ZA/sendings.lang b/htdocs/langs/en_ZA/sendings.lang
new file mode 100644
index 00000000000..c4a28b980b9
--- /dev/null
+++ b/htdocs/langs/en_ZA/sendings.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - sendings
+ShipmentCreationIsDoneFromOrder=For the moment, creation of a new shipment is done from the Sales Order record.
diff --git a/htdocs/langs/en_ZA/stocks.lang b/htdocs/langs/en_ZA/stocks.lang
new file mode 100644
index 00000000000..eaebe0207bc
--- /dev/null
+++ b/htdocs/langs/en_ZA/stocks.lang
@@ -0,0 +1,3 @@
+# Dolibarr language file - Source file is en_US - stocks
+WarehouseAskWarehouseDuringOrder=Set a warehouse on Sales Orders
+VirtualStockAtDate=Virtual stock at a future date
diff --git a/htdocs/langs/en_ZA/ticket.lang b/htdocs/langs/en_ZA/ticket.lang
new file mode 100644
index 00000000000..64a5c8d3778
--- /dev/null
+++ b/htdocs/langs/en_ZA/ticket.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - ticket
+BoxNewTicketVSClose=Number of tickets versus closed tickets (today)
diff --git a/htdocs/langs/en_ZA/trips.lang b/htdocs/langs/en_ZA/trips.lang
new file mode 100644
index 00000000000..dd9decdd4fe
--- /dev/null
+++ b/htdocs/langs/en_ZA/trips.lang
@@ -0,0 +1,6 @@
+# Dolibarr language file - Source file is en_US - trips
+ExpenseReportRulesDesc=You can define max amount rules for expense reports. These rules will be applied when a new expense is added to an expense report
+ExpenseReportLimitAmount=Max amount
+ExpenseReportRestrictive=Exceeding forbidden
+ExpenseReportConstraintViolationError=Max amount exceeded (rule %s): %s is higher than %s (Exceeding forbidden)
+ExpenseReportConstraintViolationWarning=Max amount exceeded (rule %s): %s is higher than %s (Exceeding authorized)
diff --git a/htdocs/langs/es_BO/propal.lang b/htdocs/langs/es_BO/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/es_BO/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/es_DO/propal.lang b/htdocs/langs/es_DO/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/es_DO/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/es_ES/projects.lang b/htdocs/langs/es_ES/projects.lang
index 54d9951485b..5d94f8a82c4 100644
--- a/htdocs/langs/es_ES/projects.lang
+++ b/htdocs/langs/es_ES/projects.lang
@@ -37,6 +37,8 @@ OpportunitiesStatusForOpenedProjects=Importe oportunidades de proyectos por esta
OpportunitiesStatusForProjects=Importe oportunidades de proyectos por estado
ShowProject=Ver proyecto
ShowTask=Ver tarea
+ShowCanceled=Mostrar cancelados
+HideCanceled=Ocultar cancelados
SetProject=Definir proyecto
NoProject=Ningún proyecto definido
NbOfProjects=Numero de proyectos
diff --git a/htdocs/langs/es_GT/propal.lang b/htdocs/langs/es_GT/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/es_GT/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/es_HN/propal.lang b/htdocs/langs/es_HN/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/es_HN/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/es_PA/propal.lang b/htdocs/langs/es_PA/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/es_PA/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/es_PY/propal.lang b/htdocs/langs/es_PY/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/es_PY/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/es_US/propal.lang b/htdocs/langs/es_US/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/es_US/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/es_UY/propal.lang b/htdocs/langs/es_UY/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/es_UY/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/fr_BE/propal.lang b/htdocs/langs/fr_BE/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/fr_BE/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/fr_CH/propal.lang b/htdocs/langs/fr_CH/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/fr_CH/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/fr_CI/propal.lang b/htdocs/langs/fr_CI/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/fr_CI/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/fr_CM/propal.lang b/htdocs/langs/fr_CM/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/fr_CM/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/fr_GA/propal.lang b/htdocs/langs/fr_GA/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/fr_GA/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/it_CH/propal.lang b/htdocs/langs/it_CH/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/it_CH/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/pt_AO/propal.lang b/htdocs/langs/pt_AO/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/pt_AO/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/langs/ru_UA/propal.lang b/htdocs/langs/ru_UA/propal.lang
new file mode 100644
index 00000000000..de4e2e63224
--- /dev/null
+++ b/htdocs/langs/ru_UA/propal.lang
@@ -0,0 +1,2 @@
+# Dolibarr language file - Source file is en_US - propal
+PdfCommercialProposalTitle=Proposal
diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php
index 34abf5f5759..a15b17b8566 100644
--- a/htdocs/main.inc.php
+++ b/htdocs/main.inc.php
@@ -1894,7 +1894,7 @@ function top_menu($head, $title = '', $target = '', $disablejs = 0, $disablehead
}
}
$qs .= (($qs && $morequerystring) ? '&' : '').$morequerystring;
- $text = '';
+ $text = '';
//$text.= img_picto(":".$langs->trans("PrintContentArea"), 'printer_top.png', 'class="printer"');
$text .= '';
$text .= '';
@@ -1934,7 +1934,7 @@ function top_menu($head, $title = '', $target = '', $disablejs = 0, $disablehead
$title .= ' ('.$langs->trans("HomePage").')';
}
}
- $text .= '';
if ($doliurl) {
- print '';
+ print '';
} else {
print '';
}
@@ -2885,7 +2885,7 @@ function left_menu($menu_array_before, $helppagename = '', $notused = '', $menu_
}
print '