NEW can edit and set sales representatives directly on thirdparty card

This commit is contained in:
lvessiller 2020-06-26 12:20:53 +02:00
parent e4922f38ab
commit ad36447295
3 changed files with 56 additions and 24 deletions

View File

@ -190,6 +190,13 @@ if (empty($reshook))
if ($result < 0) setEventMessages($object->error, $object->errors, 'errors');
}
// Set sales representatives
if ($action == 'set_salesrepresentatives' && $user->rights->societe->creer)
{
$object->fetch($id);
$result = $object->setSalesRep(GETPOST('commercial', 'array'));
}
if ($action == 'update_extras') {
$object->fetch($id);

View File

@ -839,6 +839,13 @@ if (empty($reshook))
$result = $object->setIncoterms(GETPOST('incoterm_id', 'int'), GETPOST('location_incoterms', 'alpha'));
}
// Set sales representatives
if ($action == 'set_salesrepresentatives' && $user->rights->societe->creer)
{
$object->fetch($socid);
$result = $object->setSalesRep(GETPOST('commercial', 'array'));
}
$id = $socid;
$object->fetch($socid);

View File

@ -23,30 +23,48 @@ if (empty($conf) || !is_object($conf))
}
// Sale representative
print '<tr><td class="titlefield">';
print '<tr><td>';
print '<table class="nobordernopadding" width="100%"><tr><td>';
print $langs->trans('SalesRepresentatives');
print '</td>';
print '<td>';
if ($action != 'editsalesrepresentatives' && $user->rights->societe->creer) {
print '<td class="right">';
print '<a href="' . $_SERVER["PHP_SELF"] . '?action=editsalesrepresentatives&amp;socid=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('Edit'), 1) . '</a>';
print '</td>';
}
print '</tr></table>';
print '</td><td colspan="3">';
$listsalesrepresentatives = $object->getSalesRepresentatives($user);
$nbofsalesrepresentative = count($listsalesrepresentatives);
if ($nbofsalesrepresentative > 0)
{
$userstatic = new User($db);
foreach ($listsalesrepresentatives as $val)
{
$userstatic->id = $val['id'];
$userstatic->login = $val['login'];
$userstatic->lastname = $val['lastname'];
$userstatic->firstname = $val['firstname'];
$userstatic->statut = $val['statut'];
$userstatic->photo = $val['photo'];
$userstatic->email = $val['email'];
$userstatic->phone = $val['phone'];
$userstatic->job = $val['job'];
$userstatic->entity = $val['entity'];
print $userstatic->getNomUrl(-1);
print ' ';
}
} else print '<span class="opacitymedium">'.$langs->trans("NoSalesRepresentativeAffected").'</span>';
print '</td></tr>';
if ($action == 'editsalesrepresentatives') {
print '<form method="post" action="' . $_SERVER['PHP_SELF'] . '">';
print '<input type="hidden" name="action" value="set_salesrepresentatives" />';
print '<input type="hidden" name="token" value="' . newToken() . '" />';
print '<input type="hidden" name="socid" value="' . $object->id . '" />';
$userlist = $form->select_dolusers('', '', 0, null, 0, '', '', 0, 0, 0, '', 0, '', '', 0, 1);
$arrayselected = GETPOST('commercial', 'array');
if (empty($arrayselected)) $arrayselected = $object->getSalesRepresentatives($user, 1);
print $form->multiselectarray('commercial', $userlist, $arrayselected, null, null, null, null, "90%");
print '<input type="submit" class="button valignmiddle" value="' . $langs->trans("Modify") . '" />';
print '</form>';
} else {
$listsalesrepresentatives = $object->getSalesRepresentatives($user);
$nbofsalesrepresentative = count($listsalesrepresentatives);
if ($nbofsalesrepresentative > 0) {
$userstatic = new User($db);
foreach ($listsalesrepresentatives as $val) {
$userstatic->id = $val['id'];
$userstatic->login = $val['login'];
$userstatic->lastname = $val['lastname'];
$userstatic->firstname = $val['firstname'];
$userstatic->statut = $val['statut'];
$userstatic->photo = $val['photo'];
$userstatic->email = $val['email'];
$userstatic->phone = $val['phone'];
$userstatic->job = $val['job'];
$userstatic->entity = $val['entity'];
print $userstatic->getNomUrl(-1);
print ' ';
}
} else print '<span class="opacitymedium">' . $langs->trans("NoSalesRepresentativeAffected") . '</span>';
print '</td></tr>';
}