Merge pull request #14559 from OPEN-DSI/v10-fix-societe-card-add-sales-representatives
FIX set sales representatives on create company card
This commit is contained in:
commit
593f3b81e5
@ -539,7 +539,7 @@ if (empty($reshook))
|
|||||||
|
|
||||||
// Links with users
|
// Links with users
|
||||||
$salesreps = GETPOST('commercial', 'array');
|
$salesreps = GETPOST('commercial', 'array');
|
||||||
$result = $object->setSalesRep($salesreps);
|
$result = $object->setSalesRep($salesreps, true);
|
||||||
if ($result < 0)
|
if ($result < 0)
|
||||||
{
|
{
|
||||||
$error++;
|
$error++;
|
||||||
|
|||||||
@ -4133,9 +4133,10 @@ class Societe extends CommonObject
|
|||||||
* Sets sales representatives of the thirdparty
|
* Sets sales representatives of the thirdparty
|
||||||
*
|
*
|
||||||
* @param int[]|int $salesrep User ID or array of user IDs
|
* @param int[]|int $salesrep User ID or array of user IDs
|
||||||
|
* @param bool $onlyAdd Only add (no delete before)
|
||||||
* @return int <0 if KO, >0 if OK
|
* @return int <0 if KO, >0 if OK
|
||||||
*/
|
*/
|
||||||
public function setSalesRep($salesrep)
|
public function setSalesRep($salesrep, $onlyAdd = false)
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
|
||||||
@ -4144,16 +4145,18 @@ class Societe extends CommonObject
|
|||||||
$salesrep = array($salesrep);
|
$salesrep = array($salesrep);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get current users
|
|
||||||
$existing = $this->getSalesRepresentatives($user, 1);
|
|
||||||
|
|
||||||
// Diff
|
$to_del = array(); // Nothing to delete
|
||||||
if (is_array($existing)) {
|
$to_add = $salesrep;
|
||||||
$to_del = array_diff($existing, $salesrep);
|
if ($onlyAdd === false) {
|
||||||
$to_add = array_diff($salesrep, $existing);
|
// Get current users
|
||||||
} else {
|
$existing = $this->getSalesRepresentatives($user, 1);
|
||||||
$to_del = array(); // Nothing to delete
|
|
||||||
$to_add = $salesrep;
|
// Diff
|
||||||
|
if (is_array($existing)) {
|
||||||
|
$to_del = array_diff($existing, $salesrep);
|
||||||
|
$to_add = array_diff($salesrep, $existing);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$error = 0;
|
$error = 0;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user