Ajout de contacts non fonctionnel

Ajout de contacts non fonctionnel

par Matt Smith,
Nombre de réponses : 0

Bonjour,

Voici ma configuration de moodle :

J'ai remarqué quelques problèmes au niveau de la messagerie interne de moodle

  • Les utilisateurs ne peuvent pas ajouter de contacts à leur liste.
  • Les utilisateurs ne peuvent pas voir les conversation récentes.

Il n'y a pas d'erreurs dans les logs, ni dans la partie debug de moodle

Quand on essaye d'accéder à la page : https://<my site>/moodle-ent/message/index.php?viewing=search
Une fois la recherche terminé,  il y a un lien symbolisé par un "+" a droite de chaque utilisateur trouvé, qui permet de l'ajouter à la liste de contact. Ce lien pointe vers :
https://<my site>/moodle-ent/message/index.php?user1=159923&viewing=search&addcontact=108916&sesskey=lFnlDkRoUX

Quand on clique dessus, la page est rechargé mais le nouveau contacte n'apparait pas dans la liste.

J'ai cherché dans le code source et j'ai trouvé le fichier <moodle-root>/message/index.php, qui contient (line 46)

/message/index.php

//the same param as 1.9 and the param we have been logging. Use this parameter.
$user1id   = optional_param('user1', $USER->id, PARAM_INT);
//2.0 shipped using this param. Retaining it only for compatibility. It should be removed.
$user1id   = optional_param('user', $user1id, PARAM_INT);
 
//the same param as 1.9 and the param we have been logging. Use this parameter.
$user2id   = optional_param('user2', 0, PARAM_INT);
//The class send_form supplies the receiving user id as 'id'
$user2id   = optional_param('id', $user2id, PARAM_INT);
 
$addcontact     = optional_param('addcontact',     0, PARAM_INT);  // adding a contact
$removecontact  = optional_param('removecontact',  0, PARAM_INT);  // removing a contact
$blockcontact   = optional_param('blockcontact',   0, PARAM_INT);  // blocking a contact
$unblockcontact = optional_param('unblockcontact', 0, PARAM_INT);  // unblocking a contact

Comme on peut le voir, il y a une variable $addcontact, qui devrait prendre comme valeur $_GET["addcontact"] . Mais cette variable est toujours égale à 0 (vérifiée avec var_dump($addcontact) )

A la ligne 142 du fichier on peut voir :

/message/index.php

/// Process any contact maintenance requests there may be
if ($addcontact != 0 and confirm_sesskey()) {
die("coucou");
    add_to_log(SITEID, 'message', 'add contact', 'index.php?user1='.$addcontact.'&amp;user2='.$USER->id, $addcontact);
    message_add_contact($addcontact);
    redirect($CFG->wwwroot . '/message/index.php?viewing=contacts&id='.$addcontact);
}


Le die("coucou") vient de moi, et il ne se produit jamais. Ce qui sous entend que la condition est toujours fausse. ($addcontact = 0)

Y a-t-il un moyen de résoudre ce problème?

Merci

Moyenne des évaluations  -