Voilà, j'ai bien trouvé comment ajouter le type de personne et le déclarer dans les différents fichiers qui listent les types, mais j'ai quand même un problème de compréhension avec la fonctions des droits...
J'ai bien lu le
topic ouvert il y a quelques temps mais sans trop de succés.
Je veux pouvoir ajouter un type de membre "inférieur" (non, pas une jambe...) mais qui soit supérieur à l'invité puisqu'il peut se connecter. C'est un membre amoindri. En fait, dans la pratique, je veux pouvoir gérer deux types de membres sans qu'ils ne soient modos et grâce à l'administration, je donnerai moins de droits à MEMBREMIN qu'à MEMBRE.
La fonction droits est modifiée par le MOD Groupes mais je ne croies pas que ça joue beaucoup.
La partie qui me pose problème est la suivante (à la fin de la fonction) pour utiliser les droits définis dans l'administration :
if ( ( $forum_m[$droit_forum[$d]] == 2 && ( $droits['est_modo'] || $membre['membre_aut'] > MODO ) ) || ( $forum_m[$droit_forum[$d]] == 3 && $membre['membre_aut'] > MEMBRE ) )
{
$droits[$droit_forum[$d]] = TRUE;
}
else if ( $forum_m[$droit_forum[$d]] == 0 || ( $forum_m[$droit_forum[$d]] == 1 && $membre['membre_aut'] >= MEMBRE && $membre['membre_id'] != INVITE ) || ( $forum_m[$droit_forum[$d]] == 4 && $membre['membre_aut'] >= MODOSUP ) )
{
$droits[$droit_forum[$d]] = TRUE;
}
else
{
$droits[$droit_forum[$d]] = FALSE;
}
Ici, je ne comprends pas ce qu'on fait... Que contiennent les
$forum_m[$droit_forum[$d]] (pourquoi est-ce égal un coup à 2, un coup à 3, etc, que représentent ces valeurs ?)
Comment faire pour ajouter un rang entre invité et membre (la constante est MEMBREMIN), faut-il décaler les valeurs avant membre, modo, modosup et admin de +1 ?
J'ai bien évidemment décalé les valeurs des constantes dans le constantes.php et ajouté un type de personne dans variables_generales.php. MEMBRE se retrouve à 1 (alors qu'il était à 0) et MEMBREMIN se retrouve donc à 0 en remplacement de MEMBRE. Les types suivant sont décalés de 1.
Un p'tit peu d'explications ne seraient pas de refus.
Cordialement.