diff --git a/htdocs/core/class/html.formprojet.class.php b/htdocs/core/class/html.formprojet.class.php
index b2166453bbd..bc62ebc7604 100644
--- a/htdocs/core/class/html.formprojet.class.php
+++ b/htdocs/core/class/html.formprojet.class.php
@@ -490,7 +490,7 @@ class FormProjets
if ($table_element == 'projet_task') return ''; // Special cas of element we never link to a project (already always done)
$linkedtothirdparty=false;
- if (! in_array($table_element, array('don','expensereport_det','expensereport','loan','stock_mouvement','chargesociales'))) $linkedtothirdparty=true;
+ if (! in_array($table_element, array('don','expensereport_det','expensereport','loan','stock_mouvement','payment_salary','payment_various','chargesociales'))) $linkedtothirdparty=true;
$sqlfilter='';
@@ -533,6 +533,9 @@ class FormProjets
$sql = 'SELECT t.rowid, t.label as ref';
$projectkey='fk_origin';
break;
+ case "payment_salary":
+ $sql = "SELECT t.rowid, t.num_payment as ref"; // TODO In a future fill and use real ref field
+ break;
case "payment_various":
$sql = "SELECT t.rowid, t.num_payment as ref";
break;
diff --git a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql
index f98c932943c..a7efecbdc5f 100644
--- a/htdocs/install/mysql/migration/8.0.0-9.0.0.sql
+++ b/htdocs/install/mysql/migration/8.0.0-9.0.0.sql
@@ -72,8 +72,11 @@ insert into llx_c_action_trigger (code,label,description,elementtype,rang) value
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202);
insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203);
+ALTER TABLE llx_payment_salary ADD COLUMN ref varchar(30) NULL after rowid;
ALTER TABLE llx_payment_salary ADD COLUMN fk_projet integer DEFAULT NULL after amount;
+ALTER TABLE llx_payment_various ADD COLUMN ref varchar(30) NULL after rowid;
+
ALTER TABLE llx_categorie ADD COLUMN ref_ext varchar(255);
ALTER TABLE llx_paiement ADD COLUMN ext_payment_id varchar(128);
diff --git a/htdocs/install/mysql/tables/llx_paiement.sql b/htdocs/install/mysql/tables/llx_paiement.sql
index 6eb6b28f695..25c0097f10e 100644
--- a/htdocs/install/mysql/tables/llx_paiement.sql
+++ b/htdocs/install/mysql/tables/llx_paiement.sql
@@ -21,7 +21,7 @@
create table llx_paiement
(
rowid integer AUTO_INCREMENT PRIMARY KEY,
- ref varchar(30) NOT NULL, -- payment reference number
+ ref varchar(30) NULL, -- payment reference number
entity integer DEFAULT 1 NOT NULL, -- Multi company id
datec datetime, -- date de creation
tms timestamp,
diff --git a/htdocs/install/mysql/tables/llx_payment_salary.sql b/htdocs/install/mysql/tables/llx_payment_salary.sql
index 4fcbc233f33..c56e6459aa0 100644
--- a/htdocs/install/mysql/tables/llx_payment_salary.sql
+++ b/htdocs/install/mysql/tables/llx_payment_salary.sql
@@ -19,6 +19,7 @@
create table llx_payment_salary
(
rowid integer AUTO_INCREMENT PRIMARY KEY,
+ ref varchar(30) NOT NULL, -- payment reference number
tms timestamp,
datec datetime, -- Create date
fk_user integer NOT NULL,
@@ -28,7 +29,7 @@ create table llx_payment_salary
amount double(24,8) NOT NULL DEFAULT 0,
fk_projet integer DEFAULT NULL,
fk_typepayment integer NOT NULL,
- num_payment varchar(50), -- ref
+ num_payment varchar(50), -- num cheque or other
label varchar(255),
datesp date, -- date start period
dateep date, -- date end period
diff --git a/htdocs/install/mysql/tables/llx_payment_various.sql b/htdocs/install/mysql/tables/llx_payment_various.sql
index e719dae7d8c..d3351287e58 100644
--- a/htdocs/install/mysql/tables/llx_payment_various.sql
+++ b/htdocs/install/mysql/tables/llx_payment_various.sql
@@ -19,7 +19,8 @@
create table llx_payment_various
(
rowid integer AUTO_INCREMENT PRIMARY KEY,
- num_payment varchar(50), -- ref
+ ref varchar(30) NOT NULL, -- payment reference number
+ num_payment varchar(50), -- num cheque or other
label varchar(255),
tms timestamp,
datec datetime, -- Create date
diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang
index ec2061392a1..c83bccd19ad 100644
--- a/htdocs/langs/en_US/projects.lang
+++ b/htdocs/langs/en_US/projects.lang
@@ -79,20 +79,20 @@ GoToListOfTimeConsumed=Go to list of time consumed
GoToListOfTasks=Go to list of tasks
GoToGanttView=Go to Gantt view
GanttView=Gantt View
-ListProposalsAssociatedProject=List of the commercial proposals associated with the project
-ListOrdersAssociatedProject=List of customer orders associated with the project
-ListInvoicesAssociatedProject=List of customer invoices associated with the project
-ListPredefinedInvoicesAssociatedProject=List of customer template invoices associated with project
-ListSupplierOrdersAssociatedProject=List of supplier orders associated with the project
-ListSupplierInvoicesAssociatedProject=List of supplier invoices associated with the project
-ListContractAssociatedProject=List of contracts associated with the project
-ListShippingAssociatedProject=List of shippings associated with the project
-ListFichinterAssociatedProject=List of interventions associated with the project
-ListExpenseReportsAssociatedProject=List of expense reports associated with the project
-ListDonationsAssociatedProject=List of donations associated with the project
-ListVariousPaymentsAssociatedProject=List of miscellaneous payments associated with the project
-ListSalariesAssociatedProject=List of salaries associated with the project
-ListActionsAssociatedProject=List of events associated with the project
+ListProposalsAssociatedProject=List of the commercial proposals related to the project
+ListOrdersAssociatedProject=List of customer orders related to the project
+ListInvoicesAssociatedProject=List of customer invoices related to the project
+ListPredefinedInvoicesAssociatedProject=List of customer template invoices related to the project
+ListSupplierOrdersAssociatedProject=List of supplier orders related to the project
+ListSupplierInvoicesAssociatedProject=List of supplier invoices related to the project
+ListContractAssociatedProject=List of contracts related to the project
+ListShippingAssociatedProject=List of shippings related to the project
+ListFichinterAssociatedProject=List of interventions related to the project
+ListExpenseReportsAssociatedProject=List of expense reports related to the project
+ListDonationsAssociatedProject=List of donations related to the project
+ListVariousPaymentsAssociatedProject=List of miscellaneous payments related to the project
+ListSalariesAssociatedProject=List of payments of salaries related to the project
+ListActionsAssociatedProject=List of events related to the project
ListTaskTimeUserProject=List of time consumed on tasks of project
ListTaskTimeForTask=List of time consumed on task
ActivityOnProjectToday=Activity on project today
diff --git a/htdocs/projet/contact.php b/htdocs/projet/contact.php
index 68c9b530c88..4b9aaf58b8b 100644
--- a/htdocs/projet/contact.php
+++ b/htdocs/projet/contact.php
@@ -240,6 +240,14 @@ if ($id > 0 || ! empty($ref))
print nl2br($object->description);
print '';
+ // Bill time
+ if (! empty($conf->global->PROJECT_BILL_TIME_SPENT))
+ {
+ print '
';
$s=$modCodeFournisseur->getToolTip($langs,$object,1);
print $form->textwithpicto('',$s,1);
@@ -1570,9 +1570,9 @@ else
$object->name = GETPOST('name', 'alpha');
$object->prefix_comm = GETPOST('prefix_comm', 'alpha');
$object->client = GETPOST('client', 'int');
- $object->code_client = GETPOST('code_client', 'alpha');
+ $object->code_client = GETPOST('customer_code', 'alpha');
$object->fournisseur = GETPOST('fournisseur', 'int');
- $object->code_fournisseur = GETPOST('code_fournisseur', 'alpha');
+ $object->code_fournisseur = GETPOST('supplier_code', 'alpha');
$object->address = GETPOST('address', 'alpha');
$object->zip = GETPOST('zipcode', 'alpha');
$object->town = GETPOST('town', 'alpha');
@@ -1776,16 +1776,16 @@ else
$tmpcode=$object->code_client;
if (empty($tmpcode) && ! empty($object->oldcopy->code_client)) $tmpcode=$object->oldcopy->code_client; // When there is an error to update a thirdparty, the number for supplier and customer code is kept to old value.
if (empty($tmpcode) && ! empty($modCodeClient->code_auto)) $tmpcode=$modCodeClient->getNextValue($object,0);
- print '';
+ print '';
}
else if ($object->codeclient_modifiable())
{
- print '';
+ print '';
}
else
{
print $object->code_client;
- print '';
+ print '';
}
print '
';
$s=$modCodeClient->getToolTip($langs,$object,0);
@@ -1816,16 +1816,16 @@ else
$tmpcode=$object->code_fournisseur;
if (empty($tmpcode) && ! empty($object->oldcopy->code_fournisseur)) $tmpcode=$object->oldcopy->code_fournisseur; // When there is an error to update a thirdparty, the number for supplier and customer code is kept to old value.
if (empty($tmpcode) && ! empty($modCodeFournisseur->code_auto)) $tmpcode=$modCodeFournisseur->getNextValue($object,1);
- print '';
+ print '';
}
else if ($object->codefournisseur_modifiable())
{
- print '';
+ print '';
}
else
{
print $object->code_fournisseur;
- print '';
+ print '';
}
print '