Fork me on GitHub

Rapport de message :*
 

Re: Module de message

Titre du sujet : Re: Module de message
par blueteen sur 10/03/2006 17:16:43

J'ai modifié une valeur du premier code, pour agrandir la taille de la 3ème colonne.
Et voici le code, qui permet de limiter l'affichage aux 3 derniers PM envoyés. (tu verras dans le code, une simple variable à changer pour choisir combien de PM afficher)

global $xoopsUser;
global 
$xoopsConfig;
$xoopsOption['pagetype'] = "pmsg";
include_once 
XOOPS_ROOT_PATH."/language/".$xoopsConfig['language']."/pmsg.php";
include_once 
XOOPS_ROOT_PATH."/mainfile.php";

if (!
is_object($xoopsUser)) {
    
$errormessage _PM_SORRY."<br />"._PM_PLZREG."";
    
redirect_header(XOOPS_URL."/user.php",2,$errormessage);
} else {
    
$pm_handler =& xoops_gethandler('privmessage');
    
$pm_arr =& $pm_handler->getObjects(new Criteria('from_userid'$xoopsUser->getVar('uid')));
    echo 
"<table border='0' cellspacing='1' width='100%' class='outer'>n";
    
$total_messages count($pm_arr);
    if ( 
$total_messages == ) {
        echo 
"<tr><td class='even' align='center'>Aucun message envoyé</td></tr> ";
        
$display0;
    } else {
    echo 
"<tr align='center' valign='middle'><th>Non lu</th><th>"_PM_TO ."</th><th>"_PM_SUBJECT ."</th><th align='center'>"_PM_DATE ."</th></tr>n";
        
$display 1;
    }

$max_messages 0;
$mess_aff 3;//changer le chiffre par le nombre de messages que l'on veut afficher
if ($total_messages >$mess_aff
    {
    
$max_messages $total_messages-$mess_aff//
    
}

    for (
$i $max_messages$i $total_messages$i++) {

        if (
$pm_arr[$i]->getVar('read_msg') == 1) {
            echo 
"<td valign='top' width='5%' align='center'>&nbsp;</td>n";
        } else {
            echo 
"<td valign='top' width='5%' align='center'><img src=".XOOPS_URL."/images/read.gif' alt='"._PM_NOTREAD."' /></td>n";
        }

        
$postername XoopsUser::getUnameFromId($pm_arr[$i]->getVar("to_userid"));
        echo 
"<td valign='middle' width='10%'>";
        
// no need to show deleted users
        
if ($postername) {
            echo 
"<a href=".XOOPS_URL."/userinfo.php?uid=".$pm_arr[$i]->getVar("to_userid").">".$postername."</a>";
        } else {
            echo 
$xoopsConfig['anonymous'];
        }
        echo 
"</td>n";
        echo 
"<td valign='middle'>".$pm_arr[$i]->getVar("subject")."</td>";
        echo 
"<td valign='middle' align='center' width='30%'>".formatTimestamp($pm_arr[$i]->getVar("msg_time"))."</td></tr>";
    }
    echo 
"</table>";
}


Il me reste le tri à faire, pour placer le dernier envoi, en premier dans la liste.


Et voici ce que donnent ces 2 codes, en bloc central centré :

Open in new window
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

83 Personne(s) en ligne (59 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 83 | Plus ...