Affichage :
Le laboratoire de Darathor Index du Forum

Le laboratoire de Darathor

Ressources diverses, principalement sur les fourms phpBB
[MOD] Memberlist filters (TEST - A)

Ce forum est verrouillé, vous ne pouvez pas poster, ni répondre, ni éditer les sujets. Ce sujet est verrouillé, vous ne pouvez pas éditer les messages ou faire de réponses.

Rechercher dans ce sujet :
Messages
Darathor Sexe : Masculin
Site Admin
Membre

Inscrit le : 02 Nov 2003
Messages : 1101
Localisation : Strasbourg
MessagePosté le : 02 Sep 2005 20:40
Masquer ce messageAfficher ce message
Répondre en citantAjouter à liste des messages à citerRetirer de la liste des messages à citer
Citation :
But : Ajoute la possibilité de filtrer la liste de smembres selon les pseudos, les localisations ou les sites web.

Auteur : Darathor (darathor@free.fr)
Version : 1.0 TEST - A (02/09/2005)
Compatibilité phpBB : 2.0.17


Dans "memberlist.php" :
Code :
#
# Trouver
#
//
// End session management
//

#
# Ajouter après
#
// DEBUT MOD Memberlist filters
// Récupération des variables.
$filtre_pseudo = '';
if(!empty($HTTP_POST_VARS['filtre_pseudo'])) { $filtre_pseudo = $HTTP_POST_VARS['filtre_pseudo']; }
elseif(!empty($HTTP_GET_VARS['filtre_pseudo'])) { $filtre_pseudo = $HTTP_GET_VARS['filtre_pseudo']; }
$filtre_localisation = '';
if(!empty($HTTP_POST_VARS['filtre_localisation'])) { $filtre_localisation = $HTTP_POST_VARS['filtre_localisation']; }
elseif(!empty($HTTP_GET_VARS['filtre_localisation'])) { $filtre_localisation = $HTTP_GET_VARS['filtre_localisation']; }
$filtre_site = '';
if(!empty($HTTP_POST_VARS['filtre_site'])) { $filtre_site = $HTTP_POST_VARS['filtre_site']; }
elseif(!empty($HTTP_GET_VARS['filtre_site'])) { $filtre_site = $HTTP_GET_VARS['filtre_site']; }
// Éléments de requêtes SQL.
$sql_filtre_pseudo = ($filtre_pseudo != '') ? (' AND username LIKE "' . str_replace("*", "%", addslashes($filtre_pseudo)) . '"') : '';
$sql_filtre_localisation = ($filtre_localisation != '') ? (' AND user_from LIKE "' . str_replace("*", "%", addslashes($filtre_localisation)) . '"') : '';
$sql_filtre_site = ($filtre_site != '') ? (' AND user_website LIKE "' . str_replace("*", "%", addslashes($filtre_site)) . '"') : '';
$sql_filtre = $sql_filtre_pseudo . $sql_filtre_localisation . $sql_filtre_site;
// FIN MOD Memberlist filters

#
# Trouver
#
   'L_PM' => $lang['Private_Message'],

#
# Ajouter après
#
   // DEBUT MOD Memberlist filters
   'L_FILTRES' => $lang['MeFi_Filtres'],
   'L_FILTRE_EXPLAIN' => $lang['MeFi_Filtres_explain'],
   'FILTRE_USERNAME' => stripslashes(htmlspecialchars($filtre_pseudo)),
   'FILTRE_LOCALISATION' => stripslashes(htmlspecialchars($filtre_localisation)),
   'FILTRE_SITE' => stripslashes(htmlspecialchars($filtre_site)),
   // DEBUT MOD Memberlist filters

#
# Trouver
#
   WHERE user_id <> " . ANONYMOUS . "

#
# Remplacer par
#
   WHERE user_id <> " . ANONYMOUS /** DEBUT MOD Memberlist filters **/ . $sql_filtre /** FIN MOD Memberlist filters **/ . "

#
# Trouver
#
      WHERE user_id <> " . ANONYMOUS;

#
# Remplacer par
#
      WHERE user_id <> " . ANONYMOUS /** DEBUT MOD Memberlist filters **/ . $sql_filtre /** FIN MOD Memberlist filters **/;

#
# Trouver
#
      $pagination = generate_pagination("memberlist.$phpEx?mode=$mode&amp;order=$sort_order", $total_members, $board_config['topics_per_page'], $start). '&nbsp;';

#
# Remplacer par
#
      // DEBUT MOD Memberlist filters
      // -- DEBUT Enlevé
      // $pagination = generate_pagination("memberlist.$phpEx?mode=$mode&amp;order=$sort_order", $total_members, $board_config['topics_per_page'], $start). '&nbsp;';
      // -- FIN Enlevé   
      $filtres = ($filtre_pseudo != '') ? ("&amp;filtre_pseudo=" . stripslashes(htmlspecialchars($filtre_pseudo))) : '';
      $filtres .= ($filtre_localisation != '') ? ("&amp;filtre_localisation=" . stripslashes(htmlspecialchars($filtre_localisation))) : '';
      $filtres .= ($filtre_site != '') ? ("&amp;filtre_site=" . stripslashes(htmlspecialchars($filtre_site))) : '';
      $pagination = generate_pagination("memberlist.$phpEx?mode=$mode&amp;order=$sort_order$filtres", $total_members, $board_config['topics_per_page'], $start). '&nbsp;';
      // FIN MOD Memberlist filters


Dans "memberlist.tpl" :
Code :
#
# Trouver
#
  <table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
   <tr>
     <td align="left"><span class="nav"><a href="{U_INDEX}" class="nav">{L_INDEX}</a></span></td>
     <td align="right" nowrap="nowrap"><span class="genmed">{L_SELECT_SORT_METHOD}:&nbsp;{S_MODE_SELECT}&nbsp;&nbsp;{L_ORDER}&nbsp;{S_ORDER_SELECT}&nbsp;&nbsp;
      <input type="submit" name="submit" value="{L_SUBMIT}" class="liteoption" />
      </span></td>
   </form></tr>
  </table>

#
# Remplacer par
#
  <!-- DEBUT MOD Memberlist filters -->
  <table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
   <tr>
     <td align="left"><span class="nav"><a href="{U_INDEX}" class="nav">{L_INDEX}</a></span></td>
   </tr>
  </table>
  <table width="100%" cellspacing="1" cellpadding="3" border="0" class="forumline">
   <tr>
     <th height="100" colspan="3">{L_FILTRES}</th>
   </tr>
   <tr align="center">
     <td class="row2" colspan="3"><span class="gensmall">{L_FILTRE_EXPLAIN}</span></td>
   </tr>
   <tr align="center">
     <td class="row1" width="33%"><span class="gen">{L_USERNAME}</span></td>
     <td class="row1" width="33%"><span class="gen">{L_FROM}</span></td>
     <td class="row1" width="33%"><span class="gen">{L_WEBSITE}</span></td>
   </tr>
   <tr align="center">
     <td class="row1"><input class="post" type="text" name="filtre_pseudo" value="{FILTRE_USERNAME}" size="20" /></td>
     <td class="row1"><input class="post" type="text" name="filtre_localisation" value="{FILTRE_LOCALISATION}" size="20" /></td>
     <td class="row1"><input class="post" type="text" name="filtre_site" value="{FILTRE_SITE}" size="20" /></td>
   </tr>
   <tr>
     <td class="catBottom" align="right" nowrap="nowrap" colspan="3"><span class="genmed">{L_SELECT_SORT_METHOD}:&nbsp;{S_MODE_SELECT}&nbsp;&nbsp;{L_ORDER}&nbsp;{S_ORDER_SELECT}&nbsp;&nbsp;
      <input type="submit" name="submit" value="{L_SUBMIT}" class="liteoption" />
      </span></td>
   </tr>
  </table>
</form>
  <br class="gensmall" />
  <!-- FIN MOD Memberlist filters -->


Dans "lang_main.php" :
Code :
#
# Trouver
#
?>

#
# Ajouter avant
#
// DEBUT MOD Memberlist filters
$lang['MeFi_Filtres'] = 'Filtres à appliquer';
$lang['MeFi_Filtres_explain'] = 'Chaque * dans les filtres suivant sera traduite par "zéro ou plusieurs caractères quelconques". La casse n\'est pas prise en compte (c\'est à dire qu\'il n\'y a pas de distinction entre majuscules et minuscules).';
// FIN MOD Memberlist filters

Revenir en haut Aller en bas
Hors ligne | Profil | MP | E-mail | Site web
  Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum