';
if (!empty($conf->global->BILL_ADD_PAYMENT_VALIDATION)) {
if ($user->socid == 0 && $object->statut == 0 && $action == '') {
- if ($user->rights->facture->paiement) {
+ if ($user->hasRight('facture', 'paiement')) {
print '
'.$langs->trans('Valid').' ';
}
}
diff --git a/htdocs/compta/payment_sc/card.php b/htdocs/compta/payment_sc/card.php
index 8d89326d2c2..4a1d44b6c92 100644
--- a/htdocs/compta/payment_sc/card.php
+++ b/htdocs/compta/payment_sc/card.php
@@ -246,8 +246,7 @@ if (!empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))
{
if ($user->socid == 0 && $object->statut == 0 && $_GET['action'] == '')
{
- if ($user->rights->facture->paiement)
- {
+ if ($user->hasRight('facture', 'paiement')){
print '
'.$langs->trans('Valid').' ';
}
}
diff --git a/htdocs/compta/payment_vat/card.php b/htdocs/compta/payment_vat/card.php
index eec0cff4d6f..bf4eb7ecaef 100644
--- a/htdocs/compta/payment_vat/card.php
+++ b/htdocs/compta/payment_vat/card.php
@@ -287,8 +287,7 @@ if (!empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))
{
if ($user->socid == 0 && $object->statut == 0 && $_GET['action'] == '')
{
- if ($user->rights->facture->paiement)
- {
+ if ($user->hasRight('facture', 'paiement')) {
print '
'.$langs->trans('Valid').' ';
}
}
diff --git a/htdocs/contact/canvas/default/actions_contactcard_default.class.php b/htdocs/contact/canvas/default/actions_contactcard_default.class.php
index 20be2b468b4..157e00c5c4a 100644
--- a/htdocs/contact/canvas/default/actions_contactcard_default.class.php
+++ b/htdocs/contact/canvas/default/actions_contactcard_default.class.php
@@ -110,7 +110,7 @@ class ActionsContactCardDefault extends ActionsContactCardCommon
$this->tpl['actionsdone'] = show_actions_done($conf, $langs, $db, $objsoc, $this->object, 1);
} else {
// Confirm delete contact
- if ($action == 'delete' && $user->rights->societe->contact->supprimer) {
+ if ($action == 'delete' && $user->hasRight('societe', 'contact', 'supprimer')) {
$this->tpl['action_delete'] = $form->formconfirm($_SERVER["PHP_SELF"]."?id=".$this->object->id, $langs->trans("DeleteContact"), $langs->trans("ConfirmDeleteContact"), "confirm_delete", '', 0, 1);
}
}
diff --git a/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php b/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php
index adf5bb722d3..127375b8c92 100644
--- a/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php
+++ b/htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php
@@ -142,7 +142,7 @@ if (empty($user->socid)) {
print '
control->tpl['id'].'&action=edit&token='.newToken().'&canvas='.$canvas.'">'.$langs->trans('Modify').' ';
}
- if (!$this->control->tpl['user_id'] && $user->rights->user->user->creer) {
+ if (!$this->control->tpl['user_id'] && $user->hasRight('user', 'user', 'creer')) {
print '
control->tpl['id'].'&action=create_user&token='.newToken().'&canvas='.$canvas.'">'.$langs->trans("CreateDolibarrLogin").' ';
}
diff --git a/htdocs/contact/card.php b/htdocs/contact/card.php
index 739c4145db8..285201a574d 100644
--- a/htdocs/contact/card.php
+++ b/htdocs/contact/card.php
@@ -143,7 +143,7 @@ if (empty($reshook)) {
}
// Creation utilisateur depuis contact
- if ($action == 'confirm_create_user' && $confirm == 'yes' && $user->rights->user->user->creer) {
+ if ($action == 'confirm_create_user' && $confirm == 'yes' && $user->hasRight('user', 'user', 'creer')) {
// Recuperation contact actuel
$result = $object->fetch($id);
@@ -313,7 +313,7 @@ if (empty($reshook)) {
}
}
- if ($action == 'confirm_delete' && $confirm == 'yes' && $user->rights->societe->contact->supprimer) {
+ if ($action == 'confirm_delete' && $confirm == 'yes' && $user->hasRight('societe', 'contact', 'supprimer')) {
$result = $object->fetch($id);
$object->oldcopy = clone $object;
@@ -1390,7 +1390,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print '
';
print $langs->trans('ProspectLevel');
print ' ';
- if ($action != 'editlevel' && $user->rights->societe->contact->creer) {
+ if ($action != 'editlevel' && $user->hasRight('societe', 'contact', 'creer')) {
print ' id.'">'.img_edit($langs->trans('Modify'), 1).' ';
}
print '
';
@@ -1491,7 +1491,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print $dolibarr_user->getLoginUrl(-1);
} else {
//print '
'.$langs->trans("NoDolibarrAccess").' ';
- if (!$object->user_id && $user->rights->user->user->creer) {
+ if (!$object->user_id && $user->hasRight('user', 'user', 'creer')) {
print '
'.img_picto($langs->trans("CreateDolibarrLogin"), 'add', 'class="pictofixedwidth"').$langs->trans("CreateDolibarrLogin").' ';
}
}
@@ -1527,11 +1527,11 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
}
// Activer
- if ($object->statut == 0 && $user->rights->societe->contact->creer) {
+ if ($object->statut == 0 && $user->hasRight('societe', 'contact', 'creer')) {
print '
'.$langs->trans("Reactivate").' ';
}
// Desactiver
- if ($object->statut == 1 && $user->rights->societe->contact->creer) {
+ if ($object->statut == 1 && $user->hasRight('societe', 'contact', 'creer')) {
print '
'.$langs->trans("DisableUser").' ';
}
diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php
index 2d64c5b8921..a9341cf5d63 100644
--- a/htdocs/contact/list.php
+++ b/htdocs/contact/list.php
@@ -847,7 +847,7 @@ $arrayofmassactions = array(
if (!empty($permissiontodelete)) {
$arrayofmassactions['predelete'] = img_picto('', 'delete', 'class="pictofixedwidth"').$langs->trans("Delete");
}
-if (isModEnabled('category') && $user->rights->societe->creer) {
+if (isModEnabled('category') && $user->hasRight('societe', 'creer')) {
$arrayofmassactions['preaffecttag'] = img_picto('', 'category', 'class="pictofixedwidth"').$langs->trans("AffectTag");
}
if (in_array($massaction, array('presend', 'predelete','preaffecttag'))) {
diff --git a/htdocs/contact/perso.php b/htdocs/contact/perso.php
index ba5fde87468..f2a05d0eb10 100644
--- a/htdocs/contact/perso.php
+++ b/htdocs/contact/perso.php
@@ -50,7 +50,7 @@ $errors = array();
* Action
*/
-if ($action == 'update' && !GETPOST("cancel") && $user->rights->societe->contact->creer) {
+if ($action == 'update' && !GETPOST("cancel") && $user->hasRight('societe', 'contact', 'creer')) {
$ret = $object->fetch($id);
// Note: Correct date should be completed with location to have exact GM time of birth.
diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php
index d5d0858ab38..46b475fd5e8 100644
--- a/htdocs/contrat/card.php
+++ b/htdocs/contrat/card.php
@@ -2150,7 +2150,7 @@ if ($action == 'create') {
if (isModEnabled('facture') && $object->statut > 0) {
$langs->load("bills");
- if ($user->rights->facture->creer) {
+ if ($user->hasRight('facture', 'creer')) {
print dolGetButtonAction($langs->trans('CreateBill'), '', 'default', DOL_URL_ROOT.'/compta/facture/card.php?action=create&origin='.$object->element.'&originid='.$object->id.'&socid='.$object->thirdparty->id, '', true, $params);
} else {
$params['attr']['title'] = $langs->trans("NotEnoughPermissions");
diff --git a/htdocs/core/boxes/box_contacts.php b/htdocs/core/boxes/box_contacts.php
index f051fe5ade3..47ad55399ad 100644
--- a/htdocs/core/boxes/box_contacts.php
+++ b/htdocs/core/boxes/box_contacts.php
@@ -85,7 +85,7 @@ class box_contacts extends ModeleBoxes
$this->info_box_head = array('text' => $langs->trans("BoxTitleLastModifiedContacts", $max));
- if ($user->hasRight('societe', 'lire') && $user->rights->societe->contact->lire) {
+ if ($user->hasRight('societe', 'lire') && $user->hasRight('societe', 'contact', 'lire')) {
$sql = "SELECT sp.rowid as id, sp.lastname, sp.firstname, sp.civility as civility_id, sp.datec, sp.tms, sp.fk_soc, sp.statut as status";
$sql .= ", sp.address, sp.zip, sp.town, sp.phone, sp.phone_perso, sp.phone_mobile, sp.email as spemail";
diff --git a/htdocs/core/boxes/box_factures.php b/htdocs/core/boxes/box_factures.php
index 6a59c6f0d56..a724f26c0c3 100644
--- a/htdocs/core/boxes/box_factures.php
+++ b/htdocs/core/boxes/box_factures.php
@@ -87,7 +87,7 @@ class box_factures extends ModeleBoxes
'limit'=> dol_strlen($text)
);
- if ($user->rights->facture->lire) {
+ if ($user->hasRight('facture', 'lire')) {
$sql = "SELECT f.rowid as facid";
$sql .= ", f.ref, f.type, f.total_ht";
$sql .= ", f.total_tva";
diff --git a/htdocs/core/boxes/box_factures_fourn.php b/htdocs/core/boxes/box_factures_fourn.php
index 06124d4ab35..ac05d51e607 100644
--- a/htdocs/core/boxes/box_factures_fourn.php
+++ b/htdocs/core/boxes/box_factures_fourn.php
@@ -84,7 +84,7 @@ class box_factures_fourn extends ModeleBoxes
'text' => $langs->trans("BoxTitleLast".(!empty($conf->global->MAIN_LASTBOX_ON_OBJECT_DATE) ? "" : "Modified")."SupplierBills", $max)
);
- if ($user->rights->fournisseur->facture->lire) {
+ if ($user->hasRight('fournisseur', 'facture', 'lire')) {
$langs->load("bills");
$sql = "SELECT s.rowid as socid, s.nom as name, s.name_alias";
diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php
index 34dc015a1db..96b9fc63d84 100644
--- a/htdocs/core/boxes/box_graph_invoices_permonth.php
+++ b/htdocs/core/boxes/box_graph_invoices_permonth.php
@@ -103,7 +103,7 @@ class box_graph_invoices_permonth extends ModeleBoxes
$prefix .= 'private-'.$user->id.'-'; // If user has no permission to see all, output dir is specific to user
}
- if ($user->rights->facture->lire) {
+ if ($user->hasRight('facture', 'lire')) {
$mesg = '';
$param_year = 'DOLUSERCOOKIE_box_'.$this->boxcode.'_year';
diff --git a/htdocs/core/boxes/box_graph_invoices_peryear.php b/htdocs/core/boxes/box_graph_invoices_peryear.php
index 0f2c7bdb92f..915fb0336fe 100644
--- a/htdocs/core/boxes/box_graph_invoices_peryear.php
+++ b/htdocs/core/boxes/box_graph_invoices_peryear.php
@@ -95,7 +95,7 @@ class box_graph_invoices_peryear extends ModeleBoxes
if ($user->socid) $socid = $user->socid;
if (empty($user->rights->societe->client->voir) || $socid) $prefix .= 'private-'.$user->id.'-'; // If user has no permission to see all, output dir is specific to user
- if ($user->rights->facture->lire) {
+ if ($user->hasRight('facture', 'lire')) {
$mesg = '';
$param_year = 'DOLUSERCOOKIE_box_'.$this->boxcode.'_year';
diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php
index 87952f008c8..b92862d5089 100644
--- a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php
+++ b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php
@@ -102,7 +102,7 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes
$prefix .= 'private-'.$user->id.'-'; // If user has no permission to see all, output dir is specific to user
}
- if ($user->rights->fournisseur->facture->lire) {
+ if ($user->hasRight('fournisseur', 'facture', 'lire')) {
$param_year = 'DOLUSERCOOKIE_box_'.$this->boxcode.'_year';
$param_shownb = 'DOLUSERCOOKIE_box_'.$this->boxcode.'_shownb';
$param_showtot = 'DOLUSERCOOKIE_box_'.$this->boxcode.'_showtot';
diff --git a/htdocs/core/boxes/box_members_by_tags.php b/htdocs/core/boxes/box_members_by_tags.php
index e9404254b0a..efee61607ba 100644
--- a/htdocs/core/boxes/box_members_by_tags.php
+++ b/htdocs/core/boxes/box_members_by_tags.php
@@ -93,7 +93,7 @@ class box_members_by_tags extends ModeleBoxes
$this->info_box_head = array('text' => $langs->trans("BoxTitleMembersByTags").($numberyears ? ' ('.($year - $numberyears).' - '.$year.')' : ''));
- if ($user->rights->adherent->lire) {
+ if ($user->hasRight('adherent', 'lire')) {
require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherentstats.class.php';
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$stats = new AdherentStats($this->db, $user->socid, $user->id);
diff --git a/htdocs/core/boxes/box_members_by_type.php b/htdocs/core/boxes/box_members_by_type.php
index 046c7031ece..72db5ec4f92 100644
--- a/htdocs/core/boxes/box_members_by_type.php
+++ b/htdocs/core/boxes/box_members_by_type.php
@@ -94,7 +94,7 @@ class box_members_by_type extends ModeleBoxes
$this->info_box_head = array('text' => $langs->trans("BoxTitleMembersByType").($numberyears ? ' ('.($year-$numberyears).' - '.$year.')' : ''));
- if ($user->rights->adherent->lire) {
+ if ($user->hasRight('adherent', 'lire')) {
require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherentstats.class.php';
$stats = new AdherentStats($this->db, $user->socid, $user->id);
// Show array
diff --git a/htdocs/core/boxes/box_members_last_modified.php b/htdocs/core/boxes/box_members_last_modified.php
index 5c6082f1032..788695a1d36 100644
--- a/htdocs/core/boxes/box_members_last_modified.php
+++ b/htdocs/core/boxes/box_members_last_modified.php
@@ -90,7 +90,7 @@ class box_members_last_modified extends ModeleBoxes
$this->info_box_head = array('text' => $langs->trans("BoxTitleLastModifiedMembers", $max));
- if ($user->rights->adherent->lire) {
+ if ($user->hasRight('adherent', 'lire')) {
$sql = "SELECT a.rowid, a.ref, a.lastname, a.firstname, a.societe as company, a.fk_soc,";
$sql .= " a.datec, a.tms as datem, a.statut as status, a.datefin as date_end_subscription,";
$sql .= ' a.photo, a.email, a.gender, a.morphy,';
diff --git a/htdocs/core/boxes/box_members_last_subscriptions.php b/htdocs/core/boxes/box_members_last_subscriptions.php
index e7f1d99137d..324d0df218d 100644
--- a/htdocs/core/boxes/box_members_last_subscriptions.php
+++ b/htdocs/core/boxes/box_members_last_subscriptions.php
@@ -92,7 +92,7 @@ class box_members_last_subscriptions extends ModeleBoxes
$this->info_box_head = array('text' => $langs->trans("LastSubscriptionsModified", $max));
- if ($user->rights->adherent->lire) {
+ if ($user->hasRight('adherent', 'lire')) {
$sql = "SELECT a.rowid, a.statut as status, a.lastname, a.firstname, a.societe as company, a.fk_soc,";
$sql .= " a.gender, a.email, a.photo, a.morphy,";
$sql .= " a.datefin as date_end_subscription,";
diff --git a/htdocs/core/boxes/box_members_subscriptions_by_year.php b/htdocs/core/boxes/box_members_subscriptions_by_year.php
index fe406ad29a3..f42ba94e688 100644
--- a/htdocs/core/boxes/box_members_subscriptions_by_year.php
+++ b/htdocs/core/boxes/box_members_subscriptions_by_year.php
@@ -90,7 +90,7 @@ class box_members_subscriptions_by_year extends ModeleBoxes
$this->info_box_head = array('text' => $langs->trans("BoxTitleMembersSubscriptionsByYear", $max));
- if ($user->rights->adherent->lire) {
+ if ($user->hasRight('adherent', 'lire')) {
$num = 0;
$line = 0;
// List of subscription by year
diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php
index 5d34d5c243d..2f1082c7ca9 100644
--- a/htdocs/core/lib/functions.lib.php
+++ b/htdocs/core/lib/functions.lib.php
@@ -3298,7 +3298,7 @@ function dol_print_socialnetworks($value, $cid, $socid, $type, $dictsocialnetwor
$htmllink .= '?chat" alt="'.$langs->trans("Chat").' '.$value.'" title="'.dol_escape_htmltag($langs->trans("Chat").' '.$value).'">';
$htmllink .= '
';
$htmllink .= '';
- if (($cid || $socid) && isModEnabled('agenda') && $user->rights->agenda->myactions->create) {
+ if (($cid || $socid) && isModEnabled('agenda') && $user->hasRight('agenda', 'myactions', 'create')) {
$addlink = 'AC_SKYPE';
$link = '';
if (!empty($conf->global->AGENDA_ADDACTIONFORSKYPE)) {
@@ -3634,7 +3634,7 @@ function dol_print_phone($phone, $countrycode = '', $cid = 0, $socid = 0, $addli
}
}
- //if (($cid || $socid) && isModEnabled('agenda') && $user->rights->agenda->myactions->create)
+ //if (($cid || $socid) && isModEnabled('agenda') && $user->hasRight('agenda', 'myactions', 'create'))
if (isModEnabled('agenda') && $user->hasRight("agenda", "myactions", "create")) {
$type = 'AC_TEL';
$link = '';
diff --git a/htdocs/core/lib/security.lib.php b/htdocs/core/lib/security.lib.php
index a2c45f725c3..17b6d17114a 100644
--- a/htdocs/core/lib/security.lib.php
+++ b/htdocs/core/lib/security.lib.php
@@ -608,13 +608,13 @@ function restrictedArea(User $user, $features, $object = 0, $tableandshare = '',
}
} elseif (!empty($feature2)) { // This is for permissions on 2 levels (module->object->write)
foreach ($feature2 as $subfeature) {
- if ($subfeature == 'user' && $user->id == $objectid && $user->rights->user->self->creer) {
+ if ($subfeature == 'user' && $user->id == $objectid && $user->hasRight('user', 'self', 'creer')) {
continue; // User can edit its own card
}
- if ($subfeature == 'user' && $user->id == $objectid && $user->rights->user->self->password) {
+ if ($subfeature == 'user' && $user->id == $objectid && $user->hasRight('user', 'self', 'password')) {
continue; // User can edit its own password
}
- if ($subfeature == 'user' && $user->id != $objectid && $user->rights->user->user->password) {
+ if ($subfeature == 'user' && $user->id != $objectid && $user->hasRight('user', 'user', 'password')) {
continue; // User can edit another user's password
}
diff --git a/htdocs/core/lib/usergroups.lib.php b/htdocs/core/lib/usergroups.lib.php
index 8058deb387b..552881fd6cc 100644
--- a/htdocs/core/lib/usergroups.lib.php
+++ b/htdocs/core/lib/usergroups.lib.php
@@ -40,7 +40,7 @@ function user_prepare_head(User $object)
$canreadperms = true;
if (!empty($conf->global->MAIN_USE_ADVANCED_PERMS)) {
- $canreadperms = ($user->admin || ($user->id != $object->id && $user->rights->user->user_advance->readperms) || ($user->id == $object->id && $user->rights->user->self_advance->readperms));
+ $canreadperms = ($user->admin || ($user->id != $object->id && $user->hasRight('user', 'user_advance', 'readperms')) || ($user->id == $object->id && $user->hasRight('user', 'self_advance', 'readperms')));
}
$h = 0;
diff --git a/htdocs/core/tpl/contacts.tpl.php b/htdocs/core/tpl/contacts.tpl.php
index 25e0f914807..e4258d45aba 100644
--- a/htdocs/core/tpl/contacts.tpl.php
+++ b/htdocs/core/tpl/contacts.tpl.php
@@ -151,7 +151,7 @@ if ($permission) {
$nbofcontacts = $form->num;
$newcardbutton = '';
- if (!empty($object->socid) && $object->socid > 1 && $user->rights->societe->creer) {
+ if (!empty($object->socid) && $object->socid > 1 && $user->hasRight('societe', 'creer')) {
$newcardbutton .= '
id).'" title="'.$langs->trans('NewContact').'"> ';
}
print $newcardbutton;
diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php
index 90a04aedf58..2073d0bfd40 100644
--- a/htdocs/expedition/card.php
+++ b/htdocs/expedition/card.php
@@ -2593,7 +2593,7 @@ if ($action == 'create') {
// Create bill
if (isModEnabled('facture') && ($object->statut == Expedition::STATUS_VALIDATED || $object->statut == Expedition::STATUS_CLOSED)) {
- if ($user->rights->facture->creer) {
+ if ($user->hasRight('facture', 'creer')) {
// TODO show button only if (!empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))
// If we do that, we must also make this option official.
print dolGetButtonAction('', $langs->trans('CreateBill'), 'default', DOL_URL_ROOT.'/compta/facture/card.php?action=create&origin='.$object->element.'&originid='.$object->id.'&socid='.$object->socid, '');
diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php
index 1108bd7446b..ba1f1d05046 100644
--- a/htdocs/fichinter/card.php
+++ b/htdocs/fichinter/card.php
@@ -1660,7 +1660,7 @@ if ($action == 'create') {
if (isModEnabled('facture') && $object->statut > Fichinter::STATUS_DRAFT) {
$langs->load("bills");
if ($object->statut < Fichinter::STATUS_BILLED) {
- if ($user->rights->facture->creer) {
+ if ($user->hasRight('facture', 'creer')) {
print '
';
} else {
print '
';
diff --git a/htdocs/fourn/card.php b/htdocs/fourn/card.php
index 4a88ee02fca..62de4dc4eca 100644
--- a/htdocs/fourn/card.php
+++ b/htdocs/fourn/card.php
@@ -807,7 +807,7 @@ if ($object->id > 0) {
$langs->load('bills');
$facturestatic = new FactureFournisseur($db);
- if ($user->rights->fournisseur->facture->lire) {
+ if ($user->hasRight('fournisseur', 'facture', 'lire')) {
// TODO move to DAO class
$sql = 'SELECT f.rowid, f.libelle as label, f.ref, f.ref_supplier, f.fk_statut, f.datef as df, f.total_ht, f.total_tva, f.total_ttc, f.paye,';
$sql .= ' SUM(pf.amount) as am';
diff --git a/htdocs/fourn/commande/card.php b/htdocs/fourn/commande/card.php
index 731480db581..194a5db4f5d 100644
--- a/htdocs/fourn/commande/card.php
+++ b/htdocs/fourn/commande/card.php
@@ -2600,7 +2600,7 @@ if ($action == 'create') {
//if (isModEnabled('facture'))
//{
if (isModEnabled("supplier_invoice") && ($object->statut >= 2 && $object->statut != 7 && $object->billed != 1)) { // statut 2 means approved, 7 means canceled
- if ($user->rights->fournisseur->facture->creer || $user->rights->supplier_invoice->creer) {
+ if ($user->hasRight('fournisseur', 'facture', 'creer') || $user->rights->supplier_invoice->creer) {
print '
'.$langs->trans("CreateBill").' ';
}
}
@@ -2612,7 +2612,7 @@ if ($action == 'create') {
print '
id.'&action=classifybilled&token='.newToken().'">'.$langs->trans("ClassifyBilled").' ';
} else {
if (!empty($object->linkedObjectsIds['invoice_supplier'])) {
- if ($user->rights->fournisseur->facture->creer || $user->rights->supplier_invoice->creer) {
+ if ($user->hasRight('fournisseur', 'facture', 'creer') || $user->rights->supplier_invoice->creer) {
print '
id.'&action=classifybilled&token='.newToken().'">'.$langs->trans("ClassifyBilled").' ';
}
} else {
diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php
index 776c1e62fe2..6d667f76b8d 100644
--- a/htdocs/fourn/commande/list.php
+++ b/htdocs/fourn/commande/list.php
@@ -1184,7 +1184,7 @@ if ($resql) {
}
}
- if ($user->rights->fournisseur->facture->creer || $user->rights->supplier_invoice->creer) {
+ if ($user->hasRight('fournisseur', 'facture', 'creer') || $user->rights->supplier_invoice->creer) {
$arrayofmassactions['createbills'] = img_picto('', 'bill', 'class="pictofixedwidth"').$langs->trans("CreateInvoiceForThisSupplier");
}
if ($permissiontodelete) {
diff --git a/htdocs/fourn/facture/list-rec.php b/htdocs/fourn/facture/list-rec.php
index b957726f69e..684c7d01b11 100644
--- a/htdocs/fourn/facture/list-rec.php
+++ b/htdocs/fourn/facture/list-rec.php
@@ -873,7 +873,7 @@ if ($resql) {
}
// Action column
print '
';
- if ($user->rights->facture->creer && empty($supplierinvoicerectmp->suspended)) {
+ if ($user->hasRight('facture', 'creer') && empty($supplierinvoicerectmp->suspended)) {
if ($supplierinvoicerectmp->isMaxNbGenReached()) {
print $langs->trans("MaxNumberOfGenerationReached");
} elseif (empty($objp->frequency) || $db->jdate($objp->date_when) <= $today) {
diff --git a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php b/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php
index e9ec8accf30..86ba45c5f48 100644
--- a/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php
+++ b/htdocs/fourn/facture/tpl/linkedobjectblock.tpl.php
@@ -51,7 +51,7 @@ foreach ($linkedObjectBlock as $key => $objectlink) {
ref_supplier; ?>
date, 'day'); ?>
rights->fournisseur->facture->lire) {
+ if ($user->hasRight('fournisseur', 'facture', 'lire')) {
$sign = 1;
if ($object->type == FactureFournisseur::TYPE_CREDIT_NOTE) {
$sign = -1;
diff --git a/htdocs/fourn/paiement/card.php b/htdocs/fourn/paiement/card.php
index b1118374237..cafff521df7 100644
--- a/htdocs/fourn/paiement/card.php
+++ b/htdocs/fourn/paiement/card.php
@@ -373,7 +373,7 @@ if ($result > 0) {
// Delete payment
if ($user->socid == 0 && $action == '') {
- if ($user->rights->fournisseur->facture->supprimer) {
+ if ($user->hasRight('fournisseur', 'facture', 'supprimer')) {
if ($allow_delete) {
print dolGetButtonAction($langs->trans("Delete"), '', 'delete', $_SERVER["PHP_SELF"].'?id='.$object->id.'&action=delete&token='.newToken(), 'delete', 1);
} else {
diff --git a/htdocs/fourn/product/list.php b/htdocs/fourn/product/list.php
index 029f1bd2308..b369a363625 100644
--- a/htdocs/fourn/product/list.php
+++ b/htdocs/fourn/product/list.php
@@ -141,7 +141,7 @@ $arrayofmassactions = array(
'builddoc'=>img_picto('', 'pdf', 'class="pictofixedwidth"').$langs->trans("PDFMerge"),
'presend'=>img_picto('', 'email', 'class="pictofixedwidth"').$langs->trans("SendByMail"),
);
-if ($user->rights->mymodule->supprimer) {
+if ($user->hasRight('mymodule', 'supprimer')) {
$arrayofmassactions['predelete'] = img_picto('', 'delete', 'class="pictofixedwidth"').$langs->trans("Delete");
}
if (in_array($massaction, array('presend', 'predelete'))) {
diff --git a/htdocs/modulebuilder/template/class/actions_mymodule.class.php b/htdocs/modulebuilder/template/class/actions_mymodule.class.php
index 2b79d0dfcea..9a09b4d70b7 100644
--- a/htdocs/modulebuilder/template/class/actions_mymodule.class.php
+++ b/htdocs/modulebuilder/template/class/actions_mymodule.class.php
@@ -296,7 +296,7 @@ class ActionsMyModule
global $user;
if ($parameters['features'] == 'myobject') {
- if ($user->rights->mymodule->myobject->read) {
+ if ($user->hasRight('mymodule', 'myobject', 'read')) {
$this->results['result'] = 1;
return 1;
} else {
diff --git a/htdocs/modulebuilder/template/core/modules/modMyModule.class.php b/htdocs/modulebuilder/template/core/modules/modMyModule.class.php
index bcf72d401ae..9eeb0559364 100644
--- a/htdocs/modulebuilder/template/core/modules/modMyModule.class.php
+++ b/htdocs/modulebuilder/template/core/modules/modMyModule.class.php
@@ -271,17 +271,17 @@ class modMyModule extends DolibarrModules
$this->rights[$r][0] = $this->numero . sprintf("%02d", $r + 1); // Permission id (must not be already used)
$this->rights[$r][1] = 'Read objects of MyModule'; // Permission label
$this->rights[$r][4] = 'myobject';
- $this->rights[$r][5] = 'read'; // In php code, permission will be checked by test if ($user->rights->mymodule->myobject->read)
+ $this->rights[$r][5] = 'read'; // In php code, permission will be checked by test if ($user->hasRight('mymodule', 'myobject', 'read'))
$r++;
$this->rights[$r][0] = $this->numero . sprintf("%02d", $r + 1); // Permission id (must not be already used)
$this->rights[$r][1] = 'Create/Update objects of MyModule'; // Permission label
$this->rights[$r][4] = 'myobject';
- $this->rights[$r][5] = 'write'; // In php code, permission will be checked by test if ($user->rights->mymodule->myobject->write)
+ $this->rights[$r][5] = 'write'; // In php code, permission will be checked by test if ($user->hasRight('mymodule', 'myobject', 'write'))
$r++;
$this->rights[$r][0] = $this->numero . sprintf("%02d", $r + 1); // Permission id (must not be already used)
$this->rights[$r][1] = 'Delete objects of MyModule'; // Permission label
$this->rights[$r][4] = 'myobject';
- $this->rights[$r][5] = 'delete'; // In php code, permission will be checked by test if ($user->rights->mymodule->myobject->delete)
+ $this->rights[$r][5] = 'delete'; // In php code, permission will be checked by test if ($user->hasRight('mymodule', 'myobject', 'delete'))
$r++;
/* END MODULEBUILDER PERMISSIONS */
diff --git a/htdocs/partnership/class/partnership_type.class.php b/htdocs/partnership/class/partnership_type.class.php
index ba0f2c2a1ab..58e2fac591d 100644
--- a/htdocs/partnership/class/partnership_type.class.php
+++ b/htdocs/partnership/class/partnership_type.class.php
@@ -95,7 +95,7 @@ class PartnershipType extends CommonObject
}
// Example to show how to set values of fields definition dynamically
- /*if ($user->rights->mymodule->myobject->read) {
+ /*if ($user->hasRight('mymodule', 'myobject', 'read')) {
$this->fields['myfield']['visible'] = 1;
$this->fields['myfield']['noteditable'] = 0;
}*/
diff --git a/htdocs/product/card.php b/htdocs/product/card.php
index 672d7575e3f..0b57af620e3 100644
--- a/htdocs/product/card.php
+++ b/htdocs/product/card.php
@@ -242,7 +242,7 @@ if (empty($reshook)) {
$action = '';
}
// merge products
- if ($action == 'confirm_merge' && $confirm == 'yes' && $user->rights->societe->creer) {
+ if ($action == 'confirm_merge' && $confirm == 'yes' && $user->hasRight('societe', 'creer')) {
$error = 0;
$productOriginId = GETPOST('product_origin', 'int');
$productOrigin = new Product($db);
diff --git a/htdocs/product/stats/facture_fournisseur.php b/htdocs/product/stats/facture_fournisseur.php
index 349b41584d4..ab95a3c6e48 100644
--- a/htdocs/product/stats/facture_fournisseur.php
+++ b/htdocs/product/stats/facture_fournisseur.php
@@ -137,7 +137,7 @@ if ($id > 0 || !empty($ref)) {
print dol_get_fiche_end();
- if ($user->rights->fournisseur->facture->lire) {
+ if ($user->hasRight('fournisseur', 'facture', 'lire')) {
$sql = "SELECT DISTINCT s.nom as name, s.rowid as socid, s.code_client, d.rowid, d.total_ht as line_total_ht,";
$sql .= " f.rowid as facid, f.ref, f.ref_supplier, f.datef, f.libelle as label, f.total_ht, f.total_ttc, f.total_tva, f.paye, f.fk_statut as statut, d.qty";
if (empty($user->rights->societe->client->voir) && !$socid) {
diff --git a/htdocs/product/stats/facturerec.php b/htdocs/product/stats/facturerec.php
index 149a6aacf41..74cca76c6c2 100644
--- a/htdocs/product/stats/facturerec.php
+++ b/htdocs/product/stats/facturerec.php
@@ -154,7 +154,7 @@ if ($id > 0 || !empty($ref)) {
if ($showmessage && $nboflines > 1) {
print ''.$langs->trans("ClinkOnALinkOfColumn", $langs->transnoentitiesnoconv("Referers")).' ';
- } elseif ($user->rights->facture->lire) {
+ } elseif ($user->hasRight('facture', 'lire')) {
$sql = "SELECT DISTINCT s.nom as name, s.rowid as socid, s.code_client,";
$sql .= "f.titre, f.datec, f.rowid as facid, f.suspended as suspended,";
$sql .= " d.rowid, d.total_ht as total_ht, d.qty"; // We must keep the d.rowid here to not loose record because of the distinct used to ignore duplicate line when link on societe_commerciaux is used
diff --git a/htdocs/projet/element.php b/htdocs/projet/element.php
index 9dc6090c3d7..ceb3fb11c5f 100644
--- a/htdocs/projet/element.php
+++ b/htdocs/projet/element.php
@@ -630,7 +630,7 @@ $listofreferent = array(
'lang'=>'agenda',
'buttonnew'=>'AddEvent',
'testnew'=>$user->rights->agenda->myactions->create,
- 'test'=> isModEnabled('agenda') && $user->rights->agenda->myactions->read),
+ 'test'=> isModEnabled('agenda') && $user->hasRight('agenda', 'myactions', 'read')),
*/
);
diff --git a/htdocs/reception/list.php b/htdocs/reception/list.php
index 7b28d571bc5..d532d7cd117 100644
--- a/htdocs/reception/list.php
+++ b/htdocs/reception/list.php
@@ -860,7 +860,7 @@ $arrayofmassactions = array(
// 'presend'=>img_picto('', 'email', 'class="pictofixedwidth"').$langs->trans("SendByMail"),
);
-if ($user->rights->fournisseur->facture->creer || $user->rights->supplier_invoice->creer) {
+if ($user->hasRight('fournisseur', 'facture', 'creer') || $user->rights->supplier_invoice->creer) {
$arrayofmassactions['createbills'] = $langs->trans("CreateInvoiceForThisReceptions");
}
if ($massaction == 'createbills') {
diff --git a/htdocs/recruitment/recruitmentcandidature_card.php b/htdocs/recruitment/recruitmentcandidature_card.php
index 80558b67e49..af6983e26c6 100644
--- a/htdocs/recruitment/recruitmentcandidature_card.php
+++ b/htdocs/recruitment/recruitmentcandidature_card.php
@@ -201,7 +201,7 @@ if (empty($reshook)) {
}
// Create user from a member
- if ($action == 'confirm_create_user' && $confirm == 'yes' && $user->rights->user->user->creer) {
+ if ($action == 'confirm_create_user' && $confirm == 'yes' && $user->hasRight('user', 'user', 'creer')) {
$jobposition = new RecruitmentJobPosition($db);
$jobposition->fetch($object->fk_recruitmentjobposition);
diff --git a/htdocs/societe/card.php b/htdocs/societe/card.php
index 75e53fc72c2..db9201852d5 100644
--- a/htdocs/societe/card.php
+++ b/htdocs/societe/card.php
@@ -188,7 +188,7 @@ if (empty($reshook)) {
$action = '';
}
- if ($action == 'confirm_merge' && $confirm == 'yes' && $user->rights->societe->creer) {
+ if ($action == 'confirm_merge' && $confirm == 'yes' && $user->hasRight('societe', 'creer')) {
$error = 0;
$soc_origin_id = GETPOST('soc_origin', 'int');
$soc_origin = new Societe($db);
@@ -413,7 +413,7 @@ if (empty($reshook)) {
// Add new or update third party
if ((!GETPOST('getcustomercode') && !GETPOST('getsuppliercode'))
- && ($action == 'add' || $action == 'update') && $user->rights->societe->creer) {
+ && ($action == 'add' || $action == 'update') && $user->hasRight('societe', 'creer')) {
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
if (!GETPOST('name')) {
@@ -933,31 +933,31 @@ if (empty($reshook)) {
}
// Set third-party type
- if ($action == 'set_thirdpartytype' && $user->rights->societe->creer) {
+ if ($action == 'set_thirdpartytype' && $user->hasRight('societe', 'creer')) {
$object->fetch($socid);
$result = $object->setThirdpartyType(GETPOST('typent_id', 'int'));
}
// Set incoterm
- if ($action == 'set_incoterms' && $user->rights->societe->creer && isModEnabled('incoterm')) {
+ if ($action == 'set_incoterms' && $user->hasRight('societe', 'creer') && isModEnabled('incoterm')) {
$object->fetch($socid);
$result = $object->setIncoterms(GETPOST('incoterm_id', 'int'), GETPOST('location_incoterms', 'alpha'));
}
// Set parent company
- if ($action == 'set_thirdparty' && $user->rights->societe->creer) {
+ if ($action == 'set_thirdparty' && $user->hasRight('societe', 'creer')) {
$object->fetch($socid);
$result = $object->setParent(GETPOST('parent_id', 'int'));
}
// Set sales representatives
- if ($action == 'set_salesrepresentatives' && $user->rights->societe->creer) {
+ if ($action == 'set_salesrepresentatives' && $user->hasRight('societe', 'creer')) {
$object->fetch($socid);
$result = $object->setSalesRep(GETPOST('commercial', 'array'));
}
// warehouse
- if ($action == 'setwarehouse' && $user->rights->societe->creer) {
+ if ($action == 'setwarehouse' && $user->hasRight('societe', 'creer')) {
$result = $object->setWarehouse(GETPOST('fk_warehouse', 'int'));
}
@@ -3192,7 +3192,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print $dolibarr_user->getLoginUrl(-1);
} else {
//print ''.$langs->trans("NoDolibarrAccess").' ';
- if (!$object->user_id && $user->rights->user->user->creer) {
+ if (!$object->user_id && $user->hasRight('user', 'user', 'creer')) {
print ''.img_picto($langs->trans("CreateDolibarrLogin"), 'add').' '.$langs->trans("CreateDolibarrLogin").' ';
}
}
diff --git a/htdocs/societe/consumption.php b/htdocs/societe/consumption.php
index c25713959d2..9a4b95afade 100644
--- a/htdocs/societe/consumption.php
+++ b/htdocs/societe/consumption.php
@@ -147,7 +147,7 @@ if (!empty($conf->global->SOCIETE_USEPREFIX)) { // Old not used prefix field
print ' '.$langs->trans('Prefix').' '.$object->prefix_comm.' ';
}
-//if (isModEnabled('agenda') && $user->rights->agenda->myactions->read) $elementTypeArray['action']=$langs->transnoentitiesnoconv('Events');
+//if (isModEnabled('agenda') && $user->hasRight('agenda', 'myactions', 'read')) $elementTypeArray['action']=$langs->transnoentitiesnoconv('Events');
$elementTypeArray = array();
if ($object->client) {
diff --git a/htdocs/societe/societecontact.php b/htdocs/societe/societecontact.php
index f626139abcb..03530c2449a 100644
--- a/htdocs/societe/societecontact.php
+++ b/htdocs/societe/societecontact.php
@@ -78,7 +78,7 @@ $hookmanager->initHooks(array('contactthirdparty', 'globalcard'));
* Actions
*/
-if ($action == 'addcontact' && $user->rights->societe->creer) {
+if ($action == 'addcontact' && $user->hasRight('societe', 'creer')) {
$result = $object->fetch($id);
if ($result > 0 && $id > 0) {
@@ -98,14 +98,14 @@ if ($action == 'addcontact' && $user->rights->societe->creer) {
$mesg = '
'.$object->error.'
';
}
}
-} elseif ($action == 'swapstatut' && $user->rights->societe->creer) {
+} elseif ($action == 'swapstatut' && $user->hasRight('societe', '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->societe->creer) {
+} elseif ($action == 'deletecontact' && $user->hasRight('societe', 'creer')) {
// Efface un contact
$object->fetch($id);
$result = $object->delete_contact(GETPOST("lineid", 'int'));
diff --git a/htdocs/societe/website.php b/htdocs/societe/website.php
index 8c467882a01..1a5a93bbabd 100644
--- a/htdocs/societe/website.php
+++ b/htdocs/societe/website.php
@@ -349,7 +349,7 @@ $arrayofmassactions = array(
//'presend'=>$langs->trans("SendByMail"),
//'builddoc'=>$langs->trans("PDFMerge"),
);
-if ($user->rights->mymodule->delete) {
+if ($user->hasRight('mymodule', 'delete')) {
$arrayofmassactions['predelete'] = '
'.$langs->trans("Delete");
}
if (in_array($massaction, array('presend', 'predelete'))) {
diff --git a/htdocs/ticket/class/cticketcategory.class.php b/htdocs/ticket/class/cticketcategory.class.php
index 334ea7cd1ab..f10309d08ca 100644
--- a/htdocs/ticket/class/cticketcategory.class.php
+++ b/htdocs/ticket/class/cticketcategory.class.php
@@ -194,7 +194,7 @@ class CTicketCategory extends CommonObject
}
// Example to show how to set values of fields definition dynamically
- /*if ($user->rights->mymodule->myobject->read) {
+ /*if ($user->hasRight('mymodule', 'myobject', 'read')) {
$this->fields['myfield']['visible'] = 1;
$this->fields['myfield']['noteditable'] = 0;
}*/
diff --git a/htdocs/user/agenda_extsites.php b/htdocs/user/agenda_extsites.php
index 7923a4127c4..f594dd02176 100644
--- a/htdocs/user/agenda_extsites.php
+++ b/htdocs/user/agenda_extsites.php
@@ -61,7 +61,7 @@ $socid = 0;
if ($user->socid > 0) {
$socid = $user->socid;
}
-$feature2 = (($socid && $user->rights->user->self->creer) ? '' : 'user');
+$feature2 = (($socid && $user->hasRight('user', 'self', 'creer')) ? '' : 'user');
$result = restrictedArea($user, 'user', $id, 'user&user', $feature2);
diff --git a/htdocs/user/bank.php b/htdocs/user/bank.php
index fc7efd23749..8038fab4ece 100644
--- a/htdocs/user/bank.php
+++ b/htdocs/user/bank.php
@@ -61,7 +61,7 @@ $socid = 0;
if ($user->socid > 0) {
$socid = $user->socid;
}
-$feature2 = (($socid && $user->rights->user->self->creer) ? '' : 'user');
+$feature2 = (($socid && $user->hasRight('user', 'self', 'creer')) ? '' : 'user');
$object = new User($db);
if ($id > 0 || !empty($ref)) {
@@ -287,7 +287,7 @@ if ($id && $bankid && $action == 'edit' && ($user->rights->user->user->creer ||
print '
';
print '
';
}
-if ($id && $action == 'create' && $user->rights->user->user->creer) {
+if ($id && $action == 'create' && $user->hasRight('user', 'user', 'creer')) {
if ($conf->use_javascript_ajax) {
print "\n