Changer le titre de l'onglet quand un message est posté sur la ChatBox - Dim 22 Avr - 15:13 Alerte dans l'onglet quand message sur la CB Pré-requis : accès au panneau d'administration. Version forum : tous. Difficulté : facile. Où : Onglet module >> rubrique HTML & JAVASCRIPT >> Gestion des codes Javascript Instruction.
- Sélectionner oui à la question : Activer la gestion des codes Javascript.
- Créer une nouveau javascript.
- Ajoutez le titre que vous voulez, par exemple : changer le titre de l'onglet quand message sur CB
- Sélectionner : sur toutes les pages si votre CB est en latéral, ou alors sur l'index si votre CB est sur l'index.
- Coller le code (ci-après).
- Enregistrez & voilà.
Code. - Code:
-
window.localStorage && $(window).load(function() { var chatbox_script = function() { var t_icon = window.top.$.find('link[rel="shortcut icon"]')[0]; var t_doc = window.top.document; var title = t_doc.title; var icon = t_icon.getAttribute('href'); var rep_title = '!! Nouveau message !! '+title; var rep_icon = 'http://illiweb.com/fa/fdf/al.ico'; $(window).on("focus", function(){ localStorage.cb_blurred='' }).on("blur", function(){ localStorage.cb_blurred=1; }); var overrided = Chatbox.prototype.refresh; Chatbox.prototype.refresh = function(data) { if (data.messages && data.messages.length) { var lm = data.messages.slice(-1)[0]; var last_message = lm.time+','+lm.action+','+lm.msg; if(this.last_message != last_message) { var user = $.grep(data.users, function(v){return v.id==chatbox.userId}); user = user.length ? user[0] : [{}]; if(this.last_message!==undefined) { if(lm.userId!=chatbox.userId && user.username!=lm.username) { if(localStorage.cb_blurred) (function(){ var blink = function(){ if(title == t_doc.title) { if(!localStorage.cb_blurred) return; var new_title = rep_title; var new_icon = rep_icon; } else { var new_title = title; var new_icon = icon; } t_doc.title = new_title; var new_t_icon = t_icon.cloneNode(true); new_t_icon.setAttribute('href', new_icon); var t_icon_parent = t_icon.parentNode; t_icon_parent.removeChild(t_icon); t_icon_parent.appendChild(new_t_icon); t_icon = new_t_icon; setTimeout(blink, 500); }; blink(); })(); } else { localStorage.cb_blurred=''; } } this.last_message = lm; } } overrided.call(this, data); }; }; var s=document.createElement('script');s.text="("+chatbox_script.toString()+")();";$('object[data^="/chatbox/index.forum"],iframe[src^="/chatbox/index.forum"]').each(function(){try{$(this.contentDocument||this.contentWindow.document).find("#chatbox").closest("html").find("head").first().each(function(){this.appendChild(s.cloneNode(true))})}catch(a){}}) }); une question ? Une instruction pas claire ? N'hésitez pas à répondre à ce sujet pour demander des éclaircissements. Arya | |