Fork me on GitHub


Téléchargements Modules Version 2.4 Divers MyPote


MyPote Populaire 
2009
  • 14
  • novembre

Avertissement : ce module n'est compatible que jusqu'à Xoops 2.4
Nous débutons la mise à jour des modules vers Xoops 2.5.5, merci de votre compréhension.
Si un module vous tient à cœur particulièrement, envoyez un message privé à Cesag, afin de voir si on peut faire accélérer les choses.



Description

Le module MyPote est un gestionnaire d'ami(e)s et de potes. Il retrace les visites faites par les membres dans son info compte.


Il est possible d'évaluer les membres visités, de les déclarer ami(e)s ou potes.

Informations:



Si c'est une mise à jour, il faut effacer l'ancien module sans le désinstaller , puis faire une mise à jour du module, ensuite aller sur la page http://votre-site/modules/mypote/update.php et faire la mise à jour des tables mysql, puis supprimer le ficher update.php

Installation

Si c'est une premiere installation, envoyez le module sans le fichier update.php sur votre ftp et installez le.

- Editer le fichier modules/system/templates/system_userinfo.html de votre site et ajouter le code suivant juste après le 2ème tag <{/if}>
<!-- debut hack mypote --> <{if $user_ownpage == false}> <table width="100%">    <tr>       <td align="center">             <{$button_addpote}>             <{$button_addfriend}>             <{$button_addnote}>         </td>   </tr> </table>         <{/if}>   <table width="100%"> <tr> <br /> <td width="14%"> <table class="outer"  width="100%">         <tr>           <th colspan="2" align="center"><{$lang_poter}></th>         </tr> <tr class="even"><td><{foreach item=lov from=$poter}><{$lov.potedisplay}><br><{/foreach}></td></tr>              </table></td> <td width="14%"> <table class="outer"  width="100%">                     <tr>                     <th colspan="2" align="center"><{$lang_friends}></th>         </tr>                     <tr class="even"><td><{foreach item=ami from=$friends}><{$ami.friendsdisplay}><br><{/foreach}></td></tr> </table></td> <td width="14%"> <table class="outer"  width="100%">         <tr>           <th colspan="2" align="center"><{$lang_blocked}></th>         </tr> <tr class="even"><td><{foreach item=bloq from=$blocked}><{$bloq.blockeddisplay}><br><{/foreach}></td></tr> </table></td> <td width="23%"> <table class="outer"  width="100%">         <tr>           <th colspan="2" align="center"><{$lang_visitor}></th>         </tr> <tr class="even"><td><{foreach item=visit from=$visitor}><{$visit.visitordisplay}>  <font color=green><{$visit.timedisplay}></font><br><{/foreach}></td></tr> </table></td>  <td width="35%"> <table class="outer"  width="100%">         <tr>           <th  align="center"><{$lang_info}></th>         </tr> <tr bgcolor="white"> <td><{$lang_note}> <{$user_uname}> <{$lang_etde}> <font color=red><{$user_note}></font>/10</td> </tr> <tr bgcolor="white"> <td><font color=red><{$user_vote}></font> <{$lang_vote}> <{$user_uname}></td> </tr> <tr bgcolor="white"> <td><font color=red><{$user_hits}></font> <{$lang_hits}> <{$user_uname}></td> </tr> <tr bgcolor="white"> <td><{$user_uname}> <{$lang_potet}> <font color=red><{$user_potet}></font> <{$lang_membres}></td> </tr> <tr bgcolor="white"> <td><font color=red><{$user_potert}></font> <{$lang_membres}> <{$lang_potert}> <{$user_uname}></td> </tr> <tr bgcolor="white"> <td><{$user_uname}> <{$lang_addedme}> <font color=red><{$user_friendst}></font> <{$lang_friendst}></td> </tr> <tr bgcolor="white"> <td><font color=red><{$user_lfriendst}></font> <{$lang_membres}> <{$lang_added}> <{$user_uname}> <{$lang_lfriendst}></td> </tr> <tr bgcolor="white"> <td><{$user_uname}> <{$lang_mbloked}> <font color=red><{$user_mbloked}></font> <{$lang_membres}></td> </tr> <tr bgcolor="white"> <td><font color=red><{$user_lblockedt}></font> <{$lang_lblockedt}> <{$user_uname}></td> </tr> <tr bgcolor="white"> <td><{$lang_poput}> <{$user_uname}> <{$lang_etde}> <font color=red><{$user_poput}></font></td> </tr> </table></td> </tr></table> <br />           <!-- fin hack mypote -->

Puis mettez à jour le module system via l'administration des modules

- Editer le fichier pmlite de votre site et remplacer ses 3 lignes
$res $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("users")." WHERE uid=".intval($_POST['to_userid'])."");
        list(
$count) = $xoopsDB->fetchRow($res);
        if (
$count != 1) {

Et les remplacer par ce code
$isblocked $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mypote")." WHERE friend=".intval($_POST['to_userid'])." AND friendid=".$xoopsUser->getVar('uid')." AND blocked='1' ");   list($countblocked) = $xoopsDB->fetchRow($isblocked);         $res $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("users")." WHERE uid=".intval($_POST['to_userid'])."");         list($count) = $xoopsDB->fetchRow($res);         if ($count != or $countblocked != 0) {


- Editer le fichier userinfo.php juste apres ce code
$myts =& MyTextSanitizer::getInstance(); if ( is_object($xoopsUser) && $isAdmin ) {     $xoopsTpl->assign('lang_editprofile'_US_EDITPROFILE);     $xoopsTpl->assign('lang_deleteaccount'_US_DELACCOUNT);     $xoopsTpl->assign('user_uid'$thisUser->getVar('uid'));  }


Ajouter ce code
Note : pour interdire l'accès aux profils pour les visiteurs anonymes, supprimer les 2 // de la ligne //$xoopsUser or redirect_header('index.php', 3, _NOPERM);
///////////////////////////////////////// // DEBUT HACK MYPOTE Version 3 // AFICHAGE MES POTES  // Retirer les 2 slash de la ligne en dessous pour interdire aux anonymes l'accès aux profiles //$xoopsUser or redirect_header('index.php', 3, _NOPERM); if (is_object($xoopsUser)) { $surferuid = $xoopsUser->uid(); $count = 0;       $isblocked = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mypote")." WHERE friend=$uid AND friendid=$surferuid AND blocked='1' ");     list($countblocked) = $xoopsDB->fetchRow($isblocked);             if ($countblocked == '0') {                    $ifexistpote = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mypote")." WHERE friend=$surferuid AND friendid=$uid AND status=2");     list($poteexist) = $xoopsDB->fetchRow($ifexistpote);             if ($poteexist == 1)    {  $addpote = "<img src='modules/mypote/images/".$xoopsConfig['language']."/noaddpote.gif'  whidth='160' height='17'/>";         }    else { $addpote = "<a href='modules/mypote/functions.php?op=addpote&friendid=$uid'><img src='modules/mypote/images/".$xoopsConfig['language']."/addpote.gif' whidth='160' height='17'/></a>";             }             $xoopsTpl->assign('button_addpote', $addpote);       $ifexistfriend = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mypote")." WHERE friend=$surferuid AND friendid=$uid AND status=1 ");     list($friendexist) = $xoopsDB->fetchRow($ifexistfriend);             if ($friendexist == 1)    {  $addfriend = "<img src='modules/mypote/images/".$xoopsConfig['language']."/noaddfriend.gif'  whidth='160' height='17'/>";                         }    else { $addfriend = "<a href='modules/mypote/functions.php?op=addfriend&friendid=$uid'><img src='modules/mypote/images/".$xoopsConfig['language']."/addfriend.gif'  whidth='160' height='17'/></a>";     } $xoopsTpl->assign('button_addfriend', $addfriend);     $ifexistnote=$xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mypote_votedata")." WHERE uid=$uid AND ratinguser=$surferuid");     list($noteexist) = $xoopsDB->fetchRow($ifexistnote);             if ($noteexist == 1)    {  $addnote = "<img src='modules/mypote/images/".$xoopsConfig['language']."/nonote.gif'  whidth='160' height='17'/>"; }    else { $addnote = "<a href='modules/mypote/user_rate.php?uid=$uid'><img src='modules/mypote/images/".$xoopsConfig['language']."/note.gif'  whidth='160' height='17'/></a>"; } $xoopsTpl->assign('button_addnote', $addnote);  } }  $result = $xoopsDB->query("SELECT m.friendid , u.uname FROM ".$xoopsDB->prefix("mypote")." m, ".$xoopsDB->prefix("users")." u WHERE m.friend='".$uid."' AND m.friendid=u.uid AND m.blocked=0 AND status=2 ORDER BY friendid DESC LIMIT 10"); $poter = array();       while ( $myrow = $xoopsDB->fetchArray($result) ) {       $poted=$myrow["friendid"];       $potename=$myrow["uname"];       $poter[$count]["potedisplay"]= "<a href='userinfo.php?uid=".$poted."'>".$potename."</a>";       $count ++;        $xoopsTpl->assign('poter', $poter);       }                          if ($surferuid == $uid) {      $xoopsTpl->assign('lang_poter', _US_MYPOTE); } else {     $xoopsTpl->assign('lang_poter', _US_SYPOTE); }                                                 // AFICHAGE MES AMIS $result1 = $xoopsDB->query("SELECT m.friendid , u.uname FROM ".$xoopsDB->prefix("mypote")." m, ".$xoopsDB->prefix("users")." u WHERE m.friend='".$uid."' AND m.friendid=u.uid AND m.blocked=0 AND status=1 ORDER BY friendid DESC LIMIT 10");  $friends = array();         while ( $myrow = $xoopsDB->fetchArray($result1) ) {         $friendid=$myrow["friendid"];         $fname=$myrow["uname"];         $friends[$count]["friendsdisplay"]= "<a href='userinfo.php?uid=".$friendid."'>".$fname."</a>";         $count ++;          $xoopsTpl->assign('friends', $friends);         }      if ($surferuid == $uid) {     $xoopsTpl->assign('lang_friends', _US_MYFRIEND); } else {     $xoopsTpl->assign('lang_friends', _US_SYFRIEND); }                          // AFICHAGE MEMBRES BLOQUER $result2 = $xoopsDB->query("SELECT m.friendid , u.uname FROM ".$xoopsDB->prefix("mypote")." m, ".$xoopsDB->prefix("users")." u WHERE m.friend='".$uid."' AND m.friendid=u.uid AND m.blocked=1 ORDER BY friendid DESC LIMIT 10"); $blocked = array();         while ( $myrow = $xoopsDB->fetchArray($result2) ) {         $blockedid=$myrow["friendid"];         $blockername=$myrow["uname"];         $blocked[$count]["blockeddisplay"]=  "<a href='userinfo.php?uid=".$blockedid."'>".$blockername."</a>";         $count ++;         $xoopsTpl->assign('blocked', $blocked);          }                        if ($surferuid == $uid) {     $xoopsTpl->assign('lang_blocked', _US_MYBLIST); } else {     $xoopsTpl->assign('lang_blocked', _US_SYBLIST); }  // AFICHAGE VISITEURS $result3 = $xoopsDB->query("SELECT m.visitor, m.last_visit, u.uname FROM ".$xoopsDB->prefix("mypote_visit")." m, ".$xoopsDB->prefix("users")." u WHERE m.uid='".$uid."' AND m.visitor=u.uid ORDER BY last_visit DESC LIMIT 10"); $visitor = array();         while ( $myrow = $xoopsDB->fetchArray($result3) ) {         $visitorid=$myrow["visitor"];         $visitorname=$myrow["uname"];         $visitortime=$myrow["last_visit"];         $visitor[$count]["visitordisplay"]=  "<a href='userinfo.php?uid=".$visitorid."'>".$visitorname."</a>";         $visitor[$count]["timedisplay"]= formatTimestamp($visitortime,"m");         $count ++;         $xoopsTpl->assign('visitor', $visitor);          }    if ($surferuid == $uid) {     $xoopsTpl->assign('lang_visitor', _US_MYVISIT); } else {     $xoopsTpl->assign('lang_visitor', _US_SYVISIT); }                          // AFFICHAGE INFORMATION GENERAL     $xoopsTpl->assign('lang_info', _US_INFOGENE);     $xoopsTpl->assign('lang_note', _US_NOTE);     $xoopsTpl->assign('lang_vote', _US_VOTE);     $xoopsTpl->assign('lang_hits', _US_HITS);     $xoopsTpl->assign('lang_potet', _US_POTET);     $xoopsTpl->assign('lang_potert', _US_POTERT);     $xoopsTpl->assign('lang_friendst', _US_FRIENDST);     $xoopsTpl->assign('lang_lfriendst', _US_LFRIENDST);     $xoopsTpl->assign('lang_mbloked', _US_MBLOCKED);     $xoopsTpl->assign('lang_lblockedt', _US_LBLOCKEDT);     $xoopsTpl->assign('lang_poput', _US_POPUT);     $xoopsTpl->assign('lang_etde', _US_ETDE);     $xoopsTpl->assign('lang_membres', _US_MEMBRES);     $xoopsTpl->assign('lang_added', _US_ADDED);     $xoopsTpl->assign('lang_addedme', _US_ADDEDME);         $xoopsTpl->assign('user_uname', $thisUser->getVar('uname'));            // RECUPERATION DE LA NOTE ET DES VOTES $voteresult5 = $xoopsDB->query("select rating FROM ".$xoopsDB->prefix("mypote_votedata")." WHERE uid = $uid"); $totalvoter = $xoopsDB->getRowsNum($voteresult5); $totalrating = 0;     while(list($rating)=$xoopsDB->fetchRow($voteresult5)){         $totalrating += $rating;     }     if ($totalvoter == 0) {   $finalrating = 0;   } else {     $finalrating = $totalrating/$totalvoter;     }         $xoopsTpl->assign('user_note', number_format($finalrating,0));                 $xoopsTpl->assign('user_vote', $totalvoter);  // RECUPERATION DU NOMBRE DE VISITEURS $voteresult6 = $xoopsDB->query("select hits FROM ".$xoopsDB->prefix("mypote_visit")." WHERE uid = $uid");    $totalhits = 0;     while(list($hits)=$xoopsDB->fetchRow($voteresult6)){         $totalhits += $hits;     }         $xoopsTpl->assign('user_hits', $totalhits);             // RECUPERATION DU NOMBRE DE MES POTES       $voteresult7 = $xoopsDB->query("select * FROM ".$xoopsDB->prefix("mypote")." WHERE friend=$uid AND status=2 AND blocked=0"); $totalipote = $xoopsDB->getRowsNum($voteresult7);         $xoopsTpl->assign('user_potet', $totalipote);                // RECUPERATION DU NOMBRE DE MES FLASHER       $voteresult8 = $xoopsDB->query("select * FROM ".$xoopsDB->prefix("mypote")." WHERE friendid=$uid AND status=2 AND blocked=0"); $totalpoteme = $xoopsDB->getRowsNum($voteresult8);         $xoopsTpl->assign('user_potert', $totalpoteme);               // RECUPERATION DU NOMBRE DE MES AMIS      $voteresult9 = $xoopsDB->query("select * FROM ".$xoopsDB->prefix("mypote")." WHERE friend=$uid AND status=1 AND blocked=0");   $totalfuid = $xoopsDB->getRowsNum($voteresult9);         $xoopsTpl->assign('user_friendst', $totalfuid);                // RECUPERATION DU NOMBRE DE CEUX DE QUI JE SUIS L AMI      $voteresult10 = $xoopsDB->query("select * FROM ".$xoopsDB->prefix("mypote")." WHERE friendid=$uid AND status=1 AND blocked=0 "); $totaluidf = $xoopsDB->getRowsNum($voteresult10);         $xoopsTpl->assign('user_lfriendst', $totaluidf);             // RECUPERATION DU NOMBRE DE PERSONNES QUE J AI BLOQUER      $voteresult11 = $xoopsDB->query("select * FROM ".$xoopsDB->prefix("mypote")." WHERE friend=$uid AND blocked=1 ");   $totalblocked = $xoopsDB->getRowsNum($voteresult11);         $xoopsTpl->assign('user_mbloked', $totalblocked);                // RECUPERATION DU NOMBRE DE PERSONNES QUI MON BLOQUER      $voteresult12 = $xoopsDB->query("SELECT * FROM ".$xoopsDB->prefix("mypote")." WHERE friendid=$uid AND blocked=1 ");  $totalblockedme = $xoopsDB->getRowsNum($voteresult12);       $xoopsTpl->assign('user_lblockedt', $totalblockedme);                     // RECUPERATION DE L INDICE DE POPULARITE    $poput = $totaluidf + $totalpoteme - $totalblockedme;         $xoopsTpl->assign('user_poput', $poput);        if (is_object($xoopsUser)) { // UPDATE DES HITS ET VISITEURS       $ifexist = $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mypote_stats")." WHERE uid=$uid ");     list($exist) = $xoopsDB->fetchRow($ifexist);             if ($exist == 1)    {              $xoopsDB->queryF("UPDATE ".$xoopsDB->prefix("mypote_stats")." SET note=$finalrating, pop=$poput, visit=$totalhits WHERE uid=$uid ");           } else {       $xoopsDB->queryF("INSERT INTO ".$xoopsDB->prefix("mypote_stats")." (uid, note, pop, visit) VALUES ($uid, $finalrating, $poput, $totalhits)");       }    $datetime = time(); $sql4 = $xoopsDB->query("SELECT * FROM ".$xoopsDB->prefix("mypote_visit")." WHERE uid = $uid AND visitor = $surferuid"); $check1 = $xoopsDB->fetchArray($sql4);   $checkvisitor = $check1["visitor"];            if ($checkvisitor == $surferuid) {     $xoopsDB->queryF("UPDATE ".$xoopsDB->prefix("mypote_visit")." SET last_visit = $datetime , hits = hits + 1 where uid = $uid AND visitor = $surferuid");       } else {     $xoopsDB->queryF("INSERT INTO ".$xoopsDB->prefix("mypote_visit")." (uid, visitor, last_visit ) VALUES ($uid, $surferuid ,$datetime)");     }         }          // FIN HACK MYPOTE ///////////////////////////////////////////////


- Editer le fichier language/french/user.php et ajouter ce code
// DEBUT HACK MYPOTE define('_US_MYPOTE','Mes potes'); define('_US_SYPOTE','Ses potes'); define('_US_MYFRIEND','Mes ami(e)s'); define('_US_SYFRIEND','Ses ami(e)s'); define('_US_MYBLIST','Ma black liste'); define('_US_SYBLIST','Sa black liste'); define('_US_MYVISIT','Mes derniers visiteurs'); define('_US_SYVISIT','Ses derniers visiteurs'); define('_US_INFOGENE','Informations generales'); define('_US_NOTE','La note de'); define('_US_VOTE','membres ont votés pour'); define('_US_HITS','visiteurs on vu le profil de'); define('_US_POTET','a flashé sur'); define('_US_POTERT','ont flashés sur'); define('_US_FRIENDST','membres a sa liste d'ami(e)s'); define('_US_LFRIENDST','a leur liste d'ami(e)s'); define('_US_MBLOCKED','a black lister'); define('_US_LBLOCKEDT','membres ont black lister'); define('_US_POPUT','L'indice de popularité de'); define('_US_ETDE','est de'); define('_US_MEMBRES','membres'); define('_US_ADDEDME','a ajouté'); define('_US_ADDED','on ajouté); // FIN HACK MYPOTE



MODIFICATION POUR PMLITE DE MPMANAGER

rajouter juste après global $xoopsUser;
$isblocked $xoopsDB->query("SELECT COUNT(*) FROM ".$xoopsDB->prefix("mypote")." WHERE friend=".intval($_POST['to_userid'])." AND friendid=".$xoopsUser->getVar('uid')." AND blocked='1' ");   list($countblocked) = $xoopsDB->fetchRow($isblocked);                  if ($countblocked != 0) { redirect_header("index.php",1,"Vous êtes bloqué"); }


- Fin -

 Date de proposition: 14/11/2009

 Proposé par: Cesagonchu

 Téléchargé 1489 fois

 Note: 10.0 (1 votes)

 Page d'accueil: ICI

 Dossier de langue FR: inclus

 Version: 3.0

 Taille du fichier: 101 [Ko]

 Plateforme: 2.0 | 2.2.x | 2.3.x | 2.4.x

 Langue: fr

 Developpeur: Eparcyl

 Licence: GPL

Les commentaires appartiennent à leurs auteurs. Nous ne sommes pas responsables de leur contenu.
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

39 Personne(s) en ligne (1 Personne(s) connectée(s) sur Téléchargements) | Utilisateur(s): 0 | Invité(s): 39 | Plus ...