Astuces Forumactif
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Membres connectés récemment
Voir tous les membres

[PHPBB3] Afficher les statistiques dans la liste des membres


2 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Dim 2 Sep 2018 - 9:59

Hello les ami(e)s,

un petit script bien sympa qui dans la liste des membres, au clic sur la flèche affichera  les statistiques du membre.
Le plus et que chaque cellule aura la couleur du pseudo et affichera si le membre est enligne ou non  clin oeil
peux tu tester dans le template memberlist_body
Affichage/Templates/Général/memberlist_body


Mettre tout au début de template ce style:
Code:
<style>
.M14_list{width: 15%;}
.M14_list  div
{
list-style:none;
margin-top:10px;
min-height:80px;
height:auto;
max-height:120px;
overflow:auto;
}
.M14_list  div,.M14_list  div a
{
font-size:11px!important;  
}
.M14_list  span
{
font-weight:bold;
}
  
</style>

Ensuite recherchez ceci ligne 55 environ:
Code:
<th class="interests">{L_INTERESTS}</th>

Juste après déposez ceci:
Code:
<th class="interests">Statistiques</th>

Puis plus bas , recherchez ceci:
Code:
<!-- BEGIN memberrow -->
 <tr class="{memberrow.ROW_CLASS}">
 <td> {memberrow.ROW_NUMBER} </td>
 <td class="avatar-mini"><a href="{memberrow.U_VIEWPROFILE}">{memberrow.AVATAR_IMG} {memberrow.USERNAME}</a></td>
 <!-- BEGIN switch_td_group -->
 <td>{memberrow.GROUPS}</td>
 <!-- END switch_td_group -->
 <td>{memberrow.INTERESTS}</td>
 <td>{memberrow.JOINED}</td>
 <td>{memberrow.LASTVISIT}</td>
 <td>{memberrow.POSTS}</td>
 <td> {memberrow.PM_IMG} </td>
 <td> {memberrow.WWW_IMG} </td>
 </tr>
 <!-- END memberrow -->

Supprimez et remplacez par:
Code:
<!-- BEGIN memberrow -->

 <tr class="{memberrow.ROW_CLASS}">
 <td> {memberrow.ROW_NUMBER} </td>
 <td class="avatar-mini"width="15%"><a href="{memberrow.U_VIEWPROFILE}">{memberrow.AVATAR_IMG} {memberrow.USERNAME}</a></td>
 <!-- BEGIN switch_td_group -->
 <td>{memberrow.GROUPS}</td>
 <!-- END switch_td_group -->
          
          <td width="15%">{memberrow.INTERESTS}</td>
          <td width="15%"class="M14_getStats"align="center">
            <img class="M14_openStats"src="https://i.servimg.com/u/f87/11/26/21/37/arrow-10.png"style="cursor:pointer;"title="Afficher les statistiques"/>
            <img class="M14_closeStats"src="https://i.servimg.com/u/f87/11/26/21/37/arrow-11.png"style="display:none;cursor:pointer;"title="Masquer les statistiques"/>
          </td>
 <td width="15%">{memberrow.JOINED}</td>
 <td width="15%">{memberrow.LASTVISIT}</td>
 <td width="15%">{memberrow.POSTS}</td>
 <td width="15%"> {memberrow.PM_IMG} </td>
 <td width="15%"> {memberrow.WWW_IMG} </td>
 </tr>
        
          <tr class="{memberrow.ROW_CLASS}"style="display:none;">
            <td>  </td>
            <td class="M14_list"valign="top"><center><span>Points</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Réputation</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Sujets</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Messages</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Visiteurs</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Informations</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"align="center"><center><span>Statut</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"align="center"></td>
</tr>
 <!-- END memberrow -->

Penser a enregistrer puis à valider en cliquant respectivement sur   Enregistr puis Ajout


Puis le script sur toutes pages en prenant soin d'avoir le profil avancé d'activé:
Utilisateurs et groupes/Profil/Options générales/Options générales du profil
Activer le profil avancé : Oui



Modules/HTML JAVASCRIPT/Gestion des codes JavascriptCréer un nouveau javascript


Mets un titre explicite.
Coches sur toutes les pages.


Déposes ceci:
Code:

$(function(){
$('.M14_openStats').click(function(){
$(this).hide();$(this).next().show();
$(this).closest('tr').next().fadeIn();
});
$('.M14_closeStats').click(function(){
$(this).hide();$(this).prev().show();
$(this).closest('tr').next().fadeOut();
});
$('td[class="avatar-mini"]').each(function(){
var $this=$(this);
var Linkmember=$(this).find('a[href^="/u"]').attr('href');
var Textmember=$(this).find('a[href^="/u"] span strong').text();
var TextmemberNot=$(this).find('a[href^="/u"] ').text();
var color=$(this).find('a[href^="/u"] span').css('color');
var colorNone=$(this).find('a[href^="/u"]').css('color');
var stats='stats';
$.get(Linkmember+stats, function(data){
var online=$(data).find('#profile-advanced-right .module:first .h3 em').text();
var pointsLength=$(data).find('#profile-advanced-details fieldset legend:contains(Points)').length;
var reputationLength=$(data).find('#profile-advanced-details fieldset legend:contains(Réputation)').length;
var sujetLength=$(data).find('#profile-advanced-details fieldset legend:contains(Sujets)').length;
var messageLength=$(data).find('#profile-advanced-details fieldset legend:contains(Messages)').length;
var visiteurLength=$(data).find('#profile-advanced-details fieldset legend:contains(Messages des visiteurs)').length;
var informationLength=$(data).find('#profile-advanced-details fieldset legend:contains(Informations)').length;
var points=$(data).find('#profile-advanced-details  fieldset legend:contains(Points)').next().html();
var reputation=$(data).find('#profile-advanced-details fieldset legend:contains(Réputation)').next().html();
var sujet=$(data).find('#profile-advanced-details fieldset legend:contains(Sujets)').next().html();
var message=$(data).find('#profile-advanced-details fieldset legend:contains(Messages)').next().html();
var visiteur=$(data).find('#profile-advanced-details fieldset legend:contains(Messages des visiteurs)').next().html();
var information=$(data).find('#profile-advanced-details fieldset legend:contains(Informations)').next().html();
if(pointsLength){
$this.closest('tr').next().find('td.M14_list:eq(0) div').html(points);
}
else {
$this.closest('tr').next().find('td.M14_list:eq(0) div').html('<center>Non activé</center>');
}
if(reputationLength)
{
$this.closest('tr').next().find('td.M14_list:eq(1) div').html(reputation);
}
else {
$this.closest('tr').next().find('td.M14_list:eq(1) div').html('<center>Non activé</center>');
}
if(sujetLength)
{
$this.closest('tr').next().find('td.M14_list:eq(2) div').html(sujet);
}
else
{
$this.closest('tr').next().find('td.M14_list:eq(2) div').html('<center>Non activé</center>');
}
if(messageLength)
{
$this.closest('tr').next().find('td.M14_list:eq(3) div').html(message);
}
else
{
$this.closest('tr').next().find('td.M14_list:eq(3) div').html('<center>Non activé</center>');
}
if(visiteurLength)
{
$this.closest('tr').next().find('td.M14_list:eq(4) div').html(visiteur);
}
else
{
$this.closest('tr').next().find('td.M14_list:eq(4) div').html('<center>Non activé</center>');
}
if(informationLength)
{
$this.closest('tr').next().find('td.M14_list:eq(5) div').html(information);
}
else
{
$this.closest('tr').next().find('td.M14_list:eq(5) div').html('<center>Non activé</center>');
}

  
 if(color)
      {
    $this.closest('tr').next().find('td').css('color',color);
      }
  
//LE LIEN DE L IMAGE EN LIGNE
var M14_Enlign='https://2img.net/i/fa/responsive/icons/mini/online.png';
//LE LIEN DE L IMAGE HORS LIGNE
var M14_horsligne='https://2img.net/i/fa/responsive/icons/mini/offline.png';
if(online)
{
$this.closest('tr').next().find('td:eq(7) div').html(' <img src="'+M14_Enlign+'"style="cursor:pointer;"title="'+Textmember+' est En ligne"/>');
}
else
{
$this.closest('tr').next().find('td:eq(7) div').html(' <img src="'+M14_horsligne+'"style="cursor:pointer;"title="'+TextmemberNot+' est Hors ligne"/>');
}
});

  

});});


Penser a cliquer sur le bouton Valid










Si ce dernier n'a pas été modifié, le template dans sa totalité:
Code:
<style>
.M14_list{width: 15%;}
.M14_list  div
{
list-style:none;
margin-top:10px;
min-height:80px;
height:auto;
max-height:120px;
overflow:auto;
}
.M14_list  div,.M14_list  div a
{
font-size:11px!important;  
}
.M14_list  span
{
font-weight:bold;
}
  
</style>
<!-- BEGIN switch_user_logged_in -->
<p class="right rightside">{LAST_VISIT_DATE}</p>
<!-- END switch_user_logged_in -->

<p>{CURRENT_TIME}</p>
<h1 class="page-title solo">{PAGE_TITLE}</h1>

<form action="{S_MODE_ACTION}" method="get">
<div class="panel">
 <div class="inner"><span class="corners-top"><span></span></span>
 <h2 class="h3">{L_ORDER_OR_SELECT}</h2>
 <p style="text-align:right; margin: 0; padding: 0;">
 {L_USER_SELECT} <input type="text" class="inputbox tiny" name="username" maxlength="25" size="20" value="{L_USER_SELECT_VALUE}" />      
 {L_SELECT_SORT_METHOD} {S_MODE_SELECT}      
 {L_ORDER} {S_ORDER_SELECT}      
 {S_HIDDEN_SID}
 <input class="button2" type="submit" name="submit" value="{L_SUBMIT}" />
 </p>
 <span class="corners-bottom"><span></span></span></div>
</div>
</form>

<div class="forumbg forumbg-table">
 <div class="inner"><span class="corners-top"><span></span></span>

 <table class="table1" cellspacing="1" id="memberlist">
 <thead>
 <tr>
 <th class="number">#</th>
 <th class="name">{L_AVATAR} - {L_USERNAME}</th>
 <!-- BEGIN switch_th_group -->
 <th class="group">{L_GROUPS}</th>
 <!-- END switch_th_group -->
          <th class="interests">{L_INTERESTS}</th>
 <th class="interests">Statistiques</th>
 <th class="joined">{L_JOINED}</th>
 <th class="active">{L_VISITED}</th>
 <th class="posts">{L_POSTS}</th>
 <th class="pm">{L_PM}</th>
 <th class="website">{L_WEBSITE}</th>
 </tr>
 </thead>
 <tbody>
 <!-- BEGIN memberrow -->

 <tr class="{memberrow.ROW_CLASS}">
 <td> {memberrow.ROW_NUMBER} </td>
 <td class="avatar-mini"width="15%"><a href="{memberrow.U_VIEWPROFILE}">{memberrow.AVATAR_IMG} {memberrow.USERNAME}</a></td>
 <!-- BEGIN switch_td_group -->
 <td>{memberrow.GROUPS}</td>
 <!-- END switch_td_group -->
          
          <td width="15%">{memberrow.INTERESTS}</td>
          <td width="15%"class="M14_getStats"align="center">
            <img class="M14_openStats"src="https://i.servimg.com/u/f87/11/26/21/37/arrow-10.png"style="cursor:pointer;"title="Afficher/Masquer les statistiques"/>
            <img class="M14_closeStats"src="https://i.servimg.com/u/f87/11/26/21/37/arrow-11.png"style="display:none;cursor:pointer;"title="Masquer les statistiques"/>
          </td>
 <td width="15%">{memberrow.JOINED}</td>
 <td width="15%">{memberrow.LASTVISIT}</td>
 <td width="15%">{memberrow.POSTS}</td>
 <td width="15%"> {memberrow.PM_IMG} </td>
 <td width="15%"> {memberrow.WWW_IMG} </td>
 </tr>
        
          <tr class="{memberrow.ROW_CLASS}"style="display:none;">
            <td> &nbsp;</td>
            <td class="M14_list"valign="top"><center><span>Points</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Réputation</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Sujets</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Messages</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Visiteurs</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"><center><span>Informations</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"align="center"><center><span>Statut</span></center><br /><div></div></td>
            <td class="M14_list"valign="top"align="center"></td>
</tr>
 <!-- END memberrow -->
 <!-- BEGIN switch_no_user -->
 <tr class="row1">
 <td colspan="{switch_no_user.COLSPAN_NUMBER}">{switch_no_user.L_NO_USER}</td>
 </tr>
 <!-- END switch_no_user -->
 </tbody>
 </table>

 <span class="corners-bottom"><span></span></span></div>
</div>

<div class="pagination" style="float:none;">
 <!-- BEGIN switch_pagination -->
 {PAGINATION}<br /><br />
 <!-- END switch_pagination -->
</div>


Penser a enregistrer puis à valider en cliquant respectivement sur   Enregistr puis Ajout



Dernière édition par Milouze14 le Mer 1 Déc 2021 - 4:19, édité 3 fois (Raison : Mise a jour du script)
Jackymi
Jackymi
MIlouzien regretté

http://www.skywebforum.com/

MessageJackymi Dim 2 Sep 2018 - 18:53

Hello Philippe

Je viens de tester cela, et voici ce que j'obtiens clin oeil 

[PHPBB3] Afficher les statistiques dans la liste des membres Membre10
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Dim 2 Sep 2018 - 18:57

Re Jean,
essayes ceci:
Code:
<th>Statistiques</th>

Remplaces par:

Code:
<th class="interests">Statistiques</th>
Jackymi
Jackymi
MIlouzien regretté

http://www.skywebforum.com/

MessageJackymi Dim 2 Sep 2018 - 19:16

Re Philippe

C'est bon, j'ai l'onglet " statistiques " de la même couleur aussi . Merci clin oeil
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Dim 2 Sep 2018 - 19:23

Oki Jean,
étonnant que tu es deux champs vides?
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Jeu 6 Sep 2018 - 11:52

@Jackymi

Hello Jean,
je viens de mettre à jour le script afin qu'il affiche ce qui est présent sur le profil du membre afin de ne pas avoir un vide dans la liste des membres .

J'ai aussi ajouté la class sur la balise th dans le template afin d'avoir le même rendu que les autres onglets:

Code:
<th class="interests">Statistiques</th>

Puis supprimes le script présent actuellement sur ton fofo de test et remplaces par celui qui est présent ici:
https://www.milouze14.com/t31640-phpbb3-afficher-les-statistiques-dans-la-liste-des-membres#601444
Jackymi
Jackymi
MIlouzien regretté

http://www.skywebforum.com/

MessageJackymi Jeu 6 Sep 2018 - 15:18

Hello Philippe

Je viens de mettre à jour ton nouveau script, tout est ok, je n'ai plus de champs vides clin oeil 
C'est parfait, merci .
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Jeu 6 Sep 2018 - 17:39

Oki merci Jean

Voir le sujet précédent Voir le sujet suivant Revenir en haut

Créer un compte ou se connecter pour répondre

Vous devez être membre pour répondre.

S'enregistrer

Rejoignez notre communauté ! C'est facile !


S'enregistrer

Connexion

Vous êtes déjà membre ? Aucun soucis, cliquez ici pour vous connecter.


Connexion

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum