'.$this->getLibStatut(4);
+ if (!empty($this->morphy)) {
+ $datas['picto'] .= ' ' . $this->getmorphylib('', 1);
+ }
if (!empty($this->ref)) {
$datas['ref'] = '
'.$this->ref;
}
diff --git a/htdocs/adherents/class/adherent_type.class.php b/htdocs/adherents/class/adherent_type.class.php
index a744ce71bdc..eda018e6dca 100644
--- a/htdocs/adherents/class/adherent_type.class.php
+++ b/htdocs/adherents/class/adherent_type.class.php
@@ -706,6 +706,18 @@ class AdherentType extends CommonObject
if (isset($this->subscription)) {
$datas['subscription'] = '
'.$langs->trans("SubscriptionRequired").': '.yn($this->subscription);
}
+ if (isset($this->vote)) {
+ $datas['vote'] = '
'.$langs->trans("VoteAllowed").': '.yn($this->vote);
+ }
+ if (isset($this->duration)) {
+ $datas['duration'] = '
'.$langs->trans("Duration").': '.$this->duration_value;
+ if ($this->duration_value > 1) {
+ $dur = array("i"=>$langs->trans("Minutes"), "h"=>$langs->trans("Hours"), "d"=>$langs->trans("Days"), "w"=>$langs->trans("Weeks"), "m"=>$langs->trans("Months"), "y"=>$langs->trans("Years"));
+ } elseif ($this->duration_value > 0) {
+ $dur = array("i"=>$langs->trans("Minute"), "h"=>$langs->trans("Hour"), "d"=>$langs->trans("Day"), "w"=>$langs->trans("Week"), "m"=>$langs->trans("Month"), "y"=>$langs->trans("Year"));
+ }
+ $datas['duration'] .= " " . (!empty($this->duration_unit) && isset($dur[$this->duration_unit]) ? $langs->trans($dur[$this->duration_unit]) : '');
+ }
return $datas;
}
@@ -733,6 +745,7 @@ class AdherentType extends CommonObject
'id' => $this->id,
'objecttype' => $this->element,
'option' => $option,
+ 'nofetch' => 1,
];
if (getDolGlobalInt('MAIN_ENABLE_AJAX_TOOLTIP')) {
$classfortooltip = 'classforajaxtooltip';
diff --git a/htdocs/adherents/index.php b/htdocs/adherents/index.php
index a5f9c26f192..fd031421c8b 100644
--- a/htdocs/adherents/index.php
+++ b/htdocs/adherents/index.php
@@ -77,7 +77,7 @@ $form = new Form($db);
// Load $resultboxes (selectboxlist + boxactivated + boxlista + boxlistb)
$resultboxes = FormOther::getBoxesArea($user, "2");
-llxHeader('', $langs->trans("Members"), 'EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros');
+llxHeader('', $langs->trans("Members"), 'EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros|DE:Modul_Mitglieder');
$staticmember = new Adherent($db);
$statictype = new AdherentType($db);
diff --git a/htdocs/adherents/ldap.php b/htdocs/adherents/ldap.php
index 83b7e5f3764..c466ff7ff9d 100644
--- a/htdocs/adherents/ldap.php
+++ b/htdocs/adherents/ldap.php
@@ -104,7 +104,7 @@ if ($action == 'dolibarr2ldap') {
$form = new Form($db);
-llxHeader('', $langs->trans("Member"), 'EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros');
+llxHeader('', $langs->trans("Member"), 'EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros|DE:Modul_Mitglieder');
$head = member_prepare_head($object);
diff --git a/htdocs/adherents/subscription/card.php b/htdocs/adherents/subscription/card.php
index ea47ffc9362..711191726c3 100644
--- a/htdocs/adherents/subscription/card.php
+++ b/htdocs/adherents/subscription/card.php
@@ -160,7 +160,7 @@ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->hasRight('adheren
$form = new Form($db);
-$help_url = 'EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros';
+$help_url = 'EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros|DE:Modul_Mitglieder';
llxHeader('', $langs->trans("SubscriptionCard"), $help_url);
diff --git a/htdocs/adherents/subscription/list.php b/htdocs/adherents/subscription/list.php
index 40a9c042bd4..ef47c347cdf 100644
--- a/htdocs/adherents/subscription/list.php
+++ b/htdocs/adherents/subscription/list.php
@@ -249,7 +249,7 @@ if (!empty($date_select)) {
$title .= ' ('.$langs->trans("Year").' '.$date_select.')';
}
-$help_url = 'EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros';
+$help_url = 'EN:Module_Foundations|FR:Module_Adhérents|ES:Módulo_Miembros|DE:Modul_Mitglieder';
llxHeader('', $title, $help_url);
$i = 0;
diff --git a/htdocs/adherents/type.php b/htdocs/adherents/type.php
index c91915f7bdb..8b459e2c7b6 100644
--- a/htdocs/adherents/type.php
+++ b/htdocs/adherents/type.php
@@ -522,7 +522,7 @@ if ($rowid > 0) {
print '
| '.$langs->trans("Duration").' | '.$object->duration_value.' ';
if ($object->duration_value > 1) {
- $dur = array("i"=>$langs->trans("Minute"), "h"=>$langs->trans("Hours"), "d"=>$langs->trans("Days"), "w"=>$langs->trans("Weeks"), "m"=>$langs->trans("Months"), "y"=>$langs->trans("Years"));
+ $dur = array("i"=>$langs->trans("Minutes"), "h"=>$langs->trans("Hours"), "d"=>$langs->trans("Days"), "w"=>$langs->trans("Weeks"), "m"=>$langs->trans("Months"), "y"=>$langs->trans("Years"));
} elseif ($object->duration_value > 0) {
$dur = array("i"=>$langs->trans("Minute"), "h"=>$langs->trans("Hour"), "d"=>$langs->trans("Day"), "w"=>$langs->trans("Week"), "m"=>$langs->trans("Month"), "y"=>$langs->trans("Year"));
}
diff --git a/htdocs/admin/agenda.php b/htdocs/admin/agenda.php
index c62101ab70b..a3c9a3d3bb4 100644
--- a/htdocs/admin/agenda.php
+++ b/htdocs/admin/agenda.php
@@ -115,7 +115,7 @@ if ($action == "save" && empty($cancel)) {
// $wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda';
-$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda';
+$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("AgendaSetup"), $help_url);
diff --git a/htdocs/admin/agenda_extrafields.php b/htdocs/admin/agenda_extrafields.php
index cade3a90e71..eed059c3ca7 100644
--- a/htdocs/admin/agenda_extrafields.php
+++ b/htdocs/admin/agenda_extrafields.php
@@ -72,7 +72,7 @@ require DOL_DOCUMENT_ROOT.'/core/actions_extrafields.inc.php';
$textobject = $langs->transnoentitiesnoconv("Agenda");
-$wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda';
+$wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("AgendaSetup"), $wikihelp);
$linkback = ''.$langs->trans("BackToModuleList").'';
diff --git a/htdocs/admin/agenda_extsites.php b/htdocs/admin/agenda_extsites.php
index 83391e6ce3d..8389c7e0d82 100644
--- a/htdocs/admin/agenda_extsites.php
+++ b/htdocs/admin/agenda_extsites.php
@@ -185,7 +185,7 @@ $formother = new FormOther($db);
$arrayofjs = array();
$arrayofcss = array();
-$wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda';
+$wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("AgendaSetup"), $wikihelp, '', 0, 0, $arrayofjs, $arrayofcss);
$linkback = ''.$langs->trans("BackToModuleList").'';
diff --git a/htdocs/admin/agenda_other.php b/htdocs/admin/agenda_other.php
index aef46db26ef..3ed883bffa6 100644
--- a/htdocs/admin/agenda_other.php
+++ b/htdocs/admin/agenda_other.php
@@ -182,7 +182,7 @@ if ($action == 'set') {
$formactions = new FormActions($db);
$dirmodels = array_merge(array('/'), (array) $conf->modules_parts['models']);
-$wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda';
+$wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("AgendaSetup"), $wikihelp);
$linkback = ''.$langs->trans("BackToModuleList").'';
diff --git a/htdocs/admin/agenda_xcal.php b/htdocs/admin/agenda_xcal.php
index 499d7233ed0..9ed5b5d0615 100644
--- a/htdocs/admin/agenda_xcal.php
+++ b/htdocs/admin/agenda_xcal.php
@@ -70,7 +70,7 @@ if (!isset($conf->global->MAIN_AGENDA_EXPORT_PAST_DELAY)) {
$conf->global->MAIN_AGENDA_EXPORT_PAST_DELAY = 100;
}
-$wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda';
+$wikihelp = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("AgendaSetup"), $wikihelp);
$linkback = ''.$langs->trans("BackToModuleList").'';
diff --git a/htdocs/asset/agenda.php b/htdocs/asset/agenda.php
index c86697b207d..a65d70d4c5a 100644
--- a/htdocs/asset/agenda.php
+++ b/htdocs/asset/agenda.php
@@ -125,7 +125,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
//if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
- $help_url = 'EN:Module_Agenda_En';
+ $help_url = 'EN:Module_Agenda_En|DE:Modul_Terminplanung';
llxHeader('', $title, $help_url);
if (isModEnabled('notification')) {
diff --git a/htdocs/asset/class/asset.class.php b/htdocs/asset/class/asset.class.php
index c01f4b967c4..5cf9e748d00 100644
--- a/htdocs/asset/class/asset.class.php
+++ b/htdocs/asset/class/asset.class.php
@@ -157,6 +157,11 @@ class Asset extends CommonObject
public $status;
public $user_cloture_id;
+ /**
+ * @var Asset object oldcopy
+ */
+ public $oldcopy;
+
// /**
// * @var string Field with ID of parent key if this object has a parent
// */
diff --git a/htdocs/asset/model/agenda.php b/htdocs/asset/model/agenda.php
index 8758d22879c..ac896087542 100644
--- a/htdocs/asset/model/agenda.php
+++ b/htdocs/asset/model/agenda.php
@@ -127,7 +127,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
//if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
- $help_url = 'EN:Module_Agenda_En';
+ $help_url = 'EN:Module_Agenda_En|DE:Modul_Terminplanung';
llxHeader('', $title, $help_url);
if (isModEnabled('notification')) {
diff --git a/htdocs/bookcal/availabilities_agenda.php b/htdocs/bookcal/availabilities_agenda.php
index d97970c3add..d097bbd5ee1 100644
--- a/htdocs/bookcal/availabilities_agenda.php
+++ b/htdocs/bookcal/availabilities_agenda.php
@@ -138,7 +138,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
//if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
- $help_url = 'EN:Module_Agenda_En';
+ $help_url = 'EN:Module_Agenda_En|DE:Modul_Terminplanung';
llxHeader('', $title, $help_url);
if (!empty($conf->notification->enabled)) {
diff --git a/htdocs/bookcal/booking_agenda.php b/htdocs/bookcal/booking_agenda.php
index fb26fce4fc7..a37d1de0bcb 100644
--- a/htdocs/bookcal/booking_agenda.php
+++ b/htdocs/bookcal/booking_agenda.php
@@ -138,7 +138,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
//if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
- $help_url = 'EN:Module_Agenda_En';
+ $help_url = 'EN:Module_Agenda_En|DE:Modul_Terminplanung';
llxHeader('', $title, $help_url);
if (!empty($conf->notification->enabled)) {
diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php
index 018ec6cf6c7..b8a73cf1b9b 100644
--- a/htdocs/comm/action/card.php
+++ b/htdocs/comm/action/card.php
@@ -1114,7 +1114,7 @@ $arrayrecurrulefreq = array(
);
-$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:M&omodulodulo_Agenda';
+$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:M&omodulodulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("Agenda"), $help_url);
if ($action == 'create') {
diff --git a/htdocs/comm/action/document.php b/htdocs/comm/action/document.php
index 0bff7cf5616..851f4419179 100644
--- a/htdocs/comm/action/document.php
+++ b/htdocs/comm/action/document.php
@@ -109,7 +109,7 @@ include DOL_DOCUMENT_ROOT.'/core/actions_linkedfiles.inc.php';
$form = new Form($db);
-$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:M&omodulodulo_Agenda';
+$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:M&omodulodulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("Agenda"), $help_url);
diff --git a/htdocs/comm/action/index.php b/htdocs/comm/action/index.php
index 9d84e205f2b..91f749a1cd0 100644
--- a/htdocs/comm/action/index.php
+++ b/htdocs/comm/action/index.php
@@ -248,7 +248,7 @@ if ($reshook < 0) {
setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
}
-$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda';
+$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("Agenda"), $help_url);
$form = new Form($db);
diff --git a/htdocs/comm/action/info.php b/htdocs/comm/action/info.php
index 816fef8e395..aa14224014a 100644
--- a/htdocs/comm/action/info.php
+++ b/htdocs/comm/action/info.php
@@ -62,7 +62,7 @@ $usercancreate = $user->hasRight('agenda', 'allactions', 'create') || (($object-
$form = new Form($db);
-$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:M&omodulodulo_Agenda';
+$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:M&omodulodulo_Agenda|DE:Modul_Terminplanung';
llxHeader('', $langs->trans("Agenda"), $help_url);
$object = new ActionComm($db);
diff --git a/htdocs/comm/action/list.php b/htdocs/comm/action/list.php
index a0176ca18b0..6e4903ae25b 100644
--- a/htdocs/comm/action/list.php
+++ b/htdocs/comm/action/list.php
@@ -289,7 +289,7 @@ $nav .= ' trans("Agenda"), $help_url);
$now = dol_now();
diff --git a/htdocs/comm/card.php b/htdocs/comm/card.php
index 46343919cb6..600d22b432a 100644
--- a/htdocs/comm/card.php
+++ b/htdocs/comm/card.php
@@ -699,7 +699,7 @@ if ($object->id > 0) {
$boxstat .= '';
$boxstat .= '';
- if (isModEnabled("propal") && $user->rights->propal->lire) {
+ if (isModEnabled("propal") && $user->hasRight('propal', 'lire')) {
// Box proposals
$tmp = $object->getOutstandingProposals();
$outstandingOpened = $tmp['opened'];
@@ -720,7 +720,7 @@ if ($object->id > 0) {
}
}
- if (isModEnabled('commande') && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->hasRight('commande', 'lire')) {
// Box commandes
$tmp = $object->getOutstandingOrders();
$outstandingOpened = $tmp['opened'];
@@ -741,7 +741,7 @@ if ($object->id > 0) {
}
}
- if (isModEnabled('facture') && $user->rights->facture->lire) {
+ if (isModEnabled('facture') && $user->hasRight('facture', 'lire')) {
// Box factures
$tmp = $object->getOutstandingBills('customer', 0);
$outstandingOpened = $tmp['opened'];
@@ -820,7 +820,7 @@ if ($object->id > 0) {
/*
* Latest proposals
*/
- if (isModEnabled("propal") && $user->rights->propal->lire) {
+ if (isModEnabled("propal") && $user->hasRight('propal', 'lire')) {
$langs->load("propal");
$sql = "SELECT s.nom, s.rowid, p.rowid as propalid, p.fk_statut, p.total_ht";
@@ -915,7 +915,7 @@ if ($object->id > 0) {
/*
* Latest orders
*/
- if (isModEnabled('commande') && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->hasRight('commande', 'lire')) {
$param ="";
$sql = "SELECT s.nom, s.rowid";
@@ -1124,7 +1124,7 @@ if ($object->id > 0) {
/*
* Latest contracts
*/
- if (isModEnabled('contrat') && $user->rights->contrat->lire) {
+ if (isModEnabled('contrat') && $user->hasRight('contrat', 'lire')) {
$sql = "SELECT s.nom, s.rowid, c.rowid as id, c.ref as ref, c.statut as contract_status, c.datec as dc, c.date_contrat as dcon, c.ref_customer as refcus, c.ref_supplier as refsup, c.entity,";
$sql .= " c.last_main_doc, c.model_pdf";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."contrat as c";
@@ -1232,7 +1232,7 @@ if ($object->id > 0) {
/*
* Latest interventions
*/
- if (isModEnabled('ficheinter') && $user->rights->ficheinter->lire) {
+ if (isModEnabled('ficheinter') && $user->hasRight('ficheinter', 'lire')) {
$sql = "SELECT s.nom, s.rowid, f.rowid as id, f.ref, f.fk_statut, f.duree as duration, f.datei as startdate, f.entity";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."fichinter as f";
$sql .= " WHERE f.fk_soc = s.rowid";
@@ -1318,7 +1318,7 @@ if ($object->id > 0) {
/*
* Latest invoices templates
*/
- if (isModEnabled('facture') && $user->rights->facture->lire) {
+ if (isModEnabled('facture') && $user->hasRight('facture', 'lire')) {
$sql = 'SELECT f.rowid as id, f.titre as ref';
$sql .= ', f.total_ht';
$sql .= ', f.total_tva';
@@ -1413,7 +1413,7 @@ if ($object->id > 0) {
/*
* Latest invoices
*/
- if (isModEnabled('facture') && $user->rights->facture->lire) {
+ if (isModEnabled('facture') && $user->hasRight('facture', 'lire')) {
$sql = 'SELECT f.rowid as facid, f.ref, f.type';
$sql .= ', f.total_ht';
$sql .= ', f.total_tva';
@@ -1557,12 +1557,12 @@ if ($object->id > 0) {
print '';
}
- if (isModEnabled("propal") && $user->rights->propal->creer && $object->status == 1) {
+ if (isModEnabled("propal") && $user->hasRight('propal', 'creer') && $object->status == 1) {
$langs->load("propal");
print '';
}
- if (isModEnabled('commande') && $user->rights->commande->creer && $object->status == 1) {
+ if (isModEnabled('commande') && $user->hasRight('commande', 'creer') && $object->status == 1) {
$langs->load("orders");
print '';
}
@@ -1572,7 +1572,7 @@ if ($object->id > 0) {
print '';
}
- if (isModEnabled('ficheinter') && $user->rights->ficheinter->creer && $object->status == 1) {
+ if (isModEnabled('ficheinter') && $user->hasRight('ficheinter', 'creer') && $object->status == 1) {
$langs->load("fichinter");
print '';
}
diff --git a/htdocs/comm/index.php b/htdocs/comm/index.php
index 5d71683a311..8987d4ed25f 100644
--- a/htdocs/comm/index.php
+++ b/htdocs/comm/index.php
@@ -321,7 +321,7 @@ if (isModEnabled('supplier_proposal') && $user->hasRight("supplier_proposal", "l
* Draft sales orders
*/
-if (isModEnabled('commande') && $user->rights->commande->lire) {
+if (isModEnabled('commande') && $user->hasRight('commande', 'lire')) {
$sql = "SELECT c.rowid, c.ref, c.ref_client, c.total_ht, c.total_tva, c.total_ttc, c.fk_statut as status";
$sql .= ", s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
@@ -1008,7 +1008,7 @@ if (isModEnabled("propal") && $user->hasRight("propal", "lire")) {
/*
* Opened (validated) order
*/
-if (isModEnabled('commande') && $user->rights->commande->lire) {
+if (isModEnabled('commande') && $user->hasRight('commande', 'lire')) {
$sql = "SELECT c.rowid as commandeid, c.total_ttc, c.total_ht, c.total_tva, c.ref, c.ref_client, c.fk_statut, c.date_valid as dv, c.facture as billed";
$sql .= ", s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
diff --git a/htdocs/comm/mailing/class/mailing.class.php b/htdocs/comm/mailing/class/mailing.class.php
index 75cf669d3c8..32c3126c7a5 100644
--- a/htdocs/comm/mailing/class/mailing.class.php
+++ b/htdocs/comm/mailing/class/mailing.class.php
@@ -726,6 +726,36 @@ class Mailing extends CommonObject
return 1;
}
+ /**
+ * getTooltipContentArray
+ *
+ * @param array $params ex option, infologin
+ * @since v18
+ * @return array
+ */
+ public function getTooltipContentArray($params)
+ {
+ global $conf, $langs;
+
+ $nofetch = empty($params['nofetch']) ? false : true;
+ $langs->load('mails');
+
+ $datas = [];
+ $datas['picto'] = img_picto('', $this->picto).' '.$langs->trans("ShowEMailing").'';
+ if (isset($this->statut)) {
+ $datas['picto'] .= ' '.$this->getLibStatut(5);
+ }
+ $datas['ref'] = ' '.$langs->trans('Ref').': '.$this->ref;
+ if (isset($this->title)) {
+ $datas['title'] .= ' '.$langs->trans('MailTitle').': '.$this->title;
+ }
+ if (isset($this->sujet)) {
+ $datas['subject'] .= ' '.$langs->trans('MailTopic').': '.$this->sujet;
+ }
+
+ return $datas;
+ }
+
/**
* Return a link to the object card (with optionally the picto)
*
@@ -747,11 +777,20 @@ class Mailing extends CommonObject
}
$result = '';
- $companylink = '';
-
- $label = ''.$langs->trans("ShowEMailing").'';
- $label .= ' ';
- $label .= ''.$langs->trans('Ref').': '.$this->ref;
+ $params = [
+ 'id' => $this->id,
+ 'objecttype' => $this->element,
+ 'option' => $option,
+ 'nofetch' => 1,
+ ];
+ $classfortooltip = 'classfortooltip';
+ $dataparams = '';
+ if (getDolGlobalInt('MAIN_ENABLE_AJAX_TOOLTIP')) {
+ $classfortooltip = 'classforajaxtooltip';
+ $dataparams = ' data-params='.json_encode($params);
+ // $label = $langs->trans('Loading');
+ }
+ $label = implode($this->getTooltipContentArray($params));
$url = DOL_URL_ROOT.'/comm/mailing/card.php?id='.$this->id;
@@ -772,8 +811,8 @@ class Mailing extends CommonObject
$label = $langs->trans("ShowEMailing");
$linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"';
}
- $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"';
- $linkclose .= ' class="classfortooltip'.($morecss ? ' '.$morecss : '').'"';
+ $linkclose .= $dataparams.' title="'.dol_escape_htmltag($label, 1).'"';
+ $linkclose .= ' class="'.$classfortooltip.($morecss ? ' '.$morecss : '').'"';
} else {
$linkclose = ($morecss ? ' class="'.$morecss.'"' : '');
}
@@ -784,7 +823,7 @@ class Mailing extends CommonObject
$result .= $linkstart;
if ($withpicto) {
- $result .= img_object(($notooltip ? '' : $label), ($this->picto ? $this->picto : 'generic'), ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1);
+ $result .= img_object(($notooltip ? '' : $label), ($this->picto ? $this->picto : 'generic'), ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : $dataparams.' class="'.(($withpicto != 2) ? 'paddingright ' : '').$classfortooltip.'"'), 0, 0, $notooltip ? 0 : 1);
}
if ($withpicto != 2) {
$result .= $this->ref;
diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php
index 3f74c4a860f..662a187d1c3 100644
--- a/htdocs/comm/propal/card.php
+++ b/htdocs/comm/propal/card.php
@@ -789,7 +789,7 @@ if (empty($reshook)) {
}
}
} elseif ($action == 'import_lines_from_object'
- && $user->rights->propal->creer
+ && $user->hasRight('propal', 'creer')
&& $object->statut == Propal::STATUS_DRAFT
) {
// add lines from objectlinked
diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php
index 3a48230de40..da9082da8bc 100644
--- a/htdocs/comm/propal/class/propal.class.php
+++ b/htdocs/comm/propal/class/propal.class.php
@@ -3795,7 +3795,7 @@ class Propal extends CommonObject
}
$linkclose = '';
- if (empty($notooltip) && $user->rights->propal->lire) {
+ if (empty($notooltip) && $user->hasRight('propal', 'lire')) {
if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) {
$label = $langs->trans("Proposal");
$linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"';
diff --git a/htdocs/comm/propal/contact.php b/htdocs/comm/propal/contact.php
index 45f2d175f9a..0c616ca2579 100644
--- a/htdocs/comm/propal/contact.php
+++ b/htdocs/comm/propal/contact.php
@@ -76,7 +76,7 @@ $usercancreate = $user->hasRight("propal", "creer");
* Add a new contact
*/
-if ($action == 'addcontact' && $user->rights->propal->creer) {
+if ($action == 'addcontact' && $user->hasRight('propal', 'creer')) {
if ($object->id > 0) {
$contactid = (GETPOST('userid', 'int') ? GETPOST('userid', 'int') : GETPOST('contactid', 'int'));
$typeid = (GETPOST('typecontact') ? GETPOST('typecontact') : GETPOST('type'));
@@ -94,12 +94,12 @@ if ($action == 'addcontact' && $user->rights->propal->creer) {
setEventMessages($object->error, $object->errors, 'errors');
}
}
-} elseif ($action == 'swapstatut' && $user->rights->propal->creer) {
+} elseif ($action == 'swapstatut' && $user->hasRight('propal', 'creer')) {
// Toggle the status of a contact
if ($object->id > 0) {
$result = $object->swapContactStatus(GETPOST('ligne', 'int'));
}
-} elseif ($action == 'deletecontact' && $user->rights->propal->creer) {
+} elseif ($action == 'deletecontact' && $user->hasRight('propal', 'creer')) {
// Deletes a contact
$result = $object->delete_contact($lineid);
diff --git a/htdocs/comm/propal/index.php b/htdocs/comm/propal/index.php
index 4a6d9ec63ed..ef5c295bd72 100644
--- a/htdocs/comm/propal/index.php
+++ b/htdocs/comm/propal/index.php
@@ -227,7 +227,7 @@ if ($resql) {
/*
* Open (validated) proposals
*/
-if (isModEnabled("propal") && $user->rights->propal->lire) {
+if (isModEnabled("propal") && $user->hasRight('propal', 'lire')) {
$sql = "SELECT s.nom as socname, s.rowid as socid, s.canvas, s.client, s.email, s.code_compta";
$sql .= ", p.rowid as propalid, p.entity, p.total_ttc, p.total_ht, p.ref, p.fk_statut, p.datep as dp, p.fin_validite as dfv";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
diff --git a/htdocs/comm/prospect/index.php b/htdocs/comm/prospect/index.php
index 19bde7072ad..13932d7da0c 100644
--- a/htdocs/comm/prospect/index.php
+++ b/htdocs/comm/prospect/index.php
@@ -119,7 +119,7 @@ if ($resql) {
/*
* Liste des propal brouillons
*/
-if (isModEnabled("propal") && $user->rights->propal->lire) {
+if (isModEnabled("propal") && $user->hasRight('propal', 'lire')) {
$sql = "SELECT p.rowid, p.ref, p.price, s.nom as sname";
$sql .= " FROM ".MAIN_DB_PREFIX."propal as p";
$sql .= ", ".MAIN_DB_PREFIX."societe as s";
@@ -177,7 +177,7 @@ if (isModEnabled('agenda')) {
/*
* Dernieres propales ouvertes
*/
-if (isModEnabled("propal") && $user->rights->propal->lire) {
+if (isModEnabled("propal") && $user->hasRight('propal', 'lire')) {
$sql = "SELECT s.nom as name, s.rowid as socid, s.client, s.canvas,";
$sql .= " p.rowid as propalid, p.total_ttc, p.ref, p.datep as dp, c.label as statut, c.id as statutid";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php
index 5b111f67e6c..38e3accc1fb 100644
--- a/htdocs/commande/class/commande.class.php
+++ b/htdocs/commande/class/commande.class.php
@@ -3820,7 +3820,7 @@ class Commande extends CommonOrder
$label = implode($this->getTooltipContentArray($params));
$linkclose = '';
- if (empty($notooltip) && $user->rights->commande->lire) {
+ if (empty($notooltip) && $user->hasRight('commande', 'lire')) {
if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) {
$label = $langs->trans("Order");
$linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"';
diff --git a/htdocs/commande/contact.php b/htdocs/commande/contact.php
index a6202d5d3bf..a5fc715eb38 100644
--- a/htdocs/commande/contact.php
+++ b/htdocs/commande/contact.php
@@ -56,7 +56,7 @@ $object = new Commande($db);
* Ajout d'un nouveau contact
*/
-if ($action == 'addcontact' && $user->rights->commande->creer) {
+if ($action == 'addcontact' && $user->hasRight('commande', 'creer')) {
$result = $object->fetch($id);
if ($result > 0 && $id > 0) {
@@ -76,14 +76,14 @@ if ($action == 'addcontact' && $user->rights->commande->creer) {
setEventMessages($object->error, $object->errors, 'errors');
}
}
-} elseif ($action == 'swapstatut' && $user->rights->commande->creer) {
+} elseif ($action == 'swapstatut' && $user->hasRight('commande', 'creer')) {
// bascule du statut d'un contact
if ($object->fetch($id)) {
$result = $object->swapContactStatus(GETPOST('ligne', 'int'));
} else {
dol_print_error($db);
}
-} elseif ($action == 'deletecontact' && $user->rights->commande->creer) {
+} elseif ($action == 'deletecontact' && $user->hasRight('commande', 'creer')) {
// Efface un contact
$object->fetch($id);
$result = $object->delete_contact(GETPOST("lineid", 'int'));
diff --git a/htdocs/compta/facture/card-rec.php b/htdocs/compta/facture/card-rec.php
index e29c5ca1bb3..1af465a806c 100644
--- a/htdocs/compta/facture/card-rec.php
+++ b/htdocs/compta/facture/card-rec.php
@@ -281,15 +281,15 @@ if (empty($reshook)) {
// Update field
// Set condition
- if ($action == 'setconditions' && $user->rights->facture->creer) {
+ if ($action == 'setconditions' && $user->hasRight('facture', 'creer')) {
$result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int'));
- } elseif ($action == 'setmode' && $user->rights->facture->creer) {
+ } elseif ($action == 'setmode' && $user->hasRight('facture', 'creer')) {
// Set mode
$result = $object->setPaymentMethods(GETPOST('mode_reglement_id', 'int'));
- } elseif ($action == 'classin' && $user->rights->facture->creer) {
+ } elseif ($action == 'classin' && $user->hasRight('facture', 'creer')) {
// Set project
$object->setProject(GETPOST('projectid', 'int'));
- } elseif ($action == 'setref' && $user->rights->facture->creer) {
+ } elseif ($action == 'setref' && $user->hasRight('facture', 'creer')) {
// Set bank account
//var_dump(GETPOST('ref', 'alpha'));exit;
$result = $object->setValueFrom('titre', $ref, '', null, 'text', '', $user, 'BILLREC_MODIFY');
@@ -306,31 +306,31 @@ if (empty($reshook)) {
setEventMessages($object->error, $object->errors, 'errors');
}
}
- } elseif ($action == 'setbankaccount' && $user->rights->facture->creer) {
+ } elseif ($action == 'setbankaccount' && $user->hasRight('facture', 'creer')) {
// Set bank account
$result = $object->setBankAccount(GETPOST('fk_account', 'int'));
- } elseif ($action == 'setfrequency' && $user->rights->facture->creer) {
+ } elseif ($action == 'setfrequency' && $user->hasRight('facture', 'creer')) {
// Set frequency and unit frequency
$object->setFrequencyAndUnit(GETPOST('frequency', 'int'), GETPOST('unit_frequency', 'alpha'));
- } elseif ($action == 'setdate_when' && $user->rights->facture->creer) {
+ } elseif ($action == 'setdate_when' && $user->hasRight('facture', 'creer')) {
// Set next date of execution
$date = dol_mktime(GETPOST('date_whenhour'), GETPOST('date_whenmin'), 0, GETPOST('date_whenmonth'), GETPOST('date_whenday'), GETPOST('date_whenyear'));
if (!empty($date)) {
$object->setNextDate($date);
}
- } elseif ($action == 'setnb_gen_max' && $user->rights->facture->creer) {
+ } elseif ($action == 'setnb_gen_max' && $user->hasRight('facture', 'creer')) {
// Set max period
$object->setMaxPeriod(GETPOST('nb_gen_max', 'int'));
- } elseif ($action == 'setauto_validate' && $user->rights->facture->creer) {
+ } elseif ($action == 'setauto_validate' && $user->hasRight('facture', 'creer')) {
// Set auto validate
$object->setAutoValidate(GETPOST('auto_validate', 'int'));
- } elseif ($action == 'setgenerate_pdf' && $user->rights->facture->creer) {
+ } elseif ($action == 'setgenerate_pdf' && $user->hasRight('facture', 'creer')) {
// Set generate pdf
$object->setGeneratepdf(GETPOST('generate_pdf', 'int'));
- } elseif ($action == 'setmodelpdf' && $user->rights->facture->creer) {
+ } elseif ($action == 'setmodelpdf' && $user->hasRight('facture', 'creer')) {
// Set model pdf
$object->setModelpdf(GETPOST('modelpdf', 'alpha'));
- } elseif ($action == 'disable' && $user->rights->facture->creer) {
+ } elseif ($action == 'disable' && $user->hasRight('facture', 'creer')) {
// Set status disabled
$db->begin();
@@ -347,7 +347,7 @@ if (empty($reshook)) {
$db->rollback();
setEventMessages($object->error, $object->errors, 'errors');
}
- } elseif ($action == 'enable' && $user->rights->facture->creer) {
+ } elseif ($action == 'enable' && $user->hasRight('facture', 'creer')) {
// Set status enabled
$db->begin();
@@ -373,7 +373,7 @@ if (empty($reshook)) {
}
// Delete line
- if ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->facture->creer) {
+ if ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->hasRight('facture', 'creer')) {
$object->fetch($id);
$object->fetch_thirdparty();
@@ -417,7 +417,7 @@ if (empty($reshook)) {
}
// Add a new line
- if ($action == 'addline' && $user->rights->facture->creer) {
+ if ($action == 'addline' && $user->hasRight('facture', 'creer')) {
$langs->load('errors');
$error = 0;
@@ -1288,7 +1288,7 @@ if ($action == 'create') {
print '| ';
print $langs->trans('PaymentConditionsShort');
print ' | ';
- if ($action != 'editconditions' && $user->rights->facture->creer) {
+ if ($action != 'editconditions' && $user->hasRight('facture', 'creer')) {
print 'id.'">'.img_edit($langs->trans('SetConditions'), 1).' | ';
}
print ' ';
@@ -1309,7 +1309,7 @@ if ($action == 'create') {
print '| ';
print $langs->trans('PaymentMode');
print ' | ';
- if ($action != 'editmode' && $user->rights->facture->creer) {
+ if ($action != 'editmode' && $user->hasRight('facture', 'creer')) {
print 'id.'">'.img_edit($langs->trans('SetMode'), 1).' | ';
}
print ' ';
@@ -1418,7 +1418,7 @@ if ($action == 'create') {
print '| ';
print $langs->trans('BankAccount');
print ' | ';
- if (($action != 'editbankaccount') && $user->rights->facture->creer && $object->statut == FactureRec::STATUS_DRAFT) {
+ if (($action != 'editbankaccount') && $user->hasRight('facture', 'creer') && $object->statut == FactureRec::STATUS_DRAFT) {
print ' | id.'">'.img_edit($langs->trans('SetBankAccount'), 1).' | ';
}
print ' ';
@@ -1436,7 +1436,7 @@ if ($action == 'create') {
print '| ';
print $langs->trans('Model');
print ' | ';
- if (($action != 'editmodelpdf') && $user->rights->facture->creer && $object->statut == FactureRec::STATUS_DRAFT) {
+ if (($action != 'editmodelpdf') && $user->hasRight('facture', 'creer') && $object->statut == FactureRec::STATUS_DRAFT) {
print ' | id.'">'.img_edit($langs->trans('SetModel'), 1).' | ';
}
print ' ';
@@ -1482,7 +1482,7 @@ if ($action == 'create') {
print '| ';
print $langs->trans('Frequency');
print ' | ';
- if ($action != 'editfrequency' && $user->rights->facture->creer) {
+ if ($action != 'editfrequency' && $user->hasRight('facture', 'creer')) {
print 'id.'">'.img_edit($langs->trans('Edit'), 1).' | ';
}
print ' ';
@@ -1639,7 +1639,7 @@ if ($action == 'create') {
}
// Form to add new line
- if ($object->statut == $object::STATUS_DRAFT && $user->rights->facture->creer && $action != 'valid' && $action != 'editline') {
+ if ($object->statut == $object::STATUS_DRAFT && $user->hasRight('facture', 'creer') && $action != 'valid' && $action != 'editline') {
if ($action != 'editline') {
// Add free products/services
diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php
index d4d39fde7d2..ccfedf5ad4a 100644
--- a/htdocs/compta/facture/card.php
+++ b/htdocs/compta/facture/card.php
@@ -390,7 +390,7 @@ if (empty($reshook)) {
if ($result < 0) {
dol_print_error($db, $object->error);
}
- } elseif ($action == 'setretainedwarrantyconditions' && $user->rights->facture->creer) {
+ } elseif ($action == 'setretainedwarrantyconditions' && $user->hasRight('facture', 'creer')) {
$object->fetch($id);
$object->retained_warranty_fk_cond_reglement = 0; // To clean property
$result = $object->setRetainedWarrantyPaymentTerms(GETPOST('retained_warranty_fk_cond_reglement', 'int'));
@@ -410,13 +410,13 @@ if (empty($reshook)) {
if ($result < 0) {
dol_print_error($db, $object->error);
}
- } elseif ($action == 'setretainedwarranty' && $user->rights->facture->creer) {
+ } elseif ($action == 'setretainedwarranty' && $user->hasRight('facture', 'creer')) {
$object->fetch($id);
$result = $object->setRetainedWarranty(GETPOST('retained_warranty', 'float'));
if ($result < 0) {
dol_print_error($db, $object->error);
}
- } elseif ($action == 'setretainedwarrantydatelimit' && $user->rights->facture->creer) {
+ } elseif ($action == 'setretainedwarrantydatelimit' && $user->hasRight('facture', 'creer')) {
$object->fetch($id);
$result = $object->setRetainedWarrantyDateLimit(GETPOST('retained_warranty_date_limit', 'float'));
if ($result < 0) {
@@ -4682,7 +4682,7 @@ if ($action == 'create') {
print '| ';
print $langs->trans('RetainedWarranty');
print ' | ';
- if ($action != 'editretainedwarranty' && $user->rights->facture->creer && $object->statut == Facture::STATUS_DRAFT) {
+ if ($action != 'editretainedwarranty' && $user->hasRight('facture', 'creer') && $object->statut == Facture::STATUS_DRAFT) {
print 'id.'">'.img_edit($langs->trans('setretainedwarranty'), 1).' | ';
}
@@ -4705,7 +4705,7 @@ if ($action == 'create') {
print '| ';
print $langs->trans('PaymentConditionsShortRetainedWarranty');
print ' | ';
- if ($action != 'editretainedwarrantypaymentterms' && $user->rights->facture->creer && $object->statut == Facture::STATUS_DRAFT) {
+ if ($action != 'editretainedwarrantypaymentterms' && $user->hasRight('facture', 'creer') && $object->statut == Facture::STATUS_DRAFT) {
print 'id.'">'.img_edit($langs->trans('setPaymentConditionsShortRetainedWarranty'), 1).' | ';
}
@@ -4740,7 +4740,7 @@ if ($action == 'create') {
print '| ';
print $langs->trans('RetainedWarrantyDateLimit');
print ' | ';
- if ($action != 'editretainedwarrantydatelimit' && $user->rights->facture->creer && $object->statut == Facture::STATUS_DRAFT) {
+ if ($action != 'editretainedwarrantydatelimit' && $user->hasRight('facture', 'creer') && $object->statut == Facture::STATUS_DRAFT) {
print 'id.'">'.img_edit($langs->trans('setretainedwarrantyDateLimit'), 1).' | ';
}
diff --git a/htdocs/compta/facture/contact.php b/htdocs/compta/facture/contact.php
index 2548284f97f..38d51f7b8b8 100644
--- a/htdocs/compta/facture/contact.php
+++ b/htdocs/compta/facture/contact.php
@@ -65,7 +65,7 @@ $usercancreate = $user->hasRight("facture", "creer");
* Add a new contact
*/
-if ($action == 'addcontact' && $user->rights->facture->creer) {
+if ($action == 'addcontact' && $user->hasRight('facture', 'creer')) {
if ($result > 0 && $id > 0) {
$contactid = (GETPOST('userid') ? GETPOST('userid', 'int') : GETPOST('contactid', 'int'));
$typeid = (GETPOST('typecontact') ? GETPOST('typecontact') : GETPOST('type'));
@@ -83,10 +83,10 @@ if ($action == 'addcontact' && $user->rights->facture->creer) {
setEventMessages($object->error, $object->errors, 'errors');
}
}
-} elseif ($action == 'swapstatut' && $user->rights->facture->creer) {
+} elseif ($action == 'swapstatut' && $user->hasRight('facture', 'creer')) {
// Toggle the status of a contact
$result = $object->swapContactStatus(GETPOST('ligne', 'int'));
-} elseif ($action == 'deletecontact' && $user->rights->facture->creer) {
+} elseif ($action == 'deletecontact' && $user->hasRight('facture', 'creer')) {
// Deletes a contact
$result = $object->delete_contact($lineid);
diff --git a/htdocs/compta/facture/prelevement.php b/htdocs/compta/facture/prelevement.php
index 790dc9e26ca..8af2972e1a0 100644
--- a/htdocs/compta/facture/prelevement.php
+++ b/htdocs/compta/facture/prelevement.php
@@ -483,7 +483,7 @@ if ($object->id > 0) {
print '| ';
print $langs->trans('DateInvoice');
print ' | ';
- if ($object->type != $object::TYPE_CREDIT_NOTE && $action != 'editinvoicedate' && !empty($object->brouillon) && $user->rights->facture->creer) {
+ if ($object->type != $object::TYPE_CREDIT_NOTE && $action != 'editinvoicedate' && !empty($object->brouillon) && $user->hasRight('facture', 'creer')) {
print 'id.'&type='.urlencode($type).'">'.img_edit($langs->trans('SetDate'), 1).' | ';
}
print ' ';
@@ -506,7 +506,7 @@ if ($object->id > 0) {
print '| ';
print $langs->trans('PaymentConditionsShort');
print ' | ';
- if ($object->type != $object::TYPE_CREDIT_NOTE && $action != 'editconditions' && !empty($object->brouillon) && $user->rights->facture->creer) {
+ if ($object->type != $object::TYPE_CREDIT_NOTE && $action != 'editconditions' && !empty($object->brouillon) && $user->hasRight('facture', 'creer')) {
print 'id.'&type='.urlencode($type).'">'.img_edit($langs->trans('SetConditions'), 1).' | ';
}
print ' ';
@@ -527,7 +527,7 @@ if ($object->id > 0) {
print '| ';
print $langs->trans('DateMaxPayment');
print ' | ';
- if ($object->type != $object::TYPE_CREDIT_NOTE && $action != 'editpaymentterm' && !empty($object->brouillon) && $user->rights->facture->creer) {
+ if ($object->type != $object::TYPE_CREDIT_NOTE && $action != 'editpaymentterm' && !empty($object->brouillon) && $user->hasRight('facture', 'creer')) {
print 'id.'&type='.urlencode($type).'">'.img_edit($langs->trans('SetDate'), 1).' | ';
}
print ' ';
@@ -556,7 +556,7 @@ if ($object->id > 0) {
print '';
@@ -577,7 +577,7 @@ if ($object->id > 0) {
print '';
@@ -662,7 +662,7 @@ if ($object->id > 0) {
print '| ';
print $langs->trans('RevenueStamp');
print ' | ';
- if ($action != 'editrevenuestamp' && !empty($object->brouillon) && $user->rights->facture->creer) {
+ if ($action != 'editrevenuestamp' && !empty($object->brouillon) && $user->hasRight('facture', 'creer')) {
print 'id.'">'.img_edit($langs->trans('SetRevenuStamp'), 1).' | ';
}
print ' ';
diff --git a/htdocs/compta/recap-compta.php b/htdocs/compta/recap-compta.php
index b8986a449ce..0808e5a7aab 100644
--- a/htdocs/compta/recap-compta.php
+++ b/htdocs/compta/recap-compta.php
@@ -117,7 +117,7 @@ if ($id > 0) {
dol_banner_tab($object, 'socid', '', ($user->socid ? 0 : 1), 'rowid', 'nom', '', '', 0, '', '', 1);
print dol_get_fiche_end();
- if (isModEnabled('facture') && $user->rights->facture->lire) {
+ if (isModEnabled('facture') && $user->hasRight('facture', 'lire')) {
// Invoice list
print load_fiche_titre($langs->trans("CustomerPreview"));
diff --git a/htdocs/contact/consumption.php b/htdocs/contact/consumption.php
index bbd5bf005d2..7d9a95bad56 100644
--- a/htdocs/contact/consumption.php
+++ b/htdocs/contact/consumption.php
@@ -156,21 +156,21 @@ print ' ';
if ($object->thirdparty->client) {
$thirdTypeArray['customer'] = $langs->trans("customer");
- if (isModEnabled("propal") && $user->rights->propal->lire) {
+ if (isModEnabled("propal") && $user->hasRight('propal', 'lire')) {
$elementTypeArray['propal'] = $langs->transnoentitiesnoconv('Proposals');
}
- if (isModEnabled('commande') && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->hasRight('commande', 'lire')) {
$elementTypeArray['order'] = $langs->transnoentitiesnoconv('Orders');
}
- if (isModEnabled('facture') && $user->rights->facture->lire) {
+ if (isModEnabled('facture') && $user->hasRight('facture', 'lire')) {
$elementTypeArray['invoice'] = $langs->transnoentitiesnoconv('Invoices');
}
- if (isModEnabled('contrat') && $user->rights->contrat->lire) {
+ if (isModEnabled('contrat') && $user->hasRight('contrat', 'lire')) {
$elementTypeArray['contract'] = $langs->transnoentitiesnoconv('Contracts');
}
}
-if (isModEnabled('ficheinter') && $user->rights->ficheinter->lire) {
+if (isModEnabled('ficheinter') && $user->hasRight('ficheinter', 'lire')) {
$elementTypeArray['fichinter'] = $langs->transnoentitiesnoconv('Interventions');
}
diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php
index 54779bb692d..10fe45ced69 100644
--- a/htdocs/contrat/card.php
+++ b/htdocs/contrat/card.php
@@ -214,7 +214,7 @@ if (empty($reshook)) {
}
// Add contract
- if ($action == 'add' && $user->rights->contrat->creer) {
+ if ($action == 'add' && $user->hasRight('contrat', 'creer')) {
// Check
if (empty($datecontrat)) {
$error++;
@@ -408,9 +408,9 @@ if (empty($reshook)) {
$action = 'create';
}
}
- } elseif ($action == 'classin' && $user->rights->contrat->creer) {
+ } elseif ($action == 'classin' && $user->hasRight('contrat', 'creer')) {
$object->setProject(GETPOST('projectid'));
- } elseif ($action == 'addline' && $user->rights->contrat->creer) {
+ } elseif ($action == 'addline' && $user->hasRight('contrat', 'creer')) {
// Add a new line
// Set if we used free entry or predefined product
$predef = '';
@@ -682,7 +682,7 @@ if (empty($reshook)) {
setEventMessages($object->error, $object->errors, 'errors');
}
}
- } elseif ($action == 'updateline' && $user->rights->contrat->creer && !GETPOST('cancel', 'alpha')) {
+ } elseif ($action == 'updateline' && $user->hasRight('contrat', 'creer') && !GETPOST('cancel', 'alpha')) {
$error = 0;
$predef = '';
@@ -795,7 +795,7 @@ if (empty($reshook)) {
} else {
$db->rollback();
}
- } elseif ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->rights->contrat->creer) {
+ } elseif ($action == 'confirm_deleteline' && $confirm == 'yes' && $user->hasRight('contrat', 'creer')) {
$result = $object->deleteline(GETPOST('lineid', 'int'), $user);
if ($result >= 0) {
@@ -804,7 +804,7 @@ if (empty($reshook)) {
} else {
setEventMessages($object->error, $object->errors, 'errors');
}
- } elseif ($action == 'confirm_valid' && $confirm == 'yes' && $user->rights->contrat->creer) {
+ } elseif ($action == 'confirm_valid' && $confirm == 'yes' && $user->hasRight('contrat', 'creer')) {
$result = $object->validate($user);
if ($result > 0) {
@@ -830,18 +830,18 @@ if (empty($reshook)) {
} else {
setEventMessages($object->error, $object->errors, 'errors');
}
- } elseif ($action == 'reopen' && $user->rights->contrat->creer) {
+ } elseif ($action == 'reopen' && $user->hasRight('contrat', 'creer')) {
$result = $object->reopen($user);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
- } elseif ($action == 'confirm_close' && $confirm == 'yes' && $user->rights->contrat->creer) {
+ } elseif ($action == 'confirm_close' && $confirm == 'yes' && $user->hasRight('contrat', 'creer')) {
// Close all lines
$result = $object->closeAll($user);
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
}
- } elseif ($action == 'confirm_activate' && $confirm == 'yes' && $user->rights->contrat->creer) {
+ } elseif ($action == 'confirm_activate' && $confirm == 'yes' && $user->hasRight('contrat', 'creer')) {
$date_start = dol_mktime(12, 0, 0, GETPOST('d_startmonth'), GETPOST('d_startday'), GETPOST('d_startyear'));
$date_end = dol_mktime(12, 0, 0, GETPOST('d_endmonth'), GETPOST('d_endday'), GETPOST('d_endyear'));
$comment = GETPOST('comment', 'alpha');
@@ -857,7 +857,7 @@ if (empty($reshook)) {
} else {
setEventMessages($object->error, $object->errors, 'errors');
}
- } elseif ($action == 'confirm_move' && $confirm == 'yes' && $user->rights->contrat->creer) {
+ } elseif ($action == 'confirm_move' && $confirm == 'yes' && $user->hasRight('contrat', 'creer')) {
if (GETPOST('newcid') > 0) {
$contractline = new ContratLigne($db);
$result = $contractline->fetch(GETPOSTINT('lineid'));
@@ -995,7 +995,7 @@ if (empty($reshook)) {
include DOL_DOCUMENT_ROOT.'/core/actions_sendmails.inc.php';
- if (!empty($conf->global->MAIN_DISABLE_CONTACTS_TAB) && $user->rights->contrat->creer) {
+ if (!empty($conf->global->MAIN_DISABLE_CONTACTS_TAB) && $user->hasRight('contrat', 'creer')) {
if ($action == 'addcontact') {
$contactid = (GETPOST('userid') ? GETPOST('userid') : GETPOST('contactid'));
$typeid = (GETPOST('typecontact') ? GETPOST('typecontact') : GETPOST('type'));
@@ -1351,7 +1351,7 @@ if ($action == 'create') {
// Contract
- if (!empty($object->brouillon) && $user->rights->contrat->creer) {
+ if (!empty($object->brouillon) && $user->hasRight('contrat', 'creer')) {
print '';
}
@@ -1826,7 +1826,7 @@ if ($action == 'create') {
/*
* Confirmation to delete service line of contract
*/
- if ($action == 'deleteline' && !$_REQUEST["cancel"] && $user->rights->contrat->creer && $object->lines[$cursorline - 1]->id == GETPOST('rowid')) {
+ if ($action == 'deleteline' && !$_REQUEST["cancel"] && $user->hasRight('contrat', 'creer') && $object->lines[$cursorline - 1]->id == GETPOST('rowid')) {
print $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$object->id."&lineid=".GETPOST('rowid'), $langs->trans("DeleteContractLine"), $langs->trans("ConfirmDeleteContractLine"), "confirm_deleteline", '', 0, 1);
if ($ret == 'html') {
print '';
@@ -1836,7 +1836,7 @@ if ($action == 'create') {
/*
* Confirmation to move service toward another contract
*/
- if ($action == 'move' && !$_REQUEST["cancel"] && $user->rights->contrat->creer && $object->lines[$cursorline - 1]->id == GETPOST('rowid')) {
+ if ($action == 'move' && !$_REQUEST["cancel"] && $user->hasRight('contrat', 'creer') && $object->lines[$cursorline - 1]->id == GETPOST('rowid')) {
$arraycontractid = array();
foreach ($arrayothercontracts as $contractcursor) {
$arraycontractid[$contractcursor->id] = $contractcursor->ref;
diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php
index 97b586a2cde..c35b0c3515f 100644
--- a/htdocs/contrat/class/contrat.class.php
+++ b/htdocs/contrat/class/contrat.class.php
@@ -2062,7 +2062,7 @@ class Contrat extends CommonObject
$label = implode($this->getTooltipContentArray($params));
$linkclose = '';
- if (empty($notooltip) && $user->rights->contrat->lire) {
+ if (empty($notooltip) && $user->hasRight('contrat', 'lire')) {
if (!empty($conf->global->MAIN_OPTIMIZEFORTEXTBROWSER)) {
$label = $langs->trans("ShowContract");
$linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"';
diff --git a/htdocs/contrat/contact.php b/htdocs/contrat/contact.php
index 6ca7b9b86ef..2af24364604 100644
--- a/htdocs/contrat/contact.php
+++ b/htdocs/contrat/contact.php
@@ -61,7 +61,7 @@ $permissiontoadd = $user->rights->contrat->creer; // Used by the include
* Actions
*/
-if ($action == 'addcontact' && $user->rights->contrat->creer) {
+if ($action == 'addcontact' && $user->hasRight('contrat', 'creer')) {
$result = $object->fetch($id);
if ($result > 0 && $id > 0) {
@@ -86,7 +86,7 @@ if ($action == 'addcontact' && $user->rights->contrat->creer) {
}
// bascule du statut d'un contact
-if ($action == 'swapstatut' && $user->rights->contrat->creer) {
+if ($action == 'swapstatut' && $user->hasRight('contrat', 'creer')) {
if ($object->fetch($id)) {
$result = $object->swapContactStatus(GETPOST('ligne', 'int'));
} else {
@@ -95,7 +95,7 @@ if ($action == 'swapstatut' && $user->rights->contrat->creer) {
}
// Delete contact
-if ($action == 'deletecontact' && $user->rights->contrat->creer) {
+if ($action == 'deletecontact' && $user->hasRight('contrat', 'creer')) {
$object->fetch($id);
$result = $object->delete_contact(GETPOST("lineid", 'int'));
diff --git a/htdocs/contrat/index.php b/htdocs/contrat/index.php
index c40453ec7af..a8ca8a67444 100644
--- a/htdocs/contrat/index.php
+++ b/htdocs/contrat/index.php
@@ -239,7 +239,7 @@ print "
";
// Draft contracts
-if (isModEnabled('contrat') && $user->rights->contrat->lire) {
+if (isModEnabled('contrat') && $user->hasRight('contrat', 'lire')) {
$sql = "SELECT c.rowid, c.ref,";
$sql .= " s.nom as name, s.name_alias, s.logo, s.rowid as socid, s.client, s.fournisseur, s.code_client, s.code_fournisseur, s.code_compta, s.code_compta_fournisseur";
$sql .= " FROM ".MAIN_DB_PREFIX."contrat as c, ".MAIN_DB_PREFIX."societe as s";
diff --git a/htdocs/core/ajax/ajaxtooltip.php b/htdocs/core/ajax/ajaxtooltip.php
index 3933f03533b..8652908eced 100644
--- a/htdocs/core/ajax/ajaxtooltip.php
+++ b/htdocs/core/ajax/ajaxtooltip.php
@@ -118,7 +118,6 @@ if ($objecttype == 'facture' || $objecttype == 'invoice') {
$module = 'contrat';
$myobject = 'contrat';
} elseif ($objecttype == 'member') {
- $langs->load('members');
$classpath = 'adherents/class';
$module = 'adherent';
$myobject = 'adherent';
diff --git a/htdocs/core/ajax/loadinplace.php b/htdocs/core/ajax/loadinplace.php
index 1cdecf6306d..af033c8cdd3 100644
--- a/htdocs/core/ajax/loadinplace.php
+++ b/htdocs/core/ajax/loadinplace.php
@@ -80,7 +80,7 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e
if ($user->rights->$element->lire || $user->rights->$element->read
|| (isset($subelement) && ($user->rights->$element->$subelement->lire || $user->rights->$element->$subelement->read))
- || ($element == 'payment' && $user->rights->facture->lire)
+ || ($element == 'payment' && $user->hasRight('facture', 'lire'))
|| ($element == 'payment_supplier' && $user->rights->fournisseur->facture->lire)) {
if ($type == 'select') {
$methodname = 'load_cache_'.$loadmethod;
diff --git a/htdocs/core/ajax/row.php b/htdocs/core/ajax/row.php
index 0254a7502f8..ec3ee105420 100644
--- a/htdocs/core/ajax/row.php
+++ b/htdocs/core/ajax/row.php
@@ -74,13 +74,13 @@ if (GETPOST('roworder', 'alpha', 3) && GETPOST('table_element_line', 'aZ09', 3)
// Make test on permission
$perm = 0;
- if ($table_element_line == 'propaldet' && $user->rights->propal->creer) {
+ if ($table_element_line == 'propaldet' && $user->hasRight('propal', 'creer')) {
$perm = 1;
- } elseif ($table_element_line == 'commandedet' && $user->rights->commande->creer) {
+ } elseif ($table_element_line == 'commandedet' && $user->hasRight('commande', 'creer')) {
$perm = 1;
- } elseif ($table_element_line == 'facturedet' && $user->rights->facture->creer) {
+ } elseif ($table_element_line == 'facturedet' && $user->hasRight('facture', 'creer')) {
$perm = 1;
- } elseif ($table_element_line == 'facturedet_rec' && $user->rights->facture->creer) {
+ } elseif ($table_element_line == 'facturedet_rec' && $user->hasRight('facture', 'creer')) {
$perm = 1;
} elseif ($table_element_line == 'emailcollector_emailcollectoraction' && $user->admin) {
$perm = 1;
diff --git a/htdocs/core/boxes/box_services_contracts.php b/htdocs/core/boxes/box_services_contracts.php
index 433db55a515..81cd361f4a1 100644
--- a/htdocs/core/boxes/box_services_contracts.php
+++ b/htdocs/core/boxes/box_services_contracts.php
@@ -81,7 +81,7 @@ class box_services_contracts extends ModeleBoxes
$this->info_box_head = array('text' => $langs->trans("BoxLastProductsInContract", $max));
- if ($user->rights->service->lire && $user->rights->contrat->lire) {
+ if ($user->rights->service->lire && $user->hasRight('contrat', 'lire')) {
$contractstatic = new Contrat($this->db);
$contractlinestatic = new ContratLigne($this->db);
$thirdpartytmp = new Societe($this->db);
diff --git a/htdocs/core/class/commondocgenerator.class.php b/htdocs/core/class/commondocgenerator.class.php
index 33d5e5a97c6..51fdbbcfdc8 100644
--- a/htdocs/core/class/commondocgenerator.class.php
+++ b/htdocs/core/class/commondocgenerator.class.php
@@ -145,7 +145,11 @@ abstract class CommonDocGenerator
'myuser_email'=>$user->email,
'myuser_logo'=>$logotouse,
'myuser_job'=>$user->job,
- 'myuser_web'=>'' // url not exist in $user object
+ 'myuser_web'=>'', // url not exist in $user object
+ 'myuser_birth'=>dol_print_date($user->birth, 'day', 'gmt'),
+ 'myuser_dateemployment'=>dol_print_date($user->dateemployment, 'day', 'tzuser'),
+ 'myuser_dateemploymentend'=>dol_print_date($user->dateemploymentend, 'day', 'tzuser'),
+ 'myuser_gender'=>$user->gender,
);
// Retrieve extrafields
if (is_array($user->array_options) && count($user->array_options)) {
diff --git a/htdocs/core/lib/product.lib.php b/htdocs/core/lib/product.lib.php
index e919bf2c8b6..8fc0ce26f7d 100644
--- a/htdocs/core/lib/product.lib.php
+++ b/htdocs/core/lib/product.lib.php
@@ -432,7 +432,7 @@ function show_stats_for_company($product, $socid)
print ' ';
// Customer proposals
- if (isModEnabled("propal") && $user->rights->propal->lire) {
+ if (isModEnabled("propal") && $user->hasRight('propal', 'lire')) {
$nblines++;
$ret = $product->load_stats_propale($socid);
if ($ret < 0) {
@@ -470,7 +470,7 @@ function show_stats_for_company($product, $socid)
print '';
}
// Sales orders
- if (isModEnabled('commande') && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->hasRight('commande', 'lire')) {
$nblines++;
$ret = $product->load_stats_commande($socid);
if ($ret < 0) {
@@ -508,7 +508,7 @@ function show_stats_for_company($product, $socid)
print '';
}
// Customer invoices
- if (isModEnabled('facture') && $user->rights->facture->lire) {
+ if (isModEnabled('facture') && $user->hasRight('facture', 'lire')) {
$nblines++;
$ret = $product->load_stats_facture($socid);
if ($ret < 0) {
@@ -527,7 +527,7 @@ function show_stats_for_company($product, $socid)
print '';
}
// Customer template invoices
- if (isModEnabled("facture") && $user->rights->facture->lire) {
+ if (isModEnabled("facture") && $user->hasRight('facture', 'lire')) {
$nblines++;
$ret = $product->load_stats_facturerec($socid);
if ($ret < 0) {
@@ -566,7 +566,7 @@ function show_stats_for_company($product, $socid)
}
// Contracts
- if (isModEnabled('contrat') && $user->rights->contrat->lire) {
+ if (isModEnabled('contrat') && $user->hasRight('contrat', 'lire')) {
$nblines++;
$ret = $product->load_stats_contrat($socid);
if ($ret < 0) {
diff --git a/htdocs/core/modules/modCommande.class.php b/htdocs/core/modules/modCommande.class.php
index d7b9d6da1ed..4fae3b1e0c9 100644
--- a/htdocs/core/modules/modCommande.class.php
+++ b/htdocs/core/modules/modCommande.class.php
@@ -79,7 +79,7 @@ class modCommande extends DolibarrModules
$this->const[$r][0] = "COMMANDE_ADDON_PDF";
$this->const[$r][1] = "chaine";
- $this->const[$r][2] = "einstein";
+ $this->const[$r][2] = "eratosthene";
$this->const[$r][3] = 'Name of PDF model of order';
$this->const[$r][4] = 0;
diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php
index f08a93b4339..c3a8cd796fc 100644
--- a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php
+++ b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php
@@ -945,31 +945,31 @@ class doc_generic_project_odt extends ModelePDFProjects
'title' => "ListProposalsAssociatedProject",
'class' => 'Propal',
'table' => 'propal',
- 'test' => $conf->propal->enabled && $user->rights->propal->lire
+ 'test' => isModEnabled('propal') && $user->hasRight('propal', 'lire')
),
'order' => array(
'title' => "ListOrdersAssociatedProject",
'class' => 'Commande',
'table' => 'commande',
- 'test' => $conf->commande->enabled && $user->rights->commande->lire
+ 'test' => isModEnabled('commande') && $user->hasRight('commande', 'lire')
),
'invoice' => array(
'title' => "ListInvoicesAssociatedProject",
'class' => 'Facture',
'table' => 'facture',
- 'test' => $conf->facture->enabled && $user->rights->facture->lire
+ 'test' => isModEnabled('facture') && $user->hasRight('facture', 'lire')
),
'invoice_predefined' => array(
'title' => "ListPredefinedInvoicesAssociatedProject",
'class' => 'FactureRec',
'table' => 'facture_rec',
- 'test' => $conf->facture->enabled && $user->rights->facture->lire
+ 'test' => isModEnabled('facture') && $user->hasRight('facture', 'lire')
),
'proposal_supplier' => array(
'title' => "ListSupplierProposalsAssociatedProject",
'class' => 'SupplierProposal',
'table' => 'supplier_proposal',
- 'test' => $conf->supplier_proposal->enabled && $user->rights->supplier_proposal->lire
+ 'test' => isModEnabled('supplier_proposal') && $user->rights->supplier_proposal->lire
),
'order_supplier' => array(
'title' => "ListSupplierOrdersAssociatedProject",
@@ -987,14 +987,14 @@ class doc_generic_project_odt extends ModelePDFProjects
'title' => "ListContractAssociatedProject",
'class' => 'Contrat',
'table' => 'contrat',
- 'test' => $conf->contrat->enabled && $user->rights->contrat->lire
+ 'test' => isModEnabled('contrat') && $user->hasRight('contrat', 'lire')
),
'intervention' => array(
'title' => "ListFichinterAssociatedProject",
'class' => 'Fichinter',
'table' => 'fichinter',
'disableamount' => 1,
- 'test' => $conf->ficheinter->enabled && $user->rights->ficheinter->lire
+ 'test' => $conf->ficheinter->enabled && $user->hasRight('ficheinter', 'lire')
),
'shipping' => array(
'title' => "ListShippingAssociatedProject",
diff --git a/htdocs/core/modules/project/doc/pdf_beluga.modules.php b/htdocs/core/modules/project/doc/pdf_beluga.modules.php
index 7cf7c96aef2..e72198e5b22 100644
--- a/htdocs/core/modules/project/doc/pdf_beluga.modules.php
+++ b/htdocs/core/modules/project/doc/pdf_beluga.modules.php
@@ -374,7 +374,7 @@ class pdf_beluga extends ModelePDFProjects
'class'=>'Propal',
'table'=>'propal',
'datefieldname'=>'datep',
- 'test'=>$conf->propal->enabled && $user->rights->propal->lire,
+ 'test'=> isModEnabled('propal') && $user->hasRight('propal', 'lire'),
'lang'=>'propal'),
'order'=>array(
'name'=>"CustomersOrders",
@@ -382,7 +382,7 @@ class pdf_beluga extends ModelePDFProjects
'class'=>'Commande',
'table'=>'commande',
'datefieldname'=>'date_commande',
- 'test'=>$conf->commande->enabled && $user->rights->commande->lire,
+ 'test'=> isModEnabled('commande') && $user->hasRight('commande', 'lire'),
'lang'=>'orders'),
'invoice'=>array(
'name'=>"CustomersInvoices",
@@ -391,7 +391,7 @@ class pdf_beluga extends ModelePDFProjects
'margin'=>'add',
'table'=>'facture',
'datefieldname'=>'datef',
- 'test'=>$conf->facture->enabled && $user->rights->facture->lire,
+ 'test'=> isModEnabled('facture') && $user->hasRight('facture', 'lire'),
'lang'=>'bills'),
'invoice_predefined'=>array(
'name'=>"PredefinedInvoices",
@@ -399,7 +399,7 @@ class pdf_beluga extends ModelePDFProjects
'class'=>'FactureRec',
'table'=>'facture_rec',
'datefieldname'=>'datec',
- 'test'=>$conf->facture->enabled && $user->rights->facture->lire,
+ 'test'=> isModEnabled('facture') && $user->hasRight('facture', 'lire'),
'lang'=>'bills'),
'order_supplier'=>array(
'name'=>"SuppliersOrders",
@@ -424,7 +424,7 @@ class pdf_beluga extends ModelePDFProjects
'class'=>'Contrat',
'table'=>'contrat',
'datefieldname'=>'date_contrat',
- 'test'=>$conf->contrat->enabled && $user->rights->contrat->lire,
+ 'test'=> isModEnabled('contrat') && $user->hasRight('contrat', 'lire'),
'lang'=>'contract'),
'intervention'=>array(
'name'=>"Interventions",
@@ -433,7 +433,7 @@ class pdf_beluga extends ModelePDFProjects
'table'=>'fichinter',
'datefieldname'=>'date_valid',
'disableamount'=>1,
- 'test'=>$conf->ficheinter->enabled && $user->rights->ficheinter->lire,
+ 'test'=>$conf->ficheinter->enabled && $user->hasRight('ficheinter', 'lire'),
'lang'=>'interventions'),
'trip'=>array(
'name'=>"TripsAndExpenses",
diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php
index dd6dfee55b1..0592b5cfdcf 100644
--- a/htdocs/expedition/class/expedition.class.php
+++ b/htdocs/expedition/class/expedition.class.php
@@ -90,6 +90,15 @@ class Expedition extends CommonObject
*/
public $fields = array();
+ /**
+ * @var int ID of user author
+ */
+ public $user_author_id;
+
+ /**
+ * @var int ID of user author
+ */
+ public $fk_user_author;
public $socid;
@@ -175,8 +184,35 @@ class Expedition extends CommonObject
public $meths;
public $listmeths; // List of carriers
+ /**
+ * @var int ID of order
+ */
+ public $commande_id;
+
+ /**
+ * @var Commande order
+ */
+ public $commande;
+
+ /**
+ * @var ExpeditionLigne[] array of shipping lines
+ */
public $lines = array();
+ // Multicurrency
+ /**
+ * @var int Currency ID
+ */
+ public $fk_multicurrency;
+
+ /**
+ * @var string multicurrency code
+ */
+ public $multicurrency_code;
+ public $multicurrency_tx;
+ public $multicurrency_total_ht;
+ public $multicurrency_total_tva;
+ public $multicurrency_total_ttc;
/**
* Draft status
@@ -565,6 +601,7 @@ class Expedition extends CommonObject
$this->ref_ext = $obj->ref_ext;
$this->statut = $obj->fk_statut;
$this->user_author_id = $obj->fk_user_author;
+ $this->fk_user_author = $obj->fk_user_author;
$this->date_creation = $this->db->jdate($obj->date_creation);
$this->date_valid = $this->db->jdate($obj->date_valid);
$this->date = $this->db->jdate($obj->date_expedition); // TODO deprecated
@@ -1784,6 +1821,30 @@ class Expedition extends CommonObject
}
+ /**
+ * getTooltipContentArray
+ *
+ * @param array $params ex option, infologin
+ * @since v18
+ * @return array
+ */
+ public function getTooltipContentArray($params)
+ {
+ global $conf, $langs;
+
+ $langs->load('shipping');
+ $nofetch = empty($params['nofetch']) ? false : true;
+ $datas = [];
+ $datas['picto'] = img_picto('', $this->picto).' '.$langs->trans("Shipment").'';
+ if (isset($this->statut)) {
+ $datas['picto'] .= ' '.$this->getLibStatut(5);
+ }
+ $datas['ref'] = ' '.$langs->trans('Ref').': '.$this->ref;
+ $datas['refcustomer'] = ' '.$langs->trans('RefCustomer').': '.($this->ref_customer ? $this->ref_customer : $this->ref_client);
+
+ return $datas;
+ }
+
/**
* Return clicable link of object (with eventually picto)
*
@@ -1800,9 +1861,20 @@ class Expedition extends CommonObject
global $langs, $conf, $hookmanager;
$result = '';
- $label = ''.$langs->trans("Shipment").'';
- $label .= ' '.$langs->trans('Ref').': '.$this->ref;
- $label .= ' '.$langs->trans('RefCustomer').': '.($this->ref_customer ? $this->ref_customer : $this->ref_client);
+ $params = [
+ 'id' => $this->id,
+ 'objecttype' => $this->element,
+ 'option' => $option,
+ 'nofetch' => 1,
+ ];
+ $classfortooltip = 'classfortooltip';
+ $dataparams = '';
+ if (getDolGlobalInt('MAIN_ENABLE_AJAX_TOOLTIP')) {
+ $classfortooltip = 'classforajaxtooltip';
+ $dataparams = ' data-params='.json_encode($params);
+ // $label = $langs->trans('Loading');
+ }
+ $label = implode($this->getTooltipContentArray($params));
$url = DOL_URL_ROOT.'/expedition/card.php?id='.$this->id;
@@ -1827,8 +1899,8 @@ class Expedition extends CommonObject
$label = $langs->trans("Shipment");
$linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"';
}
- $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"';
- $linkclose .= ' class="classfortooltip"';
+ $linkclose .= $dataparams.' title="'.dol_escape_htmltag($label, 1).'"';
+ $linkclose .= ' class="'.$classfortooltip.'"';
}
$linkstart = 'picto, ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1);
+ $result .= img_object(($notooltip ? '' : $label), $this->picto, ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : $dataparams.' class="'.(($withpicto != 2) ? 'paddingright ' : '').$classfortooltip.'"'), 0, 0, $notooltip ? 0 : 1);
}
if ($withpicto != 2) {
$result .= $this->ref;
diff --git a/htdocs/expedition/shipment.php b/htdocs/expedition/shipment.php
index b4a89c5be30..c61249877a3 100644
--- a/htdocs/expedition/shipment.php
+++ b/htdocs/expedition/shipment.php
@@ -104,7 +104,7 @@ if (empty($reshook)) {
if ($action == 'confirm_cloture' && GETPOST('confirm', 'alpha') == 'yes') {
$object->fetch($id);
$result = $object->cloture($user);
- } elseif ($action == 'setref_client' && $user->rights->commande->creer) {
+ } elseif ($action == 'setref_client' && $user->hasRight('commande', 'creer')) {
// Positionne ref commande client
$result = $object->set_ref_client($user, GETPOST('ref_client'));
if ($result < 0) {
@@ -112,7 +112,7 @@ if (empty($reshook)) {
}
}
- if ($action == 'setdatedelivery' && $user->rights->commande->creer) {
+ if ($action == 'setdatedelivery' && $user->hasRight('commande', 'creer')) {
$datedelivery = dol_mktime(GETPOST('liv_hour', 'int'), GETPOST('liv_min', 'int'), 0, GETPOST('liv_month', 'int'), GETPOST('liv_day', 'int'), GETPOST('liv_year', 'int'));
$object->fetch($id);
@@ -122,7 +122,7 @@ if (empty($reshook)) {
}
}
/*
- if ($action == 'setdeliveryaddress' && $user->rights->commande->creer)
+ if ($action == 'setdeliveryaddress' && $user->hasRight('commande', 'creer'))
{
$object = new Commande($db);
$object->fetch($id);
@@ -131,7 +131,7 @@ if (empty($reshook)) {
setEventMessages($object->error, $object->errors, 'errors');
}
*/
- if ($action == 'setmode' && $user->rights->commande->creer) {
+ if ($action == 'setmode' && $user->hasRight('commande', 'creer')) {
$object->fetch($id);
$result = $object->setPaymentMethods(GETPOST('mode_reglement_id', 'int'));
if ($result < 0) {
@@ -139,7 +139,7 @@ if (empty($reshook)) {
}
}
- if ($action == 'setavailability' && $user->rights->commande->creer) {
+ if ($action == 'setavailability' && $user->hasRight('commande', 'creer')) {
$object->fetch($id);
$result = $object->availability(GETPOST('availability_id'));
if ($result < 0) {
@@ -147,7 +147,7 @@ if (empty($reshook)) {
}
}
- if ($action == 'setdemandreason' && $user->rights->commande->creer) {
+ if ($action == 'setdemandreason' && $user->hasRight('commande', 'creer')) {
$object->fetch($id);
$result = $object->demand_reason(GETPOST('demand_reason_id'));
if ($result < 0) {
@@ -155,7 +155,7 @@ if (empty($reshook)) {
}
}
- if ($action == 'setconditions' && $user->rights->commande->creer) {
+ if ($action == 'setconditions' && $user->hasRight('commande', 'creer')) {
$object->fetch($id);
$result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int'));
if ($result < 0) {
@@ -170,7 +170,7 @@ if (empty($reshook)) {
}
// shipping method
- if ($action == 'setshippingmethod' && $user->rights->commande->creer) {
+ if ($action == 'setshippingmethod' && $user->hasRight('commande', 'creer')) {
$object->fetch($id);
$result = $object->setShippingMethod(GETPOST('shipping_method_id', 'int'));
if ($result < 0) {
@@ -179,7 +179,7 @@ if (empty($reshook)) {
}
// warehouse
- if ($action == 'setwarehouse' && $user->rights->commande->creer) {
+ if ($action == 'setwarehouse' && $user->hasRight('commande', 'creer')) {
$object->fetch($id);
$result = $object->setWarehouse(GETPOST('warehouse_id', 'int'));
if ($result < 0) {
@@ -210,7 +210,7 @@ if (empty($reshook)) {
}
}
- if ($action == 'set_thirdparty' && $user->rights->commande->creer) {
+ if ($action == 'set_thirdparty' && $user->hasRight('commande', 'creer')) {
$object->fetch($id);
$object->setValueFrom('fk_soc', $socid, '', '', 'date', '', $user, 'ORDER_MODIFY');
@@ -427,7 +427,7 @@ if ($id > 0 || !empty($ref)) {
print '| ';
print $langs->trans('Warehouse');
print ' | ';
- if ($action != 'editwarehouse' && $user->rights->commande->creer) {
+ if ($action != 'editwarehouse' && $user->hasRight('commande', 'creer')) {
print 'id.'">'.img_edit($langs->trans('SetWarehouse'), 1).' | ';
}
print ' ';
diff --git a/htdocs/expensereport/class/expensereport.class.php b/htdocs/expensereport/class/expensereport.class.php
index a3c726ef521..84094914107 100644
--- a/htdocs/expensereport/class/expensereport.class.php
+++ b/htdocs/expensereport/class/expensereport.class.php
@@ -1693,6 +1693,44 @@ class ExpenseReport extends CommonObject
}
}
+ /**
+ * getTooltipContentArray
+ *
+ * @param array $params ex option, infologin
+ * @since v18
+ * @return array
+ */
+ public function getTooltipContentArray($params)
+ {
+ global $conf, $langs;
+
+ $langs->load('expensereport');
+ $nofetch = empty($params['nofetch']) ? false : true;
+ $moretitle = $params['moretitle'] ?? '';
+ $datas = [];
+ $datas['picto'] = img_picto('', $this->picto).' '.$langs->trans("ExpenseReport").'';
+ if (isset($this->status)) {
+ $datas['picto'] .= ' '.$this->getLibStatut(5);
+ }
+ if ($moretitle) {
+ $datas['picto'] .= ' - '.$moretitle;
+ }
+ if (!empty($this->ref)) {
+ $datas['ref'] = ' '.$langs->trans('Ref').': '.$this->ref;
+ }
+ if (!empty($this->total_ht)) {
+ $datas['total_ht'] = ' '.$langs->trans('AmountHT').': '.price($this->total_ht, 0, $langs, 0, -1, -1, $conf->currency);
+ }
+ if (!empty($this->total_tva)) {
+ $datas['total_tva'] = ' '.$langs->trans('VAT').': '.price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency);
+ }
+ if (!empty($this->total_ttc)) {
+ $datas['total_ttc'] = ' '.$langs->trans('AmountTTC').': '.price($this->total_ttc, 0, $langs, 0, -1, -1, $conf->currency);
+ }
+
+ return $datas;
+ }
+
/**
* Return clicable name (with picto eventually)
*
@@ -1717,25 +1755,21 @@ class ExpenseReport extends CommonObject
return $url;
}
- $label = img_picto('', $this->picto).' '.$langs->trans("ExpenseReport").'';
- if (isset($this->status)) {
- $label .= ' '.$this->getLibStatut(5);
- }
- if (!empty($this->ref)) {
- $label .= ' '.$langs->trans('Ref').': '.$this->ref;
- }
- if (!empty($this->total_ht)) {
- $label .= ' '.$langs->trans('AmountHT').': '.price($this->total_ht, 0, $langs, 0, -1, -1, $conf->currency);
- }
- if (!empty($this->total_tva)) {
- $label .= ' '.$langs->trans('VAT').': '.price($this->total_tva, 0, $langs, 0, -1, -1, $conf->currency);
- }
- if (!empty($this->total_ttc)) {
- $label .= ' '.$langs->trans('AmountTTC').': '.price($this->total_ttc, 0, $langs, 0, -1, -1, $conf->currency);
- }
- if ($moretitle) {
- $label .= ' - '.$moretitle;
+ $params = [
+ 'id' => $this->id,
+ 'objecttype' => $this->element,
+ 'option' => $option,
+ 'moretitle' => $moretitle,
+ 'nofetch' => 1,
+ ];
+ $classfortooltip = 'classfortooltip';
+ $dataparams = '';
+ if (getDolGlobalInt('MAIN_ENABLE_AJAX_TOOLTIP')) {
+ $classfortooltip = 'classforajaxtooltip';
+ $dataparams = " data-params='".json_encode($params)."'";
+ // $label = $langs->trans('Loading');
}
+ $label = implode($this->getTooltipContentArray($params));
if ($option != 'nolink') {
// Add param to save lastsearch_values or not
@@ -1759,8 +1793,8 @@ class ExpenseReport extends CommonObject
$label = $langs->trans("ShowExpenseReport");
$linkclose .= ' alt="'.dol_escape_htmltag($label, 1).'"';
}
- $linkclose .= ' title="'.dol_escape_htmltag($label, 1).'"';
- $linkclose .= ' class="classfortooltip"';
+ $linkclose .= $dataparams.' title="'.dol_escape_htmltag($label, 1).'"';
+ $linkclose .= ' class="'.$classfortooltip.'"';
}
$linkstart = 'picto, ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : 'class="'.(($withpicto != 2) ? 'paddingright ' : '').'classfortooltip"'), 0, 0, $notooltip ? 0 : 1);
+ $result .= img_object(($notooltip ? '' : $label), $this->picto, ($notooltip ? (($withpicto != 2) ? 'class="paddingright"' : '') : $dataparams.' class="'.(($withpicto != 2) ? 'paddingright ' : '').$classfortooltip.'"'), 0, 0, $notooltip ? 0 : 1);
}
if ($withpicto != 2) {
$result .= ($max ? dol_trunc($ref, $max) : $ref);
diff --git a/htdocs/fichinter/card-rec.php b/htdocs/fichinter/card-rec.php
index bfed76168d5..de6d5f97c24 100644
--- a/htdocs/fichinter/card-rec.php
+++ b/htdocs/fichinter/card-rec.php
@@ -238,18 +238,18 @@ if ($action == 'add') {
$id = 0;
header('Location: '.$_SERVER["PHP_SELF"]);
exit;
-} elseif ($action == 'setfrequency' && $user->rights->ficheinter->creer) {
+} elseif ($action == 'setfrequency' && $user->hasRight('ficheinter', 'creer')) {
// Set frequency and unit frequency
$object->fetch($id);
$object->setFrequencyAndUnit(GETPOST('frequency', 'int'), GETPOST('unit_frequency', 'alpha'));
-} elseif ($action == 'setdate_when' && $user->rights->ficheinter->creer) {
+} elseif ($action == 'setdate_when' && $user->hasRight('ficheinter', 'creer')) {
// Set next date of execution
$object->fetch($id);
$date = dol_mktime(GETPOST('date_whenhour'), GETPOST('date_whenmin'), 0, GETPOST('date_whenmonth'), GETPOST('date_whenday'), GETPOST('date_whenyear'));
if (!empty($date)) {
$object->setNextDate($date);
}
-} elseif ($action == 'setnb_gen_max' && $user->rights->ficheinter->creer) {
+} elseif ($action == 'setnb_gen_max' && $user->hasRight('ficheinter', 'creer')) {
// Set max period
$object->fetch($id);
$object->setMaxPeriod(GETPOST('nb_gen_max', 'int'));
@@ -611,7 +611,7 @@ if ($action == 'create') {
print '
| |