Quantcast
Channel: Forum Dolibarr france :: Discussions récentes
Viewing all articles
Browse latest Browse all 34935

Sujet: Ajouter une entrée dans la zone de recherche - par: defrance

$
0
0
Pour avoir un peu cherché sur le sujet des hook et en particuliers celui de recherche, je post ici le bout de code que j'ai finalement utilisé pour ajouter à mon module la recherche par numéro de série d'un équipement.

1 ajouter dans la classe de déclaration du module la ligne suivante :
$this->module_parts = array('hooks' => array('searchform'));
2 créer un fichier action_mymodule.class.php dans le dossier où se trouve déjà les classes de votre module
3 voici le hook codé pour réaliser une recherche sur le numéro de série de l'équipement :
class ActionsEquipement // extends CommonObject 
{
 
/** Overloading the doActions function : replacing the parent's function with the one below
* @param parameters meta datas of the hook (context, etc...)
* @param object the object you want to process (an invoice if you are in invoice module, a propale in propale's module, etc...)
* @param action current action (if set). Generally create or edit or null
* @return void
*/

function printSearchForm($parameters, $object, $action)
{
global $conf,$langs;
 
$langs->load("equipement");
$title = img_object('','equipement').' '.$langs->trans("Equipements");
$ret='';
$ret.='<div class="menu_titre">';
$ret.='<a class="vsmenu" href="'.DOL_URL_ROOT.'/equipement/list.php'.'">';
$ret.=$title.'</a><br>';
$ret.='</div>';
$ret.='<form action="'.DOL_URL_ROOT.'/equipement/list.php'.'" method="post">';
$ret.='<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
$ret.='<input type="hidden" name="mode" value="search">';
$ret.='<input type="text" class="flat" ';
if (! empty($conf->global->MAIN_HTML5_PLACEHOLDER)) $ret.=' placeholder="'.$langs->trans("SearchOf").''.strip_tags($title).'"';
else $ret.=' title="'.$langs->trans("SearchOf").''.strip_tags($title).'"';
$ret.=' name="search_ref" size="10" />&nbsp;';
$ret.='<input type="submit" class="button" value="'.$langs->trans("Go").'">';
$ret.="</form>\n";
return $ret;
}
}


Je n'ai en fait que repris la fonction printSearchForm générique que j'ai adapté pour ma recherche spécifique. il doit être possible d'utiliser la fonction générique dans le hook mais comme les deux on le même nom... ...

Viewing all articles
Browse latest Browse all 34935

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>