Limiter le nombre de messages que peuvent voir les invités

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

fascicularia
avatar
Administrateur

Messagefascicularia

  • 16px
  • 24px
  • Zoom
Salut Invité,
Voici un script qui permet de limiter le nombre de messages que les invités peuvent voir.

Si comme moi vous en avez marre d'avoir des membres qui visitent le forum sans se connecter ou d'habituels visiteurs qui prennent le forum pour un livre ouvert, ce script va les encourager à se connecter ou à s'enregistrer.

A placer dans la gestion des javascripts sur index

Code:
//############ ZONE EDITABLE ############
    var maxNumTopicsReadAsGuest = 5;
    var mensajeHTML = "<div><h3>Message à l'intention des invités</h3>Bonjour,<br><br>Le nombre de visualisations en tant qu'invité est atteinte. <br><br><a href='/register'>Enregistrez vous</a> ou connectez vous  pour avoir accès à l'ensemble du forum.</div>";
    //############ FIN ZONE EDITABLE ########
   
    var varname = "FA_TOPICREADGUEST";
    $(function () {
    if (!fa_estaConectado_()) {
    if (fa_getNumTopicsReadAsGuest() >= maxNumTopicsReadAsGuest) {
    $("td.bodyline>div#page-body>div#content-container, div#main-content").html(mensajeHTML);
    } else {
    fa_incrementTopicReadAsGuest();
    }
    }
    });
   
    function fa_incrementTopicReadAsGuest() {
    if (typeof (Storage) !== "undefined") {
    if (localStorage.getItem("'" + varname + "'")) {
    var numreads = localStorage["'" + varname + "'"];
    numreads = (parseInt(numreads) + 1).toString();
    localStorage["'" + varname + "'"] = numreads;
    } else {
    localStorage["'" + varname + "'"] = "1";
    }
    } else {
    if (my_getcookie(varname)) {
    var numreads = my_getcookie(varname);
    numreads = (parseInt(numreads) + 1).toString();
    my_setcookie(varname, numreads, 1, 0);
    } else {
    my_setcookie(varname, "1", 1, 0);
    }
    }
    }
   
    function fa_getNumTopicsReadAsGuest() {
    if (typeof (Storage) !== "undefined") {
    return parseInt(localStorage["'" + varname + "'"] == "undefined" ? 0 : localStorage["'" + varname + "'"]);
    } else {
    return parseInt(my_getcookie(varname) == "undefined" ? 0 : my_getcookie(varname) == "undefined");
    }
    }
   
    function fa_estaConectado_() {
    if (typeof _userdata == "undefined") {
    if ($("a#logout.mainmenu").length) {
    return true;
    } else {
    return false;
    }
    } else {
    return _userdata["session_logged_in"] == 1;
    }
    }

La partie à modifier

Code:
var maxNumTopicsReadAsGuest = 5;
Gére le nombre de messages visualisables ; ici 5

   
Code:
var mensajeHTML = "<div><h3>Message à l'intention des invités</h3>Bonjour,<br><br>Le nombre de visualisations en tant qu'invité est atteinte. <br><br><a href='/register'>Enregistrez vous</a> ou connectez vous  pour avoir accès à l'ensemble du forum.</div>";
Gére la phrase qui apparaitra lorsque le nombre de topics visaulisés est atteint.

Ps : script trouvé sur le support d'aide espagnol de FA



Administrateur des forums



Milouze14
avatar
Fondateur

MessageMilouze14

  • 16px
  • 24px
  • Zoom
super merci Stéphane ,
un script bien pratique hinhin .




-Le respect de nos semblables est la règle de notre conduite.-

Fondateur des forums



Tony L
avatar
Membre

MessageTony L

  • 16px
  • 24px
  • Zoom
Bonjour à tous coucou

Ce code est très intéressant.. J'ai aussi des personnes qui se targuent de "Consommer" le forum .. fumedunez
Par contre je ne voudrais pas priver les invités de certaines rubriques plutôt générales et pour le bien être de leurs oiseaux. Mais utiliser ce code sur les rubriques plus spécialisés.

Est-il possible donc de l'appliquer que sur des rubriques en particuliers svp, en les spécifiant dans le code ?

Ou il faut peut-être poser la question dans la rubrique entraide, dans ce cas désolé de la poser ici timidesortdutrou

Merci  MDR
fascicularia
avatar
Administrateur

Messagefascicularia

  • 16px
  • 24px
  • Zoom
Bonjour Tony, 
il faut déposer une demande d'aide dans la partie entraide.



Administrateur des forums



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

Créer un compte ou se connecter pour répondre

Vous devez être membre pour répondre.

S'enregistrer

Rejoignez notre communauté ! C'est facile !


S'enregistrer

Connexion

Vous êtes déjà membre ? Aucun soucis, cliquez ici pour vous connecter.


Connexion

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