- MävenRâleuse (Admin)
- Informations : Très peu présente en ce moment
----
Viens papoter avec nous sur le discord
Messages : 4053
Utiliser les variables FA {USER....}, {FORUM....} partout sur le forum.
Mer 8 Avr 2020 - 18:05
Utiliser les variables FA {USER....}, {FORUM....} partout sur le forum.
Hello !
Nous étions beaucoup à nous servir de ce tutoriel proposé par Shadow pour utiliser les variables de forumactif dans les templates. SAUF que, bien que ça fonctionne toujours sur les pages HTML : ça n'est plus le cas dans les templates.
Nous avons donc remis le JS à jour et donc on vous re-partage ce tutoriel.
A quoi ça sert ?
Alors, très rapidement, ce tutoriel va servir à utiliser toutes les variables qu'on peut déjà utiliser dans nos messages, mais partout ailleurs (pages HTML, templates, etc...). Pour retrouver ces variables : clique ici
Mise en place
Alors, tout d'abord on va créer un javascript qu'on va appliquer à toutes les pages. Je le met à la suite, il s'agit du même script que Shadow avait partagé, mais en "corrigé".
- Code:
// Au chargement de la page
(function(){
// On déclare une variable b qui va récupérer le contenu de la page contenant toutes les variables et leurs contenu
if (window.ActiveXObject) var b = new ActiveXObject("Microsoft.XMLHTTP");
else window.XMLHttpRequest && (b = new XMLHttpRequest);
null != b && (b.onreadystatechange = function() {
if (4 == b.readyState && "undefined" === typeof var_fa_is_done) {
var_fa_is_done = 1;
// On déclare une variable d qui va nous servir de compteur
// On déclare une variable g qui est un tableau contenant les variables FA
var d, g = "FORUMURL FORUMURLINK FORUMNAME FORUMNAMELINK FORUMDESC FORUMBIRTHDAY FORUMAGE FORUMCOUNTFORUM FORUMCOUNTOPIC FORUMCOUNTPOST FORUMCOUNTUSER FORUMONLINEUSER FORUMONLINEDATE FORUMLASTUSER FORUMLASTUSERLINK USERNAME USERLINK USERBIRTHDAY USERAGE USERREGDATE USERLASTVISIT USERCOUNTPOST NOW NOWWITHTIME".split(" ");
// On parcourt l'intégralité de notre tableau de variables FA
for (d = 0; d < g.length; d++) {
// On déclare une variable h qui sera chaque variable chacune leur tour.
// On déclare une variable e qui va remplacer le texte précédent par la valeur de la variable qu'il va aller chercher dans la page qui regroupe toutes les valeurs
var h = g[d],
e = b.responseText.replace(RegExp('^[\\s\\S]+<li style="margin-bottom:5px;direction:ltr;text-align:left;"><strong>{' + h + "}</strong> : (.*?) <span style='direction:ltr'>(.*?)</span><br /></li>[\\s\\S]+$"), "$1");
// si le texte récupéré dans la variable b est différent de celui qu'on vient de "créer"
if (b.responseText != e) {
// Alors pour toutes les balises de notre page actuelle
for (var j = document.getElementsByTagName("*"), c = [], a = -1; ++a < j.length;){
// On crée une variable k qui va prendre toutes les balises une par une
// et deux variables l et f
var k = j[a], l, f;
// si la balise en cours d'étude a une classe
if(k.getAttribute("class")){
// Alors on récupère chaque classe dans un tableau
l=k.getAttribute("class").split(" ");
// pour toutes les classes récupérées
for ( f = 0; f < l.length; f++)
// Si la classe correspond à une des variables FA
if (l[f] == h) {
// Alors on envoit la valeur correspondant à la class
c.push(k);
break
}
}
}
//pour toutes les valeur de c (donc des variables trouvée) si on est dans un INPUT ou dans un TEXTAREA alors place le contenu dedans
for (a = -1; ++a != c.length;) "INPUT" == c[a].tagName || "TEXTAREA" == c[a].tagName ? c[a].value += e : c[a].innerHTML += e
}
}
}
}, b.open("GET", "/popup_help.forum?l=miscvars", !0), b.send(null))
})();
A ce stade, tu pourras utiliser le tout dans les templates. Pour l'utiliser dans une page HTML il faut importer le script avec ton URL de javascript :
- Code:
<script type="text/javascript" src="https://maven.forumactif.org/35657.js"></script>
Si tu modifie ton javascript, cette URL se modifiera, il faut la mettre à jour
Comment l'utiliser
Pour l'utilisation, c'est très simple, tu vas voir.
Il te suffit de mettre, en tant que classe dans une balise, le nom de la variable voulue. Par exemple :
- Code:
Tu es sur le compte : <span class="USERNAME"></span>
Tu peux le mettre dans n'importe quelle balise : strong, span, div, ... tout ce que tu veux.
Tu peux aussi mettre du texte dans ta balise, auquel cas la valeur de ta variable se collera à la fin de ta phrase :
- Code:
<span class="USERNAME"> Tu es sur le compte : </span>
Tu es sur le compte :
Tu peux aussi mettre plusieurs noms de variable à la suite dans la classe, séparée par un espace. Les valeurs se mettront les une à la suite des autres par contre.
- Code:
<span class="FORUMURLINK FORUMNAME"></span>
Tu trouveras l'ensemble des variable disponible sur la page : . Et plusieurs exemples d'utilisation sur cette page HTML : https://maven.forumactif.org/h33-test-variable
dont le code est :
- Code:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Test variables</title>
<script type="text/javascript" src="https://maven.forumactif.org/35657.js"></script>
</head>
<body>
<p>
Bonjour <span class="USERNAME"></span>, tu t'es inscrit le <span class="USERREGDATE"></span> et tu as <span class="USERCOUNTPOST"></span> message(s) o/.<br/><br/>
Voilà toutes les variables que tu peux utiliser :
<br /><br />
USERNAME : <span class="USERNAME"></span>
<br />
USERREGDATE : <span class="USERREGDATE"></span>
<br />
USERCOUNTPOST : <span class="USERCOUNTPOST"></span>
<br />
FORUMURL : <span class="FORUMURL"></span>
<br />
FORUMURLINK : <span class="FORUMURLINK"></span>
<br />
FORUMNAME : <span class="FORUMNAME"></span>
<br />
FORUMNAMELINK : <span class="FORUMNAMELINK"></span>
<br />
FORUMDESC : <span class="FORUMDESC"></span>
<br />
FORUMBIRTHDAY : <span class="FORUMBIRTHDAY"></span>
<br />
FORUMAGE : <span class="FORUMAGE"></span>
<br />
FORUMCOUNTFORUM : <span class="FORUMCOUNTFORUM"></span>
<br />
FORUMCOUNTOPIC : <span class="FORUMCOUNTOPIC"></span>
<br />
FORUMCOUNTPOST : <span class="FORUMCOUNTPOST"></span>
<br />
FORUMCOUNTUSER : <span class="FORUMCOUNTUSER"></span>
<br />
FORUMONLINEUSER : <span class="FORUMONLINEUSER"></span>
<br />
FORUMONLINEDATE : <span class="FORUMONLINEDATE"></span>
<br />
FORUMLASTUSER : <span class="FORUMLASTUSER"></span>
<br />
FORUMLASTUSERLINK : <span class="FORUMLASTUSERLINK"></span>
<br />
USERNAME : <span class="USERNAME"></span>
<br />
USERLINK : <span class="USERLINK"></span>
<br />
USERBIRTHDAY : <span class="USERBIRTHDAY"></span>
<br />
USERAGE : <span class="USERAGE"></span>
<br />
USERREGDATE : <span class="USERREGDATE"></span>
<br />
USERLASTVISIT : <span class="USERLASTVISIT"></span>
<br />
USERCOUNTPOST : <span class="USERCOUNTPOST"></span>
<br />
On peut également mettre du texte dans la balise, les variables s'ajouteront à la fin, <span class="FORUMCOUNTPOST">le nombre de message est de : </span>.
<br />
Voici maintenant un exemple de liste :
<ul>
<li class="FORUMAGE">Le forum compte ce nombre de journée : </li>
<li class="FORUMCOUNTFORUM">Il y a ce nombre de forum et/ou sous-forum : </li>
<li class="FORUMCOUNTOPIC">Il y a ce nombre de sujets : </li>
</ul>
Et pour bien finir, un exemple avec un champ texte qui prend comme valeur le pseudo de l'invité : <input type="text" class="USERNAME" />
</p>
</body>
</html>
Et voilà !
Si tu as des questions, n'hésite pas à les poser ou à nous contacter !
Permission de ce forum:
Vous pouvez répondre aux sujets dans ce forum
|
|