FIX List of people able to validate an expense report was not complete.
This commit is contained in:
parent
69b5baebc5
commit
fe54673a87
@ -1117,11 +1117,15 @@ if ($action == 'create')
|
|||||||
print '<td>';
|
print '<td>';
|
||||||
$object = new ExpenseReport($db);
|
$object = new ExpenseReport($db);
|
||||||
$include_users = $object->fetch_users_approver_expensereport();
|
$include_users = $object->fetch_users_approver_expensereport();
|
||||||
$defaultselectuser=$user->fk_user; // Will work only if supervisor has permission to approve so is inside include_users
|
if (empty($include_users)) print img_warning().' '.$langs->trans("NobodyHasPermissionToValidateExpenseReport");
|
||||||
if (! empty($conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR)) $defaultselectuser=$conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR;
|
else
|
||||||
if (GETPOST('fk_user_validator') > 0) $defaultselectuser=GETPOST('fk_user_validator');
|
{
|
||||||
$s=$form->select_dolusers($defaultselectuser, "fk_user_validator", 1, "", 0, $include_users);
|
$defaultselectuser=$user->fk_user; // Will work only if supervisor has permission to approve so is inside include_users
|
||||||
print $form->textwithpicto($s, $langs->trans("AnyOtherInThisListCanValidate"));
|
if (! empty($conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR)) $defaultselectuser=$conf->global->EXPENSEREPORT_DEFAULT_VALIDATOR; // Can force default approver
|
||||||
|
if (GETPOST('fk_user_validator') > 0) $defaultselectuser=GETPOST('fk_user_validator');
|
||||||
|
$s=$form->select_dolusers($defaultselectuser, "fk_user_validator", 1, "", 0, $include_users);
|
||||||
|
print $form->textwithpicto($s, $langs->trans("AnyOtherInThisListCanValidate"));
|
||||||
|
}
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
if (! empty($conf->global->EXPENSEREPORT_ASK_PAYMENTMODE_ON_CREATION))
|
if (! empty($conf->global->EXPENSEREPORT_ASK_PAYMENTMODE_ON_CREATION))
|
||||||
|
|||||||
@ -1411,7 +1411,8 @@ class ExpenseReport extends CommonObject
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return list of people with permission to validate trips and expenses
|
* Return list of people with permission to validate expense reports.
|
||||||
|
* Search for permission "approve expense report"
|
||||||
*
|
*
|
||||||
* @return array Array of user ids
|
* @return array Array of user ids
|
||||||
*/
|
*/
|
||||||
@ -1419,10 +1420,15 @@ class ExpenseReport extends CommonObject
|
|||||||
{
|
{
|
||||||
$users_validator=array();
|
$users_validator=array();
|
||||||
|
|
||||||
$sql = "SELECT fk_user";
|
$sql = "SELECT DISTINCT ur.fk_user";
|
||||||
$sql.= " FROM ".MAIN_DB_PREFIX."user_rights as ur, ".MAIN_DB_PREFIX."rights_def as rd";
|
$sql.= " FROM ".MAIN_DB_PREFIX."user_rights as ur, ".MAIN_DB_PREFIX."rights_def as rd";
|
||||||
$sql.= " WHERE ur.fk_id = rd.id and module = 'expensereport' AND perms = 'approve'"; // Permission 'Approve';
|
$sql.= " WHERE ur.fk_id = rd.id and rd.module = 'expensereport' AND rd.perms = 'approve'"; // Permission 'Approve';
|
||||||
|
$sql.= "UNION";
|
||||||
|
$sql.= " SELECT DISTINCT ugu.fk_user";
|
||||||
|
$sql.= " FROM ".MAIN_DB_PREFIX."usergroup_user as ugu, ".MAIN_DB_PREFIX."usergroup_rights as ur, ".MAIN_DB_PREFIX."rights_def as rd";
|
||||||
|
$sql.= " WHERE ugu.fk_usergroup = ur.fk_usergroup AND ur.fk_id = rd.id and rd.module = 'expensereport' AND rd.perms = 'approve'"; // Permission 'Approve';
|
||||||
|
//print $sql;
|
||||||
|
|
||||||
dol_syslog(get_class($this)."::fetch_users_approver_expensereport sql=".$sql);
|
dol_syslog(get_class($this)."::fetch_users_approver_expensereport sql=".$sql);
|
||||||
$result = $this->db->query($sql);
|
$result = $this->db->query($sql);
|
||||||
if($result)
|
if($result)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user