Cette astuce permet de faire passer automatiquement les membres d'un groupe défini à un autre groupe défini au moment où son nombre de messages dépasse une valeur.
Ouvrez post.php
Cherchez :
// If the posting user is logged in, increment his/her post count
if (!$pun_user['is_guest'])
{
$low_prio = ($db_type == 'mysql') ? 'LOW_PRIORITY ' : '';
$db->query('UPDATE '.$low_prio.$db->prefix.'users SET num_posts=num_posts+1, last_post='.$now.' WHERE id='.$pun_user['id']) or error('Unable to update user', __FILE__, __LINE__, $db->error());
}
Remplacez par :
// If the posting user is logged in, increment his/her post count
if (!$pun_user['is_guest'])
{
$low_prio = ($db_type == 'mysql') ? 'LOW_PRIORITY ' : '';
$db->query('UPDATE '.$low_prio.$db->prefix.'users SET num_posts=num_posts+1, last_post='.$now.' WHERE id='.$pun_user['id']) or error('Unable to update user', __FILE__, __LINE__, $db->error());
if($pun_user['group_id'] == ANCIEN_GROUPE && $pun_user['num_posts'] + 1 >= NB_SEUIL)
$db->query('UPDATE '.$db->prefix.'users SET group_id = NOUVEAU_GROUPE WHERE id='.$pun_user['id']) or error('Unable to change user group', __FILE__, __LINE__, $db->error());
}
Et remplacez les constantes suivantes par les valeurs que vous souhaitez :
* ANCIEN_GROUPE : l'id du groupe avant changement
* NB_SEUIL : le nombre de messages auquel le changement doit s'effectuer
* NOUVEAU_GROUPE : l'id du nouveau groupe
Faites très attention au numéro de groupe que vous indiquez, en évitant par exemple de les faire passer automatiquement Modérateur, ou pire, Administrateur.