personalisation chatbox

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

Résolu personalisation chatbox

Message par NousDeux(Admin) le Ven 3 Oct 2014 - 11:18

Bonjour tout le monde je viens de mettre en place sur mon forum une chat box personnalisé qui se déploie au-dessus de la bannière pour ne pas gêner le forum jusque là pas de problème. Mais je voudrais pousser un peu plus loin.

voici le script que j'utilise:

jQuery(document).ready(function () {
jQuery('body').append('<table style="position: fixed; bottom: 50px; left: 0px;background-color: #ffffff;z-index:10000;"><tr><td><div id="panneau" scrolling="no" style="width: 800px; height: 400px; display: none;" marginwidth="0" marginheight="0" frameborder="0"><iframe src="/chatbox/index.forum?page=front" style="width: 800px; height: 400px;" ></iframe></div></td><td style="vertical-align: bottom;"><img src="https://i81.servimg.com/u/f81/11/21/85/73/ouvrir10.png" onClick="document.getElementById(\'panneau\').style.display=(this.src==\'https://i39.servimg.com/u/f39/18/15/71/61/sans_t10.png\')?\'block\':\'none\';this.src=(this.src==\'https://i39.servimg.com/u/f39/18/15/71/61/sans_t10.png\')?\'https://i81.servimg.com/u/f81/11/21/85/73/fermer10.png\':\'https://i39.servimg.com/u/f39/18/15/71/61/sans_t10.png';"/></td></tr></table>');
});



j'aurai plusieurs questions:

1 - est-il possible de faire un coulissement progressif plus esthétique ?

2 - est-il possible de barder la chatbox ouverte pendant la navigation ?

3 - est-il possible de positionner la commande d'ouverture dans la barre d'outils ?

4 - et le plus important je voudrais que l'image d'ouverture de la chatbox soit différente s'il y a quelqu'un de connecté ou pas


Dernière édition par NousDeux(Admin) le Ven 3 Oct 2014 - 17:47, édité 1 fois

NousDeux(Admin)
***

Messages : 120
Inscrit(e) le : 14/05/2013

http://plaisir-croisiere.forumactif.org/
NousDeux(Admin) a été remercié(e) par l'auteur de ce sujet.

Résolu Re: personalisation chatbox

Message par NousDeux(Admin) le Ven 3 Oct 2014 - 11:31




NousDeux(Admin)
***

Messages : 120
Inscrit(e) le : 14/05/2013

http://plaisir-croisiere.forumactif.org/
NousDeux(Admin) a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: personalisation chatbox

Message par NousDeux(Admin) le Ven 3 Oct 2014 - 17:42

Voilà âpres avoir recherche sur le forum j'ai crée un script en concaténant et modifiant trois scripts présents sur le forum.

résultat :

Chatbox rétractable, icône personnalisée, icône changeante si quelqu'un est connecté, connections automatique en ouvrant la chatbox, notification sonore d'arrivé de nouveaux messages, notification dans le titre de la page.

voici le script :

Code:
// ---------------------------------- Chatbox coulissante --------------------------------------------------

document.write("        <table style=\"position: fixed; top: 40px; left: 20px;background-color: #;z-index:10000;\"><tr><td><iframe src=\"\/chatbox\/index.forum?archives=1\" id=\"chatboxpop\" scrolling=\"no\" style=\"width: 900px; height: 250px; display: none;\" marginwidth=\"0\" marginheight=\"0\" frameborder=\"2\"><\/iframe><\/td><\/tr><tr><td style=\"float:left\"><img src=\"http://i39.servimg.com/u/f39/18/15/71/61/opench13.png\" onClick=\"document.getElementById('chatboxpop').style.display=(this.src!='http://i39.servimg.com/u/f39/18/15/71/61/croix_10.png')?'block':'none';this.src=(this.src!='http://i39.servimg.com/u/f39/18/15/71/61/croix_10.png')?'http://i39.servimg.com/u/f39/18/15/71/61/croix_10.png':'http://i39.servimg.com/u/f39/18/15/71/61/opench13.png';\" id=\"cb-image\" \/><\/td><\/tr><\/table>");
document.write("        <script>");
document.write("        function check_newmessage(){var b=$(cb.chatbox_messages_old).find(\"span.user-msg\").parent();var a=b.length==0?\"\":b.eq(b.length-1).html();jQuery(\"#cb-image\").attr(\"src\")==\"http://i39.servimg.com/u/f39/18/15/71/61/opench13.png\"&&typeof(old_lm)!=\"undefined\"&&a!=old_lm&&a!=\"\"&&jQuery(\"#cb-image\").attr(\"src\",\"http://i39.servimg.com/u/f39/18/15/71/61/onchat10.gif\");old_lm=a}jQuery(window).load(function(){cb=jQuery(\"#chatboxpop\")[0].contentWindow;if(!cb.connected)cb.CB_disconnect();setInterval(\"if(!cb.connected)cb.CB_disconnect();setTimeout('check_newmessage()',500)\",2500)});");
document.write("        <\/script>");


// ---------------------------------- Notification sonore -----------------------------------------------------

navigator.appName!="Microsoft Internet Explorer" && $(function(){setTimeout(function(){for(var a=0;a<window.frames.length;a++)try{window.frames[a].location.pathname=="/chatbox/index.forum"&&window.frames[a].$.getScript("http://aska.123.st/13624.js")}catch(b){}},1500)});

// ---------------------------------- Notification par changement de titre ----------------------------------

                      $(function() {
                                  setTimeout(function() {
                                    for(var c = 0, a = 0;a < window.frames.length;a++) {
                                      try {
                                        "/chatbox/index.forum" == eval("window.frames[a].location.pathname") && ++c && window.frames[a].eval('function ajax_refresh_chatbox(b,c){if(""==b||void 0==b)b="?achives=0";if(window.XMLHttpRequest)var a=new XMLHttpRequest;else window.ActiveXObject&&(a=new ActiveXObject("Microsoft.XMLHTTP"));a.onreadystatechange=function(){if(4==a.readyState&&200==a.status&&(eval(a.responseText),chatbox_last_update>chatbox_updated||c))null!=document.getElementById("chatbox").innerHTML&&chatbox_messages_old!=chatbox_messages&&(my_setcookie("CNM",1,1,0)        ,$("body").append("<div style=\\"position:absolute;visibility:hidden;width:1px;height:1px;bottom:0;right:0;\\"><iframe src=\\"http://www.youtube.com/embed/tYSndzlTKZg?autoplay=1&rel=0\\"></iframe></div>"),chatbox_messages_old=document.getElementById("chatbox").innerHTML=chatbox_messages,document.getElementById("chatbox").scrollTop=document.getElementById("chatbox").scrollHeight+document.getElementById("chatbox").offsetHeight,document.getElementById("chatbox").scrollTop=999999),null!=document.getElementById("chatbox_members").innerHTML&&(document.getElementById("chatbox_members").innerHTML=chatbox_memberlist),chatbox_updated=chatbox_last_update};a.open("GET","/chatbox/chatbox_actions.forum"+b+"&mode=refresh",!0);a.send(null)};$(window).focus(function(){my_setcookie("CHF",1,1,0);my_setcookie("CNM","",0,0)}).blur(function(){my_setcookie("CHF","",0,0);my_setcookie("CNM","",0,0)}).trigger("focus");')
                                      }catch(d) {
                                      }
                                    }
                                    0 < c && function() {
                                      $(window).focus(function() {
                                        my_setcookie("CHF", 1, 1, 0);
                                        my_setcookie("CNM", "", 0, 0)
                                      }).blur(function() {
                                        my_setcookie("CHF", "", 0, 0);
                                        my_setcookie("CNM", "", 0, 0)
                                      }).trigger("focus");
                                      var a = document.title, b = function() {
                                        !my_getcookie("CHF") && my_getcookie("CNM") ? (document.title = a == document.title ? "!! Nouveau message !!" : a, setTimeout(b, 300)) : (document.title = a, setTimeout(b, 5E3))
                                      };
                                      b()
                                    }()
                                  }, 5E3)
                                });




        window.localStorage && $(function() {
                  var a = JSON.parse(localStorage.getItem("chatboxNotify"));
                  if($("meta[http-equiv='refresh'][content]:first").length && a) {
                    var b = $("span.gen a[href^='/t']").attr("href");
                    document.referrer == a[0] && b && $.post("/chatbox/chatbox_actions.forum", {mode:"send", sent:"/me " + ("reply" == a[1] ? "a r\u00e9pondu au sujet " : "a cr\u00e9\u00e9 le sujet ") + "[url=http://tinyurl.com/vision-net" + b + "]" + a[2] + "[/url]"});
                    localStorage.removeItem("chatboxNotify")
                  }
                  $("form[name='post']").length && /^reply|newtopic$/.test(document.post.mode.value) && $(document.post).submit(function() {
                    localStorage.setItem("chatboxNotify", JSON.stringify([document.location.href.replace(/^(.*?)#.*$/, "$1"), document.post.mode.value, ($("a.nav:last[href^='/t']") || $("h1.cattitle")).text() || document.post.subject && document.post.subject.value || "ici"]))
                  })
                });


le tout à ajouter dans la gestion des codes javascript, sur l'index, Sur l'index, Sur le portail, Sur les sous-forums Sur les sujets.

NousDeux(Admin)
***

Messages : 120
Inscrit(e) le : 14/05/2013

http://plaisir-croisiere.forumactif.org/
NousDeux(Admin) 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