PDA

Afficher la version complète : Widgets Afficher le top 5 de la semaine - message (widget)



Spider-Man
12/01/2010, 17h49
Ce widjet vous permet d'afficher le top 5 des membres qui on poster cette semaine.
Remerciements


Ce Hack a été traduit en français pour vBulletin-Ressources avec l'autorisation explicite de son auteur. / This Hack was translated into French for vBulletin-Ressources with the explicit authorization of its author.



vBulletin-Ressources et son équipe offrira du support vis-à-vis des hacks traduits, bien sûr, dans la mesure du possible de chacun, autant en terme de temps que de connaissances/ vBulletin-Ressources and its team will offer support for the translated hacks, of course, as far as possible for everyone, as much in term of time that knowledge.



vBulletin-Ressources remercie l'auteur du hack pour avoir fourni son autorisation. / vBulletin-Ressources thanks the author for the hack to have provided its authorization.

Conception


Auteur du Hack / Author Of Hack : MicroHellas (http://www.vbulletin.org/forum/member.php?u=164350)
Source / Link of Thread: Top 5 poster this week (http://www.vbulletin.org/forum/showthread.php?t=230794)

Version du hack / Hack version : 1.0.0
Version vBulletin Requise / Version vBulletin Required : vB 4.x
Testé / Tested: oui sur 4.0

Traducteur / Translator: Spider-Man
Copyright © 2006-2009 vBulletin-Ressources.com - Tous droits réservés Uniquement pour nos traductions / Copyright © 2006-2009 vBulletin-Ressources.com - All Rights Reserved Only for ours translations


Installation



Admincp->vBullietin CMS->Widgets->Créer un nouveau widjets

Choisire Execution direct php.

Mettre un titre pas trop long pour que il s'affiche bien. ex: Top 5 cette semaine

Cliquer Enregistrer
Rechercher le nouveau widjet créer et cliquer sur configurer.
Retirer tout le code assurer vous qu'il ne reste plus rien.
Copier et coller le bout de code plus bas dans le carrer.
Laisser le template (vbcms_widget_execphp_page) tel qu'il est.

Cliquer Enregistrer
Aller dans Admincp->vBullietin CMS->Gestionnaire de mise en page

Cliquer sur Go sur celui par default

Ajouter le widjet

Et cliquer sur enregistrer
Voila



$posts = "Posts";
ob_start();
require_once('./includes/functions_user.php');
require_once('./includes/functions_bigthree.php');
// Current Week Top Posters
$starttime = mktime(0, 0, 0, date('n'), date('j'), date('Y')) - ((date('N')-1)*3600*24);
// Get Top Members for current week
$mostactiveweek_get = vB::$db->query_read("
SELECT ".TABLE_PREFIX."user.userid, ".TABLE_PREFIX."user.username, ".TABLE_PREFIX."user.usertitle,
COUNT(".TABLE_PREFIX."post.postid) AS postcount
FROM ".TABLE_PREFIX."user
LEFT JOIN ".TABLE_PREFIX."post
ON ".TABLE_PREFIX."post.userid=".TABLE_PREFIX."user.userid
AND dateline>'".$starttime."'
WHERE usergroupid=2
GROUP BY ".TABLE_PREFIX."user.userid
ORDER BY postcount DESC
LIMIT 5");
$topposter = true;
$output_bits = '';
while($user = vB::$db->fetch_array($mostactiveweek_get))
{
$percentage = round(($user[postcount]/$totalposts[postcount]) * 100);
if($topposter == true)
{
$avatarurl = fetch_avatar_url($user[userid]);
if (!$avatarurl) {
$useravatar = 'images/misc/avatar.png';
} else {
$useravatar = $avatarurl[0];
}
$output_bits .='<div align="center">
<img border="0" src="'.$useravatar.'"><br />
<a target="_blank" href="member.php?u='.$user[userid].'">'.$user[username].'</a><br />
'.$user[usertitle].'<br />
'.$posts.':&nbsp;'.$user[postcount].'<br />
</div><hr />';
$topposter = false;
} else {
$output_bits .= '<a target="_blank" href="member.php?u='.$user[userid].'">'.$user[username].'</a><div style="float: right;">'.$user[postcount].'</div><br />';
}
}
$output = $output_bits;
ob_end_clean();

Note

Par default le code affiche que le top 5 des derniers message fait de la semaine par les membres soit ID 2 mais si vous voulez faire afficher tout les groupe d'utilisateur il vous faut supprimer la ligne 17 ou que lon voit usergroupid=2




Captures

11907

Allan
12/01/2010, 18h16
Merci pour le trad Spider-man ;)

Ombre
12/01/2010, 18h35
Bonsoir, merci spider man pour cette trad :)

Billyboule
12/01/2010, 19h19
Et encore un, merci Spider.