Header

Partagez | 

[forumactif]Afficher un message particulier suivant le statut de l'Internaute

Message Sujet: [forumactif]Afficher un message particulier suivant le statut de l'Internaute   Mer 13 Oct - 15:04

avatar

Mes clubs


En savoir plus
Mes clubs extra-scolaires:

Miettes

Doyenne
Bons Points (BP) : 233
Voir le profil de l'utilisateur
Hello Smile

Dans ce tuto, nous allons voir comment afficher un message suivant que l'Internaute est inscrit et connecté sur le forum ou non Smile

Attention, ce tutoriel est un peu long ;)Courage Very Happy

Pour ce tuto, vous devez avoir accès aux templates de votre forum


Tout d'abord, il faut savoir que ce code ne marche pas pour votre message d'en-tête (vous savez celui que vous afficher quand vous allez dans PA >> Affichage >> Page d'accueil >> Généralité, cela ne fonctionne que dans les templates.

Pour cet exemple (et explication) nous allons mettre un simple message de bienvenue.

Préparation du texte



>> Si le membre est connecté, on affichera :
Citation :
Salut {pseudo}, nous sommes ravis de te retrouver sur {nom du forum}, d'autant plus que ta dernière visite date de {date}
Pour cela, nous allons donc avoir besoin des variables pseudo, nom du forum et dernière connexion, c'est à dire :
Code:
{USERNAME}, {FORUMNAME}, {USERLASTVISIT}
Néanmoins, pour pouvoir les utiliser correctement dans notre template nous allons devoir ajouter :

-> un petit script : pour cela, créez une nouvelle page javascript et appelez la "variable". On va tout cocher "Sur toutes les pages" et on va y copier/coller ceci

Code:
(function(){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;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(" ");
for(d=0;d<g.length;d++){var h=g[d],e=b.responseText.replace(RegExp('^.+<li style="margin-bottom:5px;direction:ltr;text-align:left;"><strong>{'+h+"}</strong> : (.*?)&nbsp;<span style='direction:ltr'>(.*?)</span><br /></li>.+$"),"$1");if(b.responseText!=e){for(var j=document.getElementsByTagName("*")||document.all,c=[],a=-1;++a<j.length;)for(var k=j[a],l=k.className.split(" "),f=0;f<l.length;f++)if(l[f]==h){c.push(k);break}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))})();
-> présenter ses variables dans des class de span.

Nous allons donc avoir un code html qui ressemble à ça :

Code:
<p>Salut <span class="USERNAME"></span>, nous sommes ravis de te retrouver sur <span class="FORUMNAME"></span>, d'autant plus que ta dernière visite date de <span class="USERLASTVISIT"></span></p>
>> Si le membre n'est pas connecté ou non inscrit sur le forum, on affichera

Citation :
Salut et bienvenue sur {nom du forum} !
Si tu n'es pas encore inscrit sur le forum, n'hésite pas à le faire en cliquant [ici] !
Si en revanche, tu es déjà un de nos habitués, identifie toi rapidement en cliquant [là] !
Quoi qu'il en soit, à très vite !
Ici, on va donc utiliser de nouveau la variable indiquant le nom du forum, ainsi que 2 liens : un menant vers les inscriptions, un autre vers le module de connexion. Ce qui nous donne :

Code:
<p>Salut et bienvenue sur <span class="FORUMNAME"></span> !

Si tu n'es pas encore inscrit sur le forum, n'hésite pas à le faire en cliquant [<a href="http://www.school-of-pub.net/profile.forum?mode=register">ici</a>] !

Si en revanche, tu es déjà un de nos habitués, identifie toi rapidement en cliquant [<a href="http://www.school-of-pub.net/login.forum?connexion">là</a>] !

Quoi qu'il en soit, à très vite !</p>

Différencions les statuts



Pour afficher notre texte suivant le statut de l'Internaute, voici 2 codes à retenir :

>> Pour afficher le texte destiné au membre connecté, on utilisera ceci :

Code:
<!-- BEGIN switch_user_logged_in -->Le texte<!-- END switch_user_logged_in -->
>> Pour afficher le texte destiné au membre non connecté ou non inscrit, on utilisera ceci :

Code:
<!-- BEGIN switch_user_logged_out -->Le texte<!-- END switch_user_logged_out -->
Du coup, si on rassemble le tout, on aura ça :

* Membre connecté

Code:
<!-- BEGIN switch_user_logged_in --><p>Salut <span class="USERNAME"></span>, nous sommes ravis de te retrouver sur <span class="FORUMNAME"></span>, d'autant plus que ta dernière visite date de <span class="USERLASTVISIT"></span></p><!-- END switch_user_logged_in -->
* Membre non connecté ou non inscrit

Code:
<!-- BEGIN switch_user_logged_out --><p>Salut et bienvenue sur <span class="FORUMNAME"></span> !

Si tu n'es pas encore inscrit sur le forum, n'hésite pas à le faire en cliquant [<a href="http://www.school-of-pub.net/profile.forum?mode=register">ici</a>] !

Si en revanche, tu es déjà un de nos habitués, identifie toi rapidement en cliquant [<a href="http://www.school-of-pub.net/login.forum?connexion">là</a>] !

Quoi qu'il en soit, à très vite !</p><!-- END switch_user_logged_out -->

Jouons avec les templates



Pour utiliser nos codes, nous allons travailler dans le template suivant index_body

Avant de modifier votre template, n'hésitez pas à l'enregistrer sur votre pc au cas où vous chambouleriez tout Wink



Tout d'abord, repérons où nous allons placer notre texte. Je pense que le meilleur endroit est sous la barre de nav', avant la chatbox (si elle est en haut du forum), avant le message d'en-tête et avant le forum non ?

Pour cela, repérez ce code :

Code:
{CHATBOX_TOP}
{BOARD_INDEX}
Et copier coller juste avant le chatbox_top les 2 codes que nous avons précédemment écrit.

Code:

<!-- BEGIN switch_user_logged_in --><p>Salut <span class="USERNAME"></span>, nous sommes ravis de te retrouver sur <span class="FORUMNAME"></span>, d'autant plus que ta dernière visite date de <span class="USERLASTVISIT"></span></p><!-- END switch_user_logged_in -->

<!-- BEGIN switch_user_logged_out --><p>Salut et bienvenue sur <span class="FORUMNAME"></span> !

Si tu n'es pas encore inscrit sur le forum, n'hésite pas à le faire en cliquant [<a href="http://www.school-of-pub.net/profile.forum?mode=register">ici</a>] !

Si en revanche, tu es déjà un de nos habitués, identifie toi rapidement en cliquant [<a href="http://www.school-of-pub.net/login.forum?connexion">là</a>] !

Quoi qu'il en soit, à très vite !</p><!-- END switch_user_logged_out -->

{CHATBOX_TOP}
{BOARD_INDEX}
Enregistrer et n'oubliez pas de cliquer sur publier

Et voilà le résultat :

>> Connecté :


>> Non connecté :


Il ne vous reste plus qu'à ajouter un peu de css pour une jolie mise en page, et le tour est joué Wink




Si vous avez des questions, n'hésitez pas Smile




Vous rencontrez un souci avec ce tutoriel ? Venez poser votre question [ici].

Idea N'oubliez pas de lire et de suivre les [règles de la section].

Je soussignée, Miettes,  accepte qu'un directeur reposte le tutoriel "[forumactif]Afficher un message particulier suivant le statut de l'Internaute" tel que je l'ai rédigé.


Dernière édition par Miettes le Lun 4 Juil - 11:13, édité 4 fois
Revenir en haut Aller en bas
[forumactif]Afficher un message particulier suivant le statut de l'Internaute
Page 1 sur 1
 Sujets similaires
-
» Liens vers un message particulier d'un sujet
» décochage :ne plus afficher ce message
» comment-afficher-un-message-au-nouveau-membre-des-sa-connection
» Comment afficher le titre du sujet du dernier message
» Afficher le titre du dernier sujet
Réponse rapide

School of Progress :: La bibliothèque :: Tutoriels :: Informatique :: Codage+

Qui est en ligne ?

SoP en quelques chiffres

Nos étudiants ont posté un total de @messages@ messages.

Nous avons @membres_enregistres@ étudiants inscrits dans l’école.

Le dernier dossier validé est celui de @dernier_membre@.

@@membres_anniversaire_aujourdhui?@membres_anniversaire_aujourdhui=Il/Elle fête son anniversaire aujourd'hui : @membres_anniversaire_aujourdhui$&@$Ils fêtent leur anniversaire aujourd'hui : @membres_anniversaire_aujourdhui$, @@$Aucun membre ne fête son anniversaire aujourd'hui. @@

Ils étaient là hier

@derniers_membres_connectes$, @

Liste de présence

@membres_connectes$, @

La DirectionLes AssistantsLes SurveillantsLes ArtistesLes InspecteursLes PitresLes IntervenantsLes Doyens