Fix pb with permission

This commit is contained in:
Laurent Destailleur 2019-11-05 19:41:30 +01:00
parent 84a8d4e7cb
commit 94bd0f71d9
37 changed files with 52 additions and 56 deletions

View File

@ -818,7 +818,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->adherent->dir_output;
$permissioncreate=$user->rights->adherent->creer;
$permissiontoadd=$user->rights->adherent->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
// Actions to send emails

View File

@ -80,10 +80,9 @@ include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be inclu
//$isdraft = (($object->statut == MyObject::STATUS_DRAFT) ? 1 : 0);
//$result = restrictedArea($user, 'mymodule', $object->id, '', '', 'fk_soc', 'rowid', $isdraft);
$permissionnote=$user->rights->emailcollector->write; // Used by the include of actions_setnotes.inc.php
$permissionnote=$user->rights->emailcollector->write; // Used by the include of actions_setnotes.inc.php
$permissiondellink=$user->rights->emailcollector->write; // Used by the include of actions_dellink.inc.php
$permissionedit=$user->rights->emailcollector->write; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd=$user->rights->emailcollector->write; // Used by the include of actions_addupdatedelete.inc.php
$permissiontoadd=$user->rights->emailcollector->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$debuginfo='';

View File

@ -69,8 +69,7 @@ include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be inclu
$permissionnote=$user->rights->asset->write; // Used by the include of actions_setnotes.inc.php
$permissiondellink=$user->rights->asset->write; // Used by the include of actions_dellink.inc.php
$permissionedit=$user->rights->asset->write; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd=$user->rights->asset->write; // Used by the include of actions_addupdatedelete.inc.php
$permissiontoadd=$user->rights->asset->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
/*

View File

@ -77,8 +77,7 @@ include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be inclu
$permissionnote=$user->rights->bom->write; // Used by the include of actions_setnotes.inc.php
$permissiondellink=$user->rights->bom->write; // Used by the include of actions_dellink.inc.php
$permissionedit=$user->rights->bom->write; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd=$user->rights->bom->write; // Used by the include of actions_addupdatedelete.inc.php
$permissiontoadd=$user->rights->bom->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->bom->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);

View File

@ -756,7 +756,7 @@ if (empty($reshook) && GETPOST('actionmove', 'alpha') == 'mupdate')
// Actions to delete doc
$upload_dir = $conf->agenda->dir_output.'/'.dol_sanitizeFileName($object->ref);
$permissioncreate = ($user->rights->agenda->allactions->create || (($object->authorid == $user->id || $object->userownerid == $user->id) && $user->rights->agenda->myactions->read));
$permissiontoadd = ($user->rights->agenda->allactions->create || (($object->authorid == $user->id || $object->userownerid == $user->id) && $user->rights->agenda->myactions->read));
if (empty($reshook)) {
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -1438,7 +1438,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->propal->multidir_output[$object->entity];
$permissioncreate=$usercancreate;
$permissiontoadd=$usercancreate;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -110,7 +110,7 @@ $usercancreatepurchaseorder = $user->rights->fournisseur->commande->creer;
$permissionnote = $usercancreate; // Used by the include of actions_setnotes.inc.php
$permissiondellink = $usercancreate; // Used by the include of actions_dellink.inc.php
$permissionedit = $usercancreate; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd = $usercancreate; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
/*
@ -1411,7 +1411,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->commande->multidir_output[$object->entity];
$permissioncreate = $usercancreate;
$permissiontoadd = $usercancreate;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
// Actions to send emails

View File

@ -2489,7 +2489,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->facture->multidir_output[$object->entity];
$permissioncreate=$usercancreate;
$permissiontoadd=$usercancreate;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';

View File

@ -998,7 +998,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->contrat->dir_output;
$permissioncreate = $user->rights->contrat->creer;
$permissiontoadd = $user->rights->contrat->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
// Actions to send emails

View File

@ -30,6 +30,8 @@
// $backtopage may be defined
// $triggermodname may be defined
if (! empty($permissionedit) && empty($permissiontoadd)) $permissiontoadd = $permissionedit; // For backward compatibility
if ($cancel)
{
/*var_dump($cancel);
@ -234,7 +236,7 @@ if ($action == 'confirm_deleteline' && $confirm == 'yes' && ! empty($permissiont
}
// Action validate object
if ($action == 'confirm_validate' && $confirm == 'yes' && $permissionedit)
if ($action == 'confirm_validate' && $confirm == 'yes' && $permissiontoadd)
{
$result = $object->validate($user);
if ($result >= 0)
@ -263,7 +265,7 @@ if ($action == 'confirm_validate' && $confirm == 'yes' && $permissionedit)
}
// Action close object
if ($action == 'confirm_close' && $confirm == 'yes' && $permissionedit)
if ($action == 'confirm_close' && $confirm == 'yes' && $permissiontoadd)
{
$result = $object->cancel($user);
if ($result >= 0)
@ -292,7 +294,7 @@ if ($action == 'confirm_close' && $confirm == 'yes' && $permissionedit)
}
// Action setdraft object
if ($action == 'confirm_setdraft' && $confirm == 'yes' && $permissionedit)
if ($action == 'confirm_setdraft' && $confirm == 'yes' && $permissiontoadd)
{
$result = $object->setDraft($user);
if ($result >= 0)
@ -306,7 +308,7 @@ if ($action == 'confirm_setdraft' && $confirm == 'yes' && $permissionedit)
}
// Action reopen object
if ($action == 'confirm_reopen' && $confirm == 'yes' && $permissionedit)
if ($action == 'confirm_reopen' && $confirm == 'yes' && $permissiontoadd)
{
$result = $object->reopen($user);
if ($result >= 0)

View File

@ -25,13 +25,14 @@
// $action must be defined
// $id must be defined
// $object must be defined and must have a method generateDocument().
// $permissioncreate must be defined
// $permissiontoadd must be defined
// $upload_dir must be defined (example $conf->projet->dir_output . "/";)
// $hidedetails, $hidedesc, $hideref and $moreparams may have been set or not.
if (!empty($permissioncreate) && empty($permissiontoadd)) $permissiontoadd = $permissioncreate; // For backward compatibility
// Build doc
if ($action == 'builddoc' && $permissioncreate)
if ($action == 'builddoc' && $permissiontoadd)
{
if (is_numeric(GETPOST('model', 'alpha')))
{
@ -107,7 +108,7 @@ if ($action == 'builddoc' && $permissioncreate)
}
// Delete file in doc form
if ($action == 'remove_file' && $permissioncreate)
if ($action == 'remove_file' && $permissiontoadd)
{
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';

View File

@ -824,7 +824,7 @@ if ($massaction == 'confirm_createbills') // Create bills from orders
// Builddoc
$donotredirect = 1;
$upload_dir = $conf->facture->dir_output;
$permissioncreate=$user->rights->facture->creer;
$permissiontoadd=$user->rights->facture->creer;
// Call action to build doc
$savobject = $object;

View File

@ -248,7 +248,7 @@ elseif ($action == 'classin' && $user->rights->don->creer)
// Actions to build doc
$upload_dir = $conf->don->dir_output;
$permissioncreate = $user->rights->don->creer;
$permissiontoadd = $user->rights->don->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';

View File

@ -124,7 +124,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->expedition->dir_output.'/sending';
$permissioncreate = $user->rights->expedition->creer;
$permissiontoadd = $user->rights->expedition->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
// Reopen

View File

@ -107,7 +107,7 @@ $hookmanager->initHooks(array('expensereportcard','globalcard'));
$permissionnote = $user->rights->expensereport->creer; // Used by the include of actions_setnotes.inc.php
$permissiondellink = $user->rights->expensereport->creer; // Used by the include of actions_dellink.inc.php
$permissionedit = $user->rights->expensereport->creer; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd = $user->rights->expensereport->creer; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$upload_dir = $conf->expensereport->dir_output.'/'.dol_sanitizeFileName($object->ref);
@ -1418,7 +1418,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->expensereport->dir_output;
$permissioncreate = $user->rights->expensereport->creer;
$permissiontoadd = $user->rights->expensereport->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -728,7 +728,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->ficheinter->dir_output;
$permissioncreate = $user->rights->ficheinter->creer;
$permissiontoadd = $user->rights->ficheinter->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
if ($action == 'update_extras')

View File

@ -1035,7 +1035,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->fournisseur->commande->dir_output;
$permissioncreate = $user->rights->fournisseur->commande->creer;
$permissiontoadd = $user->rights->fournisseur->commande->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';

View File

@ -421,7 +421,7 @@ if (empty($reshook))
// Fac builddoc
$donotredirect = 1;
$upload_dir = $conf->facture->dir_output;
$permissioncreate=$user->rights->facture->creer;
$permissiontoadd=$user->rights->facture->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -101,8 +101,7 @@ $result = restrictedArea($user, 'fournisseur', $id, 'facture_fourn', 'facture',
$permissionnote=$user->rights->fournisseur->facture->creer; // Used by the include of actions_setnotes.inc.php
$permissiondellink=$user->rights->fournisseur->facture->creer; // Used by the include of actions_dellink.inc.php
$permissionedit=$user->rights->fournisseur->facture->creer; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd=$user->rights->fournisseur->facture->creer; // Used by the include of actions_addupdatedelete.inc.php
$permissiontoadd=$user->rights->fournisseur->facture->creer; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
/*
@ -1506,7 +1505,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->fournisseur->facture->dir_output;
$permissioncreate = $user->rights->fournisseur->facture->creer;
$permissiontoadd = $user->rights->fournisseur->facture->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
// Make calculation according to calculationrule

View File

@ -139,7 +139,7 @@ if ($action == 'setdatep' && ! empty($_POST['datepday']))
// Build document
$upload_dir = $conf->fournisseur->payment->dir_output;
// TODO: get the appropriate permisson
$permissioncreate = true;
$permissiontoadd = true;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';

View File

@ -879,7 +879,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->holiday->dir_output;
$permissioncreate = $user->rights->holiday->creer;
$permissiontoadd = $user->rights->holiday->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
*/
}

View File

@ -244,7 +244,7 @@ if ($action == 'update_extras_line')
// Actions to build doc
$upload_dir = $conf->expedition->dir_output.'/receipt';
$permissioncreate = $user->rights->expedition->creer;
$permissiontoadd = $user->rights->expedition->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';

View File

@ -105,11 +105,11 @@ include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be inclu
//$isdraft = (($object->statut == $object::STATUS_DRAFT) ? 1 : 0);
//$result = restrictedArea($user, 'mymodule', $object->id, '', '', 'fk_soc', 'rowid', $isdraft);
$permissiontoread = $user->rights->mymodule->myobject->read;
$permissiontoadd = $user->rights->mymodule->myobject->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->mymodule->myobject->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);
$permissionnote = $user->rights->mymodule->myobject->write; // Used by the include of actions_setnotes.inc.php
$permissiondellink = $user->rights->mymodule->myobject->write; // Used by the include of actions_dellink.inc.php
$permissionedit = $user->rights->mymodule->myobject->write; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd = $user->rights->mymodule->myobject->write; // Used by the include of actions_addupdatedelete.inc.php
$permissiontodelete = $user->rights->mymodule->myobject->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);

View File

@ -95,8 +95,7 @@ include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be inclu
$permissionnote=$user->rights->mrp->write; // Used by the include of actions_setnotes.inc.php
$permissiondellink=$user->rights->mrp->write; // Used by the include of actions_dellink.inc.php
$permissionedit=$user->rights->mrp->write; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd=$user->rights->mrp->write; // Used by the include of actions_addupdatedelete.inc.php
$permissiontoadd=$user->rights->mrp->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->mrp->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);

View File

@ -95,8 +95,7 @@ include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be inclu
$permissionnote=$user->rights->mrp->write; // Used by the include of actions_setnotes.inc.php
$permissiondellink=$user->rights->mrp->write; // Used by the include of actions_dellink.inc.php
$permissionedit=$user->rights->mrp->write; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd=$user->rights->mrp->write; // Used by the include of actions_addupdatedelete.inc.php
$permissiontoadd=$user->rights->mrp->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->mrp->delete || ($permissiontoadd && $object->status == 0);

View File

@ -151,7 +151,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->product->dir_output;
$permissioncreate = $usercancreate;
$permissiontoadd = $usercancreate;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
include DOL_DOCUMENT_ROOT.'/core/actions_printing.inc.php';

View File

@ -223,7 +223,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->stock->dir_output;
$permissioncreate = $user->rights->stock->creer;
$permissiontoadd = $user->rights->stock->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -413,7 +413,7 @@ if ($action == "transfert_stock" && ! $cancel)
// The builddoc action for object of a movement must be on the movement card
// Actions to build doc
$upload_dir = $conf->stock->dir_output . "movement/";
$permissioncreate = $user->rights->stock->creer;
$permissiontoadd = $user->rights->stock->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';

View File

@ -87,7 +87,7 @@ $hookmanager->initHooks(array('productlotcard','globalcard'));
$permissionnote = $user->rights->stock->creer; // Used by the include of actions_setnotes.inc.php
$permissiondellink = $user->rights->stock->creer; // Used by the include of actions_dellink.inc.php
$permissionedit = $user->rights->stock->creer; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd = $user->rights->stock->creer; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$usercanread = $user->rights->produit->lire;
$usercancreate = $user->rights->produit->creer;
@ -252,7 +252,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->productbatch->multidir_output[$conf->entity];
$permissioncreate = $usercancreate;
$permissiontoadd = $usercancreate;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -379,7 +379,7 @@ if (empty($reshook))
// Fac builddoc
$donotredirect = 1;
$upload_dir = $conf->fournisseur->facture->dir_output;
$permissioncreate=$user->rights->fournisseur->facture->creer;
$permissiontoadd=$user->rights->fournisseur->facture->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -871,7 +871,7 @@ if (empty($reshook))
// Actions to build doc
$id = $socid;
$upload_dir = $conf->societe->dir_output;
$permissioncreate=$user->rights->societe->creer;
$permissiontoadd=$user->rights->societe->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -489,7 +489,7 @@ if (empty($reshook))
$id = $socid;
$upload_dir = $conf->societe->multidir_output[$object->entity];
$permissioncreate=$user->rights->societe->creer;
$permissiontoadd=$user->rights->societe->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
$id = $savid;

View File

@ -498,7 +498,7 @@ if (empty($reshook))
// Actions to build doc
$upload_dir = $conf->supplier_proposal->dir_output;
$permissioncreate = $user->rights->supplier_proposal->creer;
$permissiontoadd = $user->rights->supplier_proposal->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';

View File

@ -588,7 +588,7 @@ include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; // Must be inc
// Actions to build doc
$upload_dir = $conf->ticket->dir_output;
$permissioncreate = $user->rights->ticket->write;
$permissiontoadd = $user->rights->ticket->write;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
// Actions to send emails

View File

@ -665,7 +665,7 @@ if (empty($reshook)) {
// Actions to build doc
$upload_dir = $conf->user->dir_output;
$permissioncreate=$user->rights->user->user->creer;
$permissiontoadd=$user->rights->user->user->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -248,7 +248,7 @@ if (empty($reshook)) {
// Actions to build doc
$upload_dir = $conf->usergroup->dir_output;
$permissioncreate=$user->rights->user->user->creer;
$permissiontoadd=$user->rights->user->user->creer;
include DOL_DOCUMENT_ROOT.'/core/actions_builddoc.inc.php';
}

View File

@ -67,8 +67,7 @@ if (empty($action) && empty($id) && empty($ref)) $action='view';
$permissionnote=$user->rights->websiteaccount->write; // Used by the include of actions_setnotes.inc.php
$permissiondellink=$user->rights->websiteaccount->write; // Used by the include of actions_dellink.inc.php
$permissionedit=$user->rights->websiteaccount->write; // Used by the include of actions_lineupdown.inc.php
$permissiontoadd=$user->rights->websiteaccount->write; // Used by the include of actions_addupdatedelete.inc.php
$permissiontoadd=$user->rights->websiteaccount->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
// Load object
include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once.