Boutons suivant et précédent pour la messagerie privée

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

  • 0

Tutoriel Boutons suivant et précédent pour la messagerie privée

Message par Shadow le Jeu 25 Juin 2015 - 11:44

Boutons suivant et précédent pour la messagerie privée

Ce tutoriel vous permet d'ajouter 2 "boutons" afin de passer d'un message privé à un autre sans avoir à repasser par la boîte de réception. Smile

Aperçu

Le javascript

Dirigez-vous dans:

Panneau d'administration Modules Gestion des codes Javascript

cliquez sur ajout Créer un nouveau javascript
puis remplissez le formulaire comme suit:
  • Titre: choisissez un titre qui soit explicite.
  • Placement: sur toutes les pages.
  • Code Javascript:

    Code:
    $(function(){
    var maxMP=50;/*2%/MP*/
    var a=["inbox","savebox"],b,dl=document.location.toString(),cc=1,cI=0,collect=[],SPP=false;
    var fpidP=function(dossier){var dossier=dossier,stop=stop||false;
    if(!stop)$.get("/privmsg?folder="+dossier+"&start="+cI,(function(dossier,d){
        var c,$d=$(d),i,l=dossier,$navMP=$("<div>",{id:"navMP"}),precedent,suivant;
        c=$("form[action^='/privmsg'] a[href^='/privmsg?folder="+l+"&mode=read&p=']",$d);
        if(!SPP){
    SPP=$("form[action^='/privmsg'] a[href*='&start=']",$d).length?parseInt(/&start=(\d+)/.exec($("a[href*='&start=']",$d)[0].href)[1]):50;
        }
        for(i=0;i<c.length;i++){
    collect[cI+i]=c[i];
    }
     for(i=0;i<collect.length;i++){
     if(collect[i].href.indexOf('&p='+pid)!=-1){
      if(i!==collect.length-1)$navMP.append($('<a>',{id:"navMP-precedent",href:collect[i+1].href,title:collect[i+1].textContent}));
      if(i!==0)$navMP.append($('<a>',{id:"navMP-suivant",href:collect[i-1].href,title:collect[i-1].textContent}));
      /*Evitons les requetes inutiles...*/
      stop=i<collect.length-1;
      break;
      };
     }
     cI+=SPP;cc++;
     if(cc<=Math.ceil(maxMP/SPP)&&!stop){fpidP(dossier);}
    $("#navMP").length?$("#navMP").html($navMP.html()):$("form[action^='/privmsg']").before($navMP);
         
      }).bind(null,dossier))};
    for(b in a){
     if(dl.indexOf("/privmsg\?folder="+a[b]+"&mode=read&p=")!=-1){
      var pid=/&p=(\d+)/.exec(dl)[1];
      fpidP(a[b]);
     }
    }
    });

N'oubliez pas de valider.

Warning Le code javascript est conçu pour être compatible avec toutes les versions (phpbb2/3-invision-punbb), si vous souhaitez décider par vous même où placer les boutons suivant et précédent il vous suffit d'éditer votre template "privmsgs_read_body" et d'y ajouter le code suivant où vous le désirez:

Code:
<div id="navMP"></div>

Warning L'affichage des boutons peut prendre plus ou moins de temps selon votre vitesse de connexion et la configuration du nombre de sujets par page de votre forum, plus le nombre de sujets par page est faible, plus le script sera obligé de faire des requêtes, plus il sera lent.
Vous pouvez vérifier la valeur du nombre de sujets par page ainsi:

Panneau d'administration Général Messages et Email Configuration Sujets Par Page

Le CSS

Panneau d'administration Affichage couleurs Feuille de style CSS

Ajoutez le code CSS suivant:

Code:
#navMP>a{
  display:inline-block;
  padding-left:10px;
  padding-right:10px;
  font-size:16px;
  line-height:16px;
  color:#eee;
  background:#BDC8D0;
  text-decoration:none !important;
  border:1px solid #aaa;
}
#navMP>a:hover{
  color:#fff;
  background:#CDD8E0;
  text-decoration:none !important;
}
#navMP-precedent{
  border-radius:8px 0 0 8px;
}
#navMP-suivant{
  float:right;
  border-radius:0 8px 8px 0;
}

#navMP-precedent::before{
  content:"Précédent"
}
#navMP-suivant::before{
  content:"Suivant"
}

Vous pouvez bien entendu modifier ce code à votre convenance.
Là aussi n'oubliez pas de valider.



Règles Générales du Forum - Le Staff de ForumActif
Questions & Réponses Fréquentes - Trucs & Astuces
Outils Fondateurs - Perte de Mot de Passe

Shadow
Adminactive
Adminactive

Féminin
Messages : 23799
Inscrit(e) le : 30/03/2007

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

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


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