La solution
http://tonsite.com/user.php?op=logout ne marche pas.
Elle appelle user.php, mais comme userprofile est installé, le fichier /user.php de base dans xoops n'est pas appelé, c'est celui du module userprofile qui est appelé. Et comme userprofile n'est pas activé pour le groupe, aucune des foncions du userprofile/user.php ne fonctionne.
Tout ceci est très logique, remarque:
1) Userprofile étant installé, il shunte le ficher user.php de xoops. D'ailleurs, dans la barre d'url du navigateur, je vois apparaître la nouvelle url qui passe par /userprofile
2) User profile n'étant pas autorisé pour le groupe auquel appartient l'utilisateur, il ne donne pas droit à exécuter son user.php
J'ai même essayé ton truc en dupliquant /user.php et en changeant son nom et d'appeler dans la barre d'url /logoutuser.php?op=logout...
Même motif, même punition, ça renvoit sur profiles/user.php
Je crois que ce qu'il faudrait, c'est que le module userprofile permette un paramétrage plus fin de ses fonctions.
Mais je suis têtu, et même si je ne comprends pas grand chose en php, j'ai bricolé un logoutuser.php comme ça:
<?php
$xoopsOption['pagetype'] = 'user';
include 'mainfile.php';
{
$message = '';
$_SESSION = array();
session_destroy();
setcookie($xoopsConfig['usercookie'], 0, -1, '/', '', 0);
// clear entry from online users table
if (is_object($xoopsUser)) {
$online_handler =& xoops_gethandler('online');
$online_handler->destroy($xoopsUser->getVar('uid'));
}
$message = _US_LOGGEDOUT.'<br />'._US_THANKYOUFORVISIT;
redirect_header('index.php', 1, $message);
exit();
}
?>
Et quand on l'appelle, il déconnecte proprement.
Finalement, c'est pas l'appel à /user.php qui redirige sur /profiles/user.php, c'est l'appel à logout en paramètre. Enfin, c'est une piste d'explication.
Bon, je fais quoi pour le préfixe? Je ne veux pas le mettre à "résolu" tant qu'un plus velu que moi n'a pas validé mon idée... et je continue à penser que l'auteur de useprofiles nous rendrait service en améliorant les possibilités de paramétrage.
Buena noche companeros
Edit: Merci d'utiliser les balises adéquat pour afficher du coude source