Titre dans la notification de sujet suivi

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

  • 0

Astuce Titre dans la notification de sujet suivi

Message par Ea le Mer 27 Fév 2013 - 18:38

Titre dans la notification de sujet suivi


Pour une notification de réponse à un sujet suivi, on a une phrase " pseudo a écrit un message dans un sujet que vous suivez " :


Cette astuce permet de modifier la phrase afin de mettre le titre du sujet simplifié dedans :


Le titre du sujet est simplifié dans le sens où :

  • Il est mis en minuscule
  • Les caractères :

    • a, b, c, d, ..., x, y, z, 0, 1, 2, ..., 7, 8, 9, _ et espace sont conservés
    • é, à, ï, ç, ... sont remplacés par la lettre de base équivalente
    • - est remplacé par espace
    • autres sont ignorés

Mise en place

Il vous faut ajouter sur toutes les pages ( voir gestion des codes javascript ) ce script :

Code:
$(function(){

  var texte_milieu = " a posté dans ";
  var si_titre_vide = "ce sujet";

  if(typeof(compileNotif)!="function")return;var d=compileNotif;Toolbar.compileNotif=compileNotif=function(b){var a=d(b);if(b.text.type==FA.Notification.NOTIF_TOPIC_WATCH){var c=a.match(/^(.*) a écrit un message dans (<a href="\/t[0-9]+(p[0-9]+)?-([^#?"]*)[^"]+">)[^<]+<\/a>$/);c&&(b=c[1]+texte_milieu+c[2],a=c[4],a="topic"==a||/^[\s-]*$/.test(a)?si_titre_vide:a.replace(/-/g," ").replace(/(^\s+|\s+$)/g,""),a=b+a+"</a>")}return a}
 
});

Vous pouvez changer les paramètres :

  • " a posté dans " => texte entre le posteur et le lien du sujet
  • "ce sujet" => texte si il n'y a pas de titre simplifié du sujet


Page de notifications (Facultatif)

Pour avoir le même résultat sur la page de notification, vous pouvez ajouter sur toutes les pages ( voir gestion des codes javascript ) ce script :

Code:
location.pathname=="/profile" && location.search.indexOf("page_profil=notifications")!=-1 && $(function(){
 
  var texte_milieu = " a posté dans ";
  var si_titre_vide = "ce sujet";
 
  $('.table1 td:first-child,td.gen:first-child,.ipbtable td:first-child,.tcr .postdetails').each(function(){
    var a = $(this).html();
    var c = a.match(/^(.*) a écrit un message dans (<a href="\/t[0-9]+(p[0-9]+)?-([^#?"]*)[^"]+">)[^<]+<\/a>$/);
    c&&(b=c[1]+texte_milieu+c[2],a=c[4],a="topic"==a||/^[\s-]*$/.test(a)?si_titre_vide:a.replace(/-/g," ").replace(/(^\s+|\s+$)/g,""),$(this).html(b+a+"</a>"))
  });
 
});


Ea
Aidactif
Aidactif

Messages : 23417
Inscrit(e) le : 04/04/2008

Ea 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