Limité la feuille de personnage à un groupe.

3 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Limité la feuille de personnage à un groupe.

Message par Zackiel Lun 9 Mar 2015 - 10:59

Détails techniques


Version du forum : phpBB2
Poste occupé : Administrateur
Navigateur(s) concerné(s) : Google Chrome
Personnes concernées par le problème : Moi uniquement
Lien du forum : (lien masqué, vous devez poster pour le voir)

Description du problème

Bonjour à toutes et à tous,

Je n'ai pas trouvé de catégorie ou casé cette question, après une recherche infructueuse je n'ai pas trouvé de solution à ma question dans les archives.

J'aimerais tout simplement savoir si il est possible de limiter la génération de la feuille de personnage a un certain groupe d'utilisateur.

Par exemple, sur notre forum, nous avons un groupe invisble nommé "Rôliste" qui n'est attribué qu'après que les membres ai fait leurs présentations RP.
J'aimerais donc que mes membres puissent généré leurs feuilles de personnages qu'une fois qu'ils sont dans le groupe "Rôliste".

Est-ce possible ?

Cordialement


Dernière édition par Zackiel le Jeu 12 Mar 2015 - 14:27, édité 1 fois
avatar

Zackiel
Nouveau membre

Messages : 8
Inscrit(e) le : 09/03/2015

http://communautexcub.forumactif.org/
Zackiel a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par [Nihil] Lun 9 Mar 2015 - 12:53

C'est possible en javascript je pense Smile

Voici ce que l'on pourrait faire :

1 - On détecte si on est sur une page de feuille de personnage
2 - Si oui, on regarde si la feuille de personnage est déjà générée ou non.
3 - Si la feuille n'est pas encore générée, on va regarder dans quel groupe est le membre
4 - S'il est dans le groupe autorisé, on laisse le bouton, sinon on l'enlève. On peut même mettre un petit message à la place si tu veux Smile

Par contre, c'est du javascript, ça veut dire qu'un utilisateur peut toujours tricher pour créer sa feuille de personnage, grâce aux outils de développement de son navigateur ou encore en désactivant le javascript... Mais ce sont des cas assez rares au final je pense Smile

Est ce que cela t'intéresserait ? Est ce que tu as un profil simple ou bien avancé ( Utilisateurs & Groupes > Utilisateurs > Profils > Options Générales) ?
[Nihil]

[Nihil]
Membre habitué

Messages : 1215
Inscrit(e) le : 10/12/2009

https://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par Zackiel Mar 10 Mar 2015 - 1:24

Oui effectivement, cela m’intéresserait !

Effectivement, j'utilise un profil avancé.
avatar

Zackiel
Nouveau membre

Messages : 8
Inscrit(e) le : 09/03/2015

http://communautexcub.forumactif.org/
Zackiel a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par [Nihil] Mar 10 Mar 2015 - 12:44

Hello Smile

Voici un code javascript à rajouter sur ton forum :
Code:
$(function(){ 
    /* on regarde si on est dans la page d'édition de la feuille de personnage */
    if(document.location.pathname == "/rpg_sheet_edit"){   
      /* selecteur du bouton de création d'une feuille RP*/
        $form = $("form[action*='generate']");
     
        /* on regarde s'il y a le bouton de création d'une feuille RP */
        if($form.length < 1) return;
       
        $form.hide();
       
        /* on regarde si la personne qui regarde la page fait partie du groupe autorisé */
        $.get("/g31959-aidactifs-aidactives", function(data){
            /* on regarde s'il y a un bouton "se désinscrire" ou "mettre à jour"*/
            if ($("input[name='unsub'], input[name='groupstatus']", data).length > 0) {
                /* si oui, on réaffiche le bouton */
                $form.show();
            } else {
                /* si non, on affiche un message */
                $form.closest(".gen").html("Il faut faire partie du groupe RP pour avoir une feuille de personnage !");
            }
           
        });
    }
});


Il faut créer un nouveau javascript (Modules > HTML & JAVASCRIPT > Gestion des codes Javascript), lui donner un nom clair et cocher "sur toutes les pages".

Ensuite il y a un endroit à modifier, ce code là :
Code:
/g31959-aidactifs-aidactives

Cela correspond à l'adresse de la page "groupe" avec la liste des membres dans le groupe.
Ici c'est celle là https://forum.forumactif.com/g31959-aidactifs-aidactives
Si tu ne comprends pas, copie / colle moi l'adresse de la page du groupe en question, je te montre quelle partie il faut garder ♥

Dis moi si ça fonctionne bien Smile (il va falloir que tu crées un compte de test qui n'est pas dans le groupe en question pour pouvoir vérifier que ça fonctionne bien je pense)


Dernière édition par [Nihil] le Mer 11 Mar 2015 - 23:47, édité 2 fois (Raison : Correction erreur JS)
[Nihil]

[Nihil]
Membre habitué

Messages : 1215
Inscrit(e) le : 10/12/2009

https://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par SweetGumiho Mar 10 Mar 2015 - 14:03

Comme cette fonctionnalité m'intéressait bien également et que je suis aussi sous version phpBB3, je me greffe à cette demande.

Alors du coup j'ai testé et quelque chose me gêne assez : l'onglet concerné apparaît toujours pour les membres non-autorisés (ne faisant pas partie du groupe invisible "Joueurs", qui sont les membres validés).

Limité la feuille de personnage à un groupe. SyVFyTM

Lorsque l'on clique sur cet onglet la fenêtre d'informations apparaît toujours, semblable à d'habitude et seules les boutons "Oui" et "Non" ont disparu.

Limité la feuille de personnage à un groupe. 9R0tMWc

Ne serait-il pas plutôt possible de faire carrément disparaître cet onglet ?

Merci d'avance pour vos réponses. Smile
SweetGumiho

SweetGumiho
****

Féminin
Messages : 410
Inscrit(e) le : 11/10/2014

http://theworldafter.forumactif.com/
SweetGumiho a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par [Nihil] Mar 10 Mar 2015 - 14:25

Je n'ai pas du tout testé le code pour phpbb3, donc totalement aucune idée du rendu dessus Smile
Comme le code n'est pas le même au niveau des sélecteurs, le fonctionnement du remplacement de texte n'est pas le même :p
Pour phpbb3, je crois qu'il faut remplacer :
Code:
$form.closest(".gen")

Par :
Code:
$form.closest(".inner")

Pour masquer l'onglet je n'ai pas prévu le code pour, on peut le faire aussi si ça t'intéresse, il faut juste rajouter du code en plus. (^-^)


Dernière édition par [Nihil] le Mar 10 Mar 2015 - 14:28, édité 3 fois (Raison : Précision code phpbb3)
[Nihil]

[Nihil]
Membre habitué

Messages : 1215
Inscrit(e) le : 10/12/2009

https://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par SweetGumiho Mar 10 Mar 2015 - 14:33

Oui, cela m'intéresse, merci bien. Smile

PS : J'avais vu que Zachiel était en phpBB3 dans son profil mais je n'avais pas fait attention que sa demande était pour du phpBB2 du coup. ^^;
SweetGumiho

SweetGumiho
****

Féminin
Messages : 410
Inscrit(e) le : 11/10/2014

http://theworldafter.forumactif.com/
SweetGumiho a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par [Nihil] Mar 10 Mar 2015 - 17:53

Du coup SweetGumiho, si dans le code que je propose pour pour phphbb2, tu fais la modification pour phpbb3 que j'ai indiquée, est ce que déjà le remplacement de texte se fait mieux ?
[Nihil]

[Nihil]
Membre habitué

Messages : 1215
Inscrit(e) le : 10/12/2009

https://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par SweetGumiho Mar 10 Mar 2015 - 20:09

"Il faut faire parti du groupe RP pour avoir une feuille de personnage !" C'est partie avec un "e". Un parti c'est un parti politique, un parti pris, etc. Razz

Sinon oui ça peut aussi marcher juste comme ça. J'ai changé la phrase pour la personnaliser. ^^

EDIT : Par contre j'ai remarqué que pendant une fraction de seconde cela affichait l'ancien message. Et j'aimerais que la police soit plus grande et le texte centré. Merci. Wink
SweetGumiho

SweetGumiho
****

Féminin
Messages : 410
Inscrit(e) le : 11/10/2014

http://theworldafter.forumactif.com/
SweetGumiho a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par [Nihil] Mar 10 Mar 2015 - 20:30

Merci pour la faute, en temps normal je vérifie car j'ai toujours un doute, mais j'ai fait le code en ajoutant très vite une fausse phrase en speed Smile

SweetGumiho a écrit:Par contre j'ai remarqué que pendant une fraction de seconde cela affichait l'ancien message.
Effectivement, c'est le temps où on charge la page du groupe pour vérifier si le membre a le droit où non de voir le bouton. Cela dépend de la vitesse de connexion internet. Plus elle est lente, plus le laps de temps pendant lequel l'ancien message s'affiche sera long
On peut le modifier, mais dans ce cas là les membres qui ont le droit de générer leur feuille de RP verront eux aussi le contenu apparaitre après une fraction de seconde. Il faut choisir entre les 2. (^-^)

Pour modifier le style il faut remplacer :
Code:
html("Il faut faire partie du groupe RP pour avoir une feuille de personnage !");

Par :
Code:
html("<div class='mess-feuille-rp'>MESSAGE ICI</div>");

Et ensuite ajouter dans ton CSS :
Code:
.mess-feuille-rp {
    font-size: 14px;
    text-align: center;
}

C'est mieux comme ça Smile ?
[Nihil]

[Nihil]
Membre habitué

Messages : 1215
Inscrit(e) le : 10/12/2009

https://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par SweetGumiho Mar 10 Mar 2015 - 22:31

Merci énormément. C'est parfait. Problème résolu pour moi. Smile
SweetGumiho

SweetGumiho
****

Féminin
Messages : 410
Inscrit(e) le : 11/10/2014

http://theworldafter.forumactif.com/
SweetGumiho a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par Zackiel Mar 10 Mar 2015 - 22:33

Bonjour, merci de votre réponse rapide ! ( Et désolé pour la confusion avec la version du forum, mais effectivement je suis bien en phpBB 2)

Je testerais le code demain et je te dirais si ça marche !
avatar

Zackiel
Nouveau membre

Messages : 8
Inscrit(e) le : 09/03/2015

http://communautexcub.forumactif.org/
Zackiel a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par Zackiel Mar 10 Mar 2015 - 23:03

Ok parfait, cela marche parfaitement ! (Petit bémole, les joueurs sont obligés de se déconnecter et de se reconnecter avant de voir l'option modifiée ).

Autre petite question, dans le texte modifiable est-il possible de mettre un lien, et de les envoyer ainsi vers une autre page ?
avatar

Zackiel
Nouveau membre

Messages : 8
Inscrit(e) le : 09/03/2015

http://communautexcub.forumactif.org/
Zackiel a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par SweetGumiho Mer 11 Mar 2015 - 9:47

[Nihil] a écrit:Pour modifier le style il faut remplacer :
Code:
html("Il faut faire partie du groupe RP pour avoir une feuille de personnage !");

Par :
Code:
html("<div class='mess-feuille-rp'>MESSAGE ICI</div>");

Et ensuite ajouter dans ton CSS :
Code:
.mess-feuille-rp {
    font-size: 14px;
    text-align: center;
}
Et dans MESSAGE ICI tu entoures la partie de ton message concernée par <a href="URL">MESSAGE</a> (remplacer URL par le lien vers la page), tout simplement. Wink
SweetGumiho

SweetGumiho
****

Féminin
Messages : 410
Inscrit(e) le : 11/10/2014

http://theworldafter.forumactif.com/
SweetGumiho a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Limité la feuille de personnage à un groupe.

Message par [Nihil] Mer 11 Mar 2015 - 10:15

Petite précision, il faut faire très attention aux " et ' Smile

Sinon, cela va causer des erreurs javascript. (^-^)

Si tu mets un lien ici, il faut l'entourer en utilisant des apostrophes simples, ou bien mettre \ devant les "

Je récapitule, soit tu mets juste des apostrophes Smile :
Code:
html("TEXTE <a href='URL'>MESSAGE DU LIEN</a> SUITE TEXTE");

Ou alors tu mets un \ devant les ' :
Code:
html("TEXTE <a href=\"URL\">MESSAGE DU LIEN</a> SUITE TEXTE");
[Nihil]

[Nihil]
Membre habitué

Messages : 1215
Inscrit(e) le : 10/12/2009

https://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par SweetGumiho Mer 11 Mar 2015 - 10:16

Ah d'accord, très bien merci. Smile
SweetGumiho

SweetGumiho
****

Féminin
Messages : 410
Inscrit(e) le : 11/10/2014

http://theworldafter.forumactif.com/
SweetGumiho a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par Zackiel Mer 11 Mar 2015 - 22:52

Bon, alors j'ai quelques problèmes : Même quand le joueur est dans le groupe, le message s'affiche : il ne peux pas générer sa feuille de personnage . J'ai fais quelques modifs sur le code pour essayé de débugé, mais sans succès. Voici le code :

Code:
  /* on regarde si la personne qui regarde la page fait partie du groupe autorisé */
        $.get("/g31959-aidactifs-aidactives", function(data){
            /* on regarde s'il y a un bouton "se désinscrire" ou "mettre à jour"*/
            if ($("input[name='unsub'], input[name='groupstatus']", data).length > 1) {
                /* si oui, on réaffiche le bouton */
                $form.show();
            } else {
                /* si non, on affiche un message */
                $form.closest(".gen").html("Merci de faire votre <a href='http://communautexcub.forumactif.org/t309-modele-fiche-de-presentation'>Présentation RP</a> afin de pouvoir générer votre feuille de personnage.");
            }
         
        });
    }
});


Dernière édition par Zackiel le Mer 11 Mar 2015 - 23:32, édité 1 fois
avatar

Zackiel
Nouveau membre

Messages : 8
Inscrit(e) le : 09/03/2015

http://communautexcub.forumactif.org/
Zackiel a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par [Nihil] Mer 11 Mar 2015 - 23:12

Coucou Zackiel Smile

Pourrais tu s'il te plait copier / coller l'intégralité du code ? Il manque le début je crois :p.

As tu bien pensé à remplacer /g31959-aidactifs-aidactives par l'adresse de ton groupe aussi ? (^-^)
Si tu ne comprends pas, copie / colle moi l'adresse de la page du groupe en question, je te montre quelle partie il faut garder ♥
[Nihil]

[Nihil]
Membre habitué

Messages : 1215
Inscrit(e) le : 10/12/2009

https://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par Zackiel Mer 11 Mar 2015 - 23:36

Code:
$(function(){
    /* on regarde si on est dans la page d'édition de la feuille de personnage */
    if(document.location.pathname == "/rpg_sheet_edit"){ 
      /* selecteur du bouton de création d'une feuille RP*/
        $form = $("form[action*='generate']");
   
        /* on regarde s'il y a le bouton de création d'une feuille RP */
        if($form.length < 1) return;
     
        $form.hide();
     
        /* on regarde si la personne qui regarde la page fait partie du groupe autorisé */
        $.get("/g7-roliste", function(data){
            /* on regarde s'il y a un bouton "se désinscrire" ou "mettre à jour"*/
            if ($("input[name='unsub'], input[name='groupstatus']", data).length > 1) {
                /* si oui, on réaffiche le bouton */
                $form.show();
            } else {
                /* si non, on affiche un message */
                $form.closest(".gen").html("Merci de faire votre <a href='http://communautexcub.forumactif.org/t309-modele-fiche-de-presentation'>Présentation RP</a> afin de pouvoir générer votre feuille de personnage.");
            }
         
        });
    }
});
avatar

Zackiel
Nouveau membre

Messages : 8
Inscrit(e) le : 09/03/2015

http://communautexcub.forumactif.org/
Zackiel a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par [Nihil] Mer 11 Mar 2015 - 23:46

Oups, j'ai fait une erreur !

A cet endroit là :
Code:
if ($("input[name='unsub'], input[name='groupstatus']", data).length > 1)

Il faut remplacer par ceci :
Code:
if ($("input[name='unsub'], input[name='groupstatus']", data).length > 0)
[Nihil]

[Nihil]
Membre habitué

Messages : 1215
Inscrit(e) le : 10/12/2009

https://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Limité la feuille de personnage à un groupe.

Message par Zackiel Mer 11 Mar 2015 - 23:56

Oui ça maaaaarche ! Very Happy

Merci beaucoup à toi et de tes réponses rapides !

(Par contre hier c'était vraiment bizarre parce que ça a marché pendant un moment, alors que le code était le même )

Encore mille fois merci. ^^
avatar

Zackiel
Nouveau membre

Messages : 8
Inscrit(e) le : 09/03/2015

http://communautexcub.forumactif.org/
Zackiel a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum