4 require_once __DIR__
. '/../_inc.php';
6 if ($user['droits']['membres'] < Membres
::DROIT_ECRITURE
)
8 throw new UserException("Vous n'avez pas le droit d'accéder à cette page.");
11 $recherche = trim(utils
::get('r'));
12 $champ = trim(utils
::get('c'));
14 $champs = $config->get('champs_membres');
18 // On détermine magiquement quel champ on recherche
23 if (is_numeric(trim($recherche))) {
26 elseif (strpos($recherche, '@') !== false) {
30 $champ = $config->get('champ_identite');
35 if ($champ != 'id' && !$champs->get($champ))
37 throw new UserException('Le champ demandé n\'existe pas.');
43 $result = $membres->search($champ, $recherche);
45 if (count($result) == 1 && $auto)
47 utils
::redirect('/admin/membres/fiche.php?id=' . (int)$result[0]['id']);
51 $champs_liste = $champs->getList();
53 $champs_liste = array_merge(
54 ['id' => ['title' => 'Numéro unique', 'type' => 'number']],
58 $champs_entete = $champs->getListedFields();
60 if (!array_key_exists($champ, $champs_entete))
62 $champs_entete = array_merge(
63 [$champ => $champs_liste[$champ]],
68 $tpl->assign('champs_entete', $champs_entete);
69 $tpl->assign('champs_liste', $champs_liste);
70 $tpl->assign('champ', $champ);
74 $tpl->assign('liste', $result);
77 $tpl->assign('recherche', $recherche);
79 $tpl->display('admin/membres/recherche.tpl');