Overview
Comment: | Recherche indépendante de la liste des membres |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
d03c32dd0c8de82c8ae41496b1ab35a8 |
User & Date: | bohwaz on 2013-01-29 18:59:37 |
Other Links: | manifest | tags |
Context
2013-01-29
| ||
19:00 | Gestion des select check-in: a2fdda4170 user: bohwaz tags: trunk | |
18:59 | Recherche indépendante de la liste des membres check-in: d03c32dd0c user: bohwaz tags: trunk | |
2013-01-18
| ||
14:27 | Gestion des champs privés et non modifiables en mode utilisateur check-in: a83adc021d user: bohwaz tags: trunk | |
Changes
Added templates/admin/membres/recherche.tpl version [32ee66a7f3].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 | {include file="admin/_head.tpl" title="Recherche de membre" current="membres"} <form method="get" action="{$admin_url}membres/recherche.php" class="searchMember"> <fieldset> <legend>Rechercher un membre</legend> <dl> <dt><label for="f_champ">Champ</label></dt> <dd> <select name="c" id="f_champ"> {foreach from=$champs key="k" item="v"} <option value="{$k|escape}"{form_field name="c" default=$champ selected=$k}>{$v.title|escape}</option> {/foreach} </select> </dd> <dt><label for="f_texte">Recherche</label></dt> <dd><input id="f_texte" type="text" name="r" value="{$recherche|escape}" /></dd> </dl> <p class="submit"> <input type="submit" value="Chercher →" /> </p> </fieldset> </form> {if $user.droits.membres >= Garradin\Membres::DROIT_ECRITURE} <form method="post" action="{$admin_url}membres/action.php" class="memberList"> {if !empty($liste)} <table class="list"> <thead> {if $user.droits.membres == Garradin\Membres::DROIT_ADMIN}<td class="check"><input type="checkbox" value="Tout cocher / décocher" onclick="checkUncheck();" /></td>{/if} <td></td> <td>{$titre_champ|escape}</td> <td>Cotisation</td> <td></td> </thead> <tbody> {foreach from=$liste item="membre"} <tr> {if $user.droits.membres == Garradin\Membres::DROIT_ADMIN}<td class="check"><input type="checkbox" name="selected[]" value="{$membre.id|escape}" /></td>{/if} <td class="num"><a href="{$admin_url}membres/fiche.php?id={$membre.id|escape}">{$membre.id|escape}</a></th> <td>{$membre[$champ]|escape}</td> {if empty($membre.date_cotisation)} <td class="error">jamais réglée</td> {elseif $membre.date_cotisation > strtotime('12 months ago')} <td class="confirm">à jour</td> {else} <td class="alert">en retard</td> {/if} <td class="actions"> {if !empty($membre.email)}<a class="icn" href="{$www_url}admin/membres/message.php?id={$membre.id|escape}" title="Envoyer un message">✉</a> {/if} <a class="icn" href="modifier.php?id={$membre.id|escape}">✎</a> </td> </tr> {/foreach} </tbody> </table> {if $user.droits.membres == Garradin\Membres::DROIT_ADMIN} <p class="checkUncheck"> <input type="button" value="Tout cocher / décocher" onclick="checkUncheck();" /> </p> <p class="actions"> <em>Pour les membres cochés :</em> <input type="submit" name="move" value="Changer de catégorie" /> <input type="submit" name="delete" value="Supprimer" /> {csrf_field key="membres_action"} </p> {/if} {else} <p class="alert"> Aucun membre trouvé. </p> {/if} </form> <script type="text/javascript"> {literal} (function() { var checked = false; window.checkUncheck = function() { var elements = document.getElementsByTagName('input'); var el_length = elements.length; for (i = 0; i < el_length; i++) { var elm = elements[i]; if (elm.type == 'checkbox') { if (checked) elm.checked = false; else elm.checked = true; } } checked = checked ? false : true; return true; } }()) {/literal} </script> {else} {if !empty($liste)} <table class="list"> <thead> <th>Nom</th> <td></td> </thead> <tbody> {foreach from=$liste item="membre"} <tr> <th>{$membre.nom|escape}</th> <td class="actions"> {if !empty($membre.email)}<a href="{$www_url}admin/membres/message.php?id={$membre.id|escape}">Envoyer un message</a>{/if} </td> </tr> {/foreach} </tbody> </table> {else} <p class="info"> Aucune membre trouvé. </p> {/if} {/if} {include file="admin/_foot.tpl"} |
Added www/admin/membres/recherche.php version [81da42f2c3].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | <?php namespace Garradin; require_once __DIR__ . '/../_inc.php'; if ($user['droits']['membres'] < Membres::DROIT_ACCES) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } $recherche = trim(utils::get('r')) ?: ''; $champ = trim(utils::get('c')) ?: ''; $champs = $config->get('champs_membres'); if (!$champ) { if (is_numeric(trim($recherche))) { $champ = 'id'; } elseif (strpos($recherche, '@') !== false) { $champ = 'email'; } elseif ($champs->get('nom')) { $champ = 'nom'; } else { $champ = $champs->getFirst(); } } else { if (!$champs->get($champ)) { throw new UserException('Le champ demandé n\'existe pas.'); } } $champs = array_merge(array('id' => array('title' => 'Numéro unique')), $champs->getList()); $tpl->assign('champs', $champs); $tpl->assign('champ', $champ); $tpl->assign('titre_champ', $champs[$champ]['title']); $tpl->assign('liste', $membres->search($champ, $recherche)); $tpl->assign('recherche', $recherche); $tpl->display('admin/membres/recherche.tpl'); ?> |