Merge pull request #10043 from OPEN-DSI/selectcontacts-afterselectoptions-hook
NEW Add afterSelectContactOptions hook
This commit is contained in:
commit
4dc32dafaa
@ -1392,6 +1392,8 @@ class Form
|
||||
* Return HTML code of the SELECT of list of all contacts (for a third party or all).
|
||||
* This also set the number of contacts found into $this->num
|
||||
*
|
||||
* @since 9.0 Add afterSelectContactOptions hook
|
||||
*
|
||||
* @param int $socid Id ot third party or 0 for all or -1 for empty list
|
||||
* @param array|int $selected Array of ID of pre-selected contact id
|
||||
* @param string $htmlname Name of HTML field ('none' for a not editable field)
|
||||
@ -1411,7 +1413,7 @@ class Form
|
||||
*/
|
||||
function selectcontacts($socid, $selected='', $htmlname='contactid', $showempty=0, $exclude='', $limitto='', $showfunction=0, $moreclass='', $options_only=false, $showsoc=0, $forcecombo=0, $events=array(), $moreparam='', $htmlid='', $multiple=false)
|
||||
{
|
||||
global $conf,$langs;
|
||||
global $conf,$langs,$hookmanager,$action;
|
||||
|
||||
$langs->load('companies');
|
||||
|
||||
@ -1419,9 +1421,15 @@ class Form
|
||||
|
||||
if ($selected === '') $selected = array();
|
||||
else if (!is_array($selected)) $selected = array($selected);
|
||||
$out='';
|
||||
$out='';
|
||||
|
||||
// On recherche les societes
|
||||
if (! is_object($hookmanager))
|
||||
{
|
||||
include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
|
||||
$hookmanager=new HookManager($this->db);
|
||||
}
|
||||
|
||||
// We search third parties
|
||||
$sql = "SELECT sp.rowid, sp.lastname, sp.statut, sp.firstname, sp.poste";
|
||||
if ($showsoc > 0) $sql.= " , s.nom as company";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX ."socpeople as sp";
|
||||
@ -1506,6 +1514,18 @@ class Form
|
||||
$out.= ($socid != -1) ? ($langs->trans($socid?"NoContactDefinedForThirdParty":"NoContactDefined")) : $langs->trans('SelectAThirdPartyFirst');
|
||||
$out.= '</option>';
|
||||
}
|
||||
|
||||
$parameters = array(
|
||||
'socid'=>$socid,
|
||||
'htmlname'=>$htmlname,
|
||||
'resql'=>$resql,
|
||||
'out'=>&$out,
|
||||
'showfunction'=>$showfunction,
|
||||
'showsoc'=>$showsoc,
|
||||
);
|
||||
|
||||
$reshook = $hookmanager->executeHooks( 'afterSelectContactOptions', $parameters, $this, $action ); // Note that $action and $object may have been modified by some hooks
|
||||
|
||||
if ($htmlname != 'none' || $options_only)
|
||||
{
|
||||
$out.= '</select>';
|
||||
|
||||
Loading…
Reference in New Issue
Block a user