Merge branch '11.0' of git@github.com:Dolibarr/dolibarr.git into 12.0

Conflicts:
	htdocs/holiday/class/holiday.class.php
	htdocs/index.php
This commit is contained in:
Laurent Destailleur 2020-05-23 20:20:53 +02:00
commit 7bfbf3c88b
7 changed files with 44 additions and 13 deletions

View File

@ -179,7 +179,7 @@ $sqlrequestforbankline = $sql;
if ($action == 'confirm_editbankreceipt' && !empty($oldbankreceipt) && !empty($newbankreceipt))
{
// TODO Add a test to check newbankreceipt does not exists yet
$sqlupdate = 'UPDATE '.MAIN_DB_PREFIX.'bank SET num_releve = "'.$db->escape($newbankreceipt).'" WHERE num_releve = "'.$db->escape($oldbankreceipt).'"';
$sqlupdate = 'UPDATE '.MAIN_DB_PREFIX.'bank SET num_releve = "'.$db->escape($newbankreceipt).'" WHERE num_releve = "'.$db->escape($oldbankreceipt).'" AND fk_account = '.$id;
$result = $db->query($sqlupdate);
if ($result < 0) dol_print_error($db);

View File

@ -2318,7 +2318,7 @@ class ExpenseReport extends CommonObject
public function load_state_board()
{
// phpcs:enable
global $conf;
global $conf, $user;
$this->nb = array();
@ -2326,6 +2326,12 @@ class ExpenseReport extends CommonObject
$sql .= " FROM ".MAIN_DB_PREFIX."expensereport as ex";
$sql .= " WHERE ex.fk_statut > 0";
$sql .= " AND ex.entity IN (".getEntity('expensereport').")";
if (empty($user->rights->expensereport->readall))
{
$userchildids = $user->getAllChildIds(1);
$sql .= " AND (ex.fk_user_author IN (".join(',', $userchildids).")";
$sql .= " OR ex.fk_user_validator IN (".join(',', $userchildids)."))";
}
$resql = $this->db->query($sql);
if ($resql) {
@ -2360,15 +2366,17 @@ class ExpenseReport extends CommonObject
$now = dol_now();
$userchildids = $user->getAllChildIds(1);
$sql = "SELECT ex.rowid, ex.date_valid";
$sql .= " FROM ".MAIN_DB_PREFIX."expensereport as ex";
if ($option == 'toapprove') $sql .= " WHERE ex.fk_statut = 2";
else $sql .= " WHERE ex.fk_statut = 5";
$sql .= " AND ex.entity IN (".getEntity('expensereport').")";
$sql .= " AND (ex.fk_user_author IN (".join(',', $userchildids).")";
$sql .= " OR ex.fk_user_validator IN (".join(',', $userchildids)."))";
if (empty($user->rights->expensereport->readall))
{
$userchildids = $user->getAllChildIds(1);
$sql .= " AND (ex.fk_user_author IN (".join(',', $userchildids).")";
$sql .= " OR ex.fk_user_validator IN (".join(',', $userchildids)."))";
}
$resql = $this->db->query($sql);
if ($resql)

View File

@ -1922,7 +1922,6 @@ class CommandeFournisseur extends CommonOrder
if ($result < 0)
{
$error++;
return -1;
}
// End call triggers
}
@ -2030,6 +2029,7 @@ class CommandeFournisseur extends CommonOrder
{
$this->errors[] = 'ErrorWhenRunningTrigger';
dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR);
$this->db->rollback();
return -1;
}
// End call triggers

View File

@ -2173,12 +2173,20 @@ class Holiday extends CommonObject
public function load_state_board()
{
// phpcs:enable
global $user;
$this->nb = array();
$sql = "SELECT count(h.rowid) as nb";
$sql .= " FROM ".MAIN_DB_PREFIX."holiday as h";
$sql .= " WHERE h.statut > 1";
$sql .= " AND h.entity IN (".getEntity('holiday').")";
if (empty($user->rights->expensereport->read_all))
{
$userchildids = $user->getAllChildIds(1);
$sql.= " AND (h.fk_user IN (".join(',', $userchildids).")";
$sql.= " OR h.fk_validator IN (".join(',', $userchildids)."))";
}
$resql = $this->db->query($sql);
if ($resql) {
@ -2212,14 +2220,16 @@ class Holiday extends CommonObject
$now = dol_now();
$userchildids = $user->getAllChildIds(1);
$sql = "SELECT h.rowid, h.date_debut";
$sql .= " FROM ".MAIN_DB_PREFIX."holiday as h";
$sql .= " WHERE h.statut = 2";
$sql .= " AND h.entity IN (".getEntity('holiday').")";
$sql .= " AND (h.fk_user IN (".join(',', $userchildids).")";
$sql .= " OR h.fk_validator IN (".join(',', $userchildids)."))";
if (empty($user->rights->expensereport->read_all))
{
$userchildids = $user->getAllChildIds(1);
$sql.= " AND (h.fk_user IN (".join(',', $userchildids).")";
$sql.= " OR h.fk_validator IN (".join(',', $userchildids)."))";
}
$resql = $this->db->query($sql);
if ($resql)

View File

@ -299,7 +299,7 @@ if (empty($user->socid) && empty($conf->global->MAIN_DISABLE_GLOBAL_BOXSTATS))
include_once $includes[$val]; // Loading a class cost around 1Mb
$board = new $class($db);
$board->load_state_board($user);
$board->load_state_board();
$boardloaded[$class] = $board;
}
else

View File

@ -709,7 +709,7 @@ class Entrepot extends CommonObject
*/
public function getNomUrl($withpicto = 0, $option = '', $showfullpath = 0, $notooltip = 0)
{
global $conf, $langs;
global $conf, $langs, $hookmanager;
$langs->load("stocks");
if (!empty($conf->dol_no_mouse_hover)) $notooltip = 1; // Force disable tooltips
@ -748,6 +748,16 @@ class Entrepot extends CommonObject
if ($withpicto != 2) $result .= ($showfullpath ? $this->get_full_arbo() : (empty($this->label) ? $this->libelle : $this->label));
$result .= $linkend;
global $action;
$hookmanager->initHooks(array('warehousedao'));
$parameters = array('id'=>$this->id, 'getnomurl'=>$result, 'withpicto' => $withpicto, 'option' => $option, 'showfullpath' => $showfullpath, 'notooltip'=> $notooltip);
$reshook = $hookmanager->executeHooks('getNomUrl', $parameters, $this, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook > 0) {
$result = $hookmanager->resPrint;
} else {
$result .= $hookmanager->resPrint;
}
return $result;
}

View File

@ -34,6 +34,9 @@ require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php';
// Load translation files required by the page
$langs->loadLangs(array('products', 'stocks', 'orders', 'productbatch'));
//init Hook
$hookmanager->initHooks(array('massstockmove'));
// Security check
if ($user->socid) {
$socid = $user->socid;