Astuces Forumactif
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Membres connectés récemment
Voir tous les membres

[PHPBB2] Chatbox dans la toolbar + Custom menu | Suite


2 participants

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

ThunderTB
ThunderTB
http://hockeyfederation.forumgratuit.org/forum

MessageThunderTB Lun 14 Sep 2020 - 14:26

  • Version du forum :
    PHPBB2
  • Templates modifiés :
    oui
  • Navigateur :
    Firefox
Salut mon cher Phil bon début de semaine , je viens te consulté aujourd'hui pour continuer
une demande que je tes fait il y as quelque jours au sujet d'incorporé les éléments de la toolbar dans
la menu bar du forum . J'aimerais y ajouter le lien de la chatbox si possible j'ai tenté de le faire mais
puisque je connais rien du tout au javascript je n'y suis pas parvenu .

Lien de l'astuce donné : https://www.milouze14.com/t32728-resoluphpbb2-toolbar-navbar-sticky

J'aimerais y mettre le lien de la chatbox juste après "Notifications"
Aperçu : https://snipboard.io/E86aUd.jpg

Lien de mon forum : https://qmhl.forum-canada.com/

P.s. Un gros merci en avance !!! Bonne journée .


Dernière édition par ThunderTB le Lun 14 Sep 2020 - 16:47, édité 1 fois
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Lun 14 Sep 2020 - 15:47

Hello Franck,
hum, tu as déjà un script pour ajouter ce que tu me montres (chatbox plus le nombre ),
tu peux le donner que je puisse l'adapter car ce n'est pas natif sur Forumactif clin oeil .
ThunderTB
ThunderTB
http://hockeyfederation.forumgratuit.org/forum

MessageThunderTB Lun 14 Sep 2020 - 15:53

RePhil ,

Html
Code:
        <!DOCTYPE html>
        <html>
        <head>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <style>
        body {
          font-family: Arial, Helvetica, sans-serif;
          margin: 0;
        }

        .header {
          background-color: #e9eaf2;
          text-align: center;
            padding-top: 5px;
        }

        #navbar {
          overflow: hidden;
          background-color: #333;
          z-index:998 !important;
        }

#navbar a {
    float: left;
    display: block;
    color: #f2f2f2;
    text-align: center;
    padding: 10px 16px;
        padding-top: 10px;
    text-decoration: none !important;
    font-size: 17px;
    padding-top: 18px;
}

        #navbar a:hover {
          background-color: #ddd;
          color: black;
        }

        #navbar a.active {
          background-color: #4CAF50;
          color: white;
        }

    .sticky {
      position: fixed;
      top: 0;
      width: 100%;
    }
     
        </style>
        </head>
        <body>

        <div class="header">
          <center><a href="https://qmhl.forum-canada.com/"><img src="https://i.servimg.com/u/f66/20/18/69/47/gmconn10.jpg" width="700" height="225"></center>
        </div>

        <div id="navbar">
          <a class="active" href="https://qmhl.forum-canada.com/">Acceuil</a>
          <a href="https://www.simulatedhockeymanager.ca/">Outil</a>
          <a href="https://qmhl.forum-canada.com/search">Recherche</a>
          <a href="https://qmhl.forum-canada.com/memberlist">Membres</a>
          <a href="https://qmhl.forum-canada.com/groups">Groupes</a>
          <a href="https://qmhl.forum-canada.com/profile?mode=editprofile">Profil</a>
          <a href="https://qmhl.forum-canada.com/privmsg?folder=inbox">Messagerie</a>         
          <span class="M14_recept-faLeft"></span>
          <span class="M14_recept-faRight"></span>
            </div>
      <script>
    window.onscroll = function() {myFunction()};

    var navbar = document.getElementById("navbar");
    var sticky = navbar.offsetTop;

    function myFunction() {
      if (window.pageYOffset >= sticky) {
        navbar.classList.add("sticky")
      } else {
        navbar.classList.remove("sticky");
      }
    }
    </script>

        </body>
        </html>
        <!DOCTYPE html>
        <html>
        <head>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <style>
        body {

        }

        .sidepanel  {
          width: 0;
          position:absolute;
          z-index: 2;
          height: 200px;
          top: 282px;
          left: 0;
          background-color: #333;
          overflow-x: hidden;
          transition: 0.9s;
          padding-top: 14px;
        }

        .sidepanel a {
          padding: 8px 8px 8px 32px;
          text-decoration: none;
          font-size: 25px;
          color: #818181;
          display: block;
          transition: 0.3s;
        }

        .sidepanel a:hover {
          color: #f1f1f1;
        }

        .sidepanel .closebtn {
          font-size: 20px;
          cursor: pointer;
          background-color: #;
          color: #ffffff;
          padding: 5px 10px;
          border: none;
          border-radius: 25px 25px 25px 25px;
        position: absolute;
        right: 32px;
        }

.openbtn {
    font-size: 20px;
    cursor: pointer;
    background-color: #4CAF50;
    color: #ffffff;
    padding: 6px 10px;
        padding-top: 6px;
    border: none;
    border-radius: 25px 25px 25px 25px;
    margin-top: -42px;
    position: absolute;
    right: 30px;
    padding-top: 3px;
}

        .openbtn:hover {
          background-color:#444;
        }
        </style>
        </head>
        <body>

        <div id="mySidepanel" class="sidepanel">
        <a href="javascript:void(0)" class="closebtn" onclick="closeNav()">x</a>
        <center><img src="http://hf.hockeyhq.net/HockeyFederation/Menu/CHAMPBANv20.png" style="z-index:1 !important;margin-top:-10px;"></center>
        </div>
        <button class="openbtn" onclick="openNav()">+</button>
        <script>
        function openNav() {
          document.getElementById("mySidepanel").style.width = "100%";
        }

        function closeNav() {
          document.getElementById("mySidepanel").style.width = "0";
        }
        </script>
     
        </body>
        </html>
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
              "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" id="min-width" lang="{L_LANG_HTML}"
            xml:lang="{L_LANG_HTML}" {NAMESPACE_FB_LIKE} {NAMESPACE_FB} {NAMESPACE_BBCODE}>
        <head>
          <title>{SITENAME_TITLE}{PAGE_TITLE}</title>
          <meta http-equiv="content-type" content="text/html; charset={S_CONTENT_ENCODING}"/>
          <meta http-equiv="content-script-type" content="text/javascript"/>
          <meta http-equiv="content-style-type" content="text/css"/>
          <!-- BEGIN switch_compat_meta -->
          <meta http-equiv="X-UA-Compatible" content="IE={switch_compat_meta.VERSION}"/>
          <!-- END switch_compat_meta -->
          <!-- BEGIN switch_canonical_url -->
          <link rel="canonical" href="{switch_canonical_url.CANONICAL_URL}"/>
          <!-- END switch_canonical_url -->
          {META_FAVICO}
          {META}
          {META_FB_LIKE}
          <meta name="title" content="{SITENAME_TITLE}{PAGE_TITLE}"/>
          {T_HEAD_STYLESHEET}
          {CSS}
          <link rel="search" type="application/opensearchdescription+xml" href="/improvedsearch.xml" title="{SITENAME}"/>
          <link rel="search" type="application/opensearchdescription+xml"
                href="{URL_BOARD_DIRECTORY}/search/improvedsearch.xml" title="{SEARCH_FORUMS}"/>
          <script src="{JQUERY_PATH}" type="text/javascript"></script>
          <!-- BEGIN switch_recent_jquery -->
          <script src="{JS_DIR}jquery1.9/jquery-migrate-1.4.1.js" type="text/javascript"></script>
          <script src="{JQUERY_DIR}browser/v1.0/jquery.browser.min.js" type="text/javascript"></script>
          <script src="{JQUERY_DIR}support/jquery.support.js" type="text/javascript"></script>
          <!-- END switch_recent_jquery -->
          <script src="{JS_DIR}{L_LANG}.js" type="text/javascript"></script>
          {RICH_SNIPPET_GOOGLE}

          <!-- BEGIN switch_fb_login -->
          <script src="https://connect.facebook.net/{switch_fb_login.FB_LOCAL}/all.js" type="text/javascript"></script>
          <script src="{switch_fb_login.JS_FB_LOGIN}" type="text/javascript"></script>
          <!-- END switch_fb_login -->

          <!-- BEGIN switch_ticker -->
          <link type="text/css" rel="stylesheet" href="{JQUERY_DIR}ticker/ticker.css"/>
          <script src="{JQUERY_DIR}/ticker/ticker.js" type="text/javascript"></script>
          <!-- END switch_ticker -->

          <!-- BEGIN switch_ticker_new -->
          <script src="{JQUERY_DIR}jcarousel/jquery.jcarousel.js" type="text/javascript"></script>
          <script type="text/javascript">//<![CDATA[
              /* Definir le sens de direction en fonction du panneau admin */
              var tickerDirParam = "{switch_ticker.DIRECTION}";
              var slid_vert = false;
              var auto_dir = 'next';
              var h_perso = parseInt({switch_ticker.HEIGHT});

              switch (tickerDirParam) {
                case 'top' :
                    slid_vert = true;
                    break;
                case 'left':
                    break;
                case 'bottom':
                    slid_vert = true;
                    auto_dir = 'prev';
                    break;
                case 'right':
                    auto_dir = 'prev';
                    break;
                default:
                    slid_vert = true;
              }

              $(document).ready(function () {
                var w_cont = $('#fa_ticker_container').width();

                if (w_cont > 0) {
                    $('#fa_ticker_container').width(w_cont);

                    /* Affichage de la liste */
                    $('#fa_ticker_content').css('display', 'block');

                    /* Calcul des dimensions du conteneur et des elements */
                    var width_max = $('ul#fa_ticker_content').width();
                    var width_item = Math.floor(width_max / {switch_ticker.SIZE});
                    var height_max = h_perso;

                    /* Calcul de la hauteur maximale du conteneur en fonction des elements et de la hauteur personnalisee dans l'admin */
                    $('ul#fa_ticker_content li').each(function () {
                      if ($(this).height() > height_max) {
                          height_max = $(this).height();
                      }
                    });

                    /* Redimensionnement des elements et des images trop larges */
                    $('ul#fa_ticker_content li').width(width_item).height(height_max).find('img').each(function () {
                      if ($(this).width() > width_item) {
                          var ratio = $(this).width() / width_item;
                          var new_height = Math.round($(this).height() / ratio);
                          $(this).height(new_height).width(width_item);
                      }
                    });

                    /* Redimensionnement et centrage du conteneur en mode vertical */
                    if (slid_vert) {
                      $('ul#fa_ticker_content').width(width_item).height(height_max).css('marginLeft', 'auto').css('marginRight', 'auto');
                    }

                    /* Initialisation du caroussel */
                    $('#fa_ticker_content').jcarousel({
                      vertical: slid_vert,
                      wrap: 'circular',
                      auto: {switch_ticker.STOP_TIME},
                      auto_direction: auto_dir,
                      scroll: 1,
                      size: {switch_ticker.SIZE},
                      height_max: height_max,
                      animation: {switch_ticker.SPEED}
                    });
                } else {
                    $('ul#fa_ticker_content li:not(:first)').css('display', 'none');
                    $('ul#fa_ticker_content li:first').css('list-style', 'none').css('text-align', 'center');
                }
              });
              //]]>
          </script>
          <!-- END switch_ticker_new -->

          <script type="text/javascript">//<![CDATA[
              $(document).ready(function () {
                <!-- BEGIN switch_enable_pm_popup -->
                pm = window.open('{U_PRIVATEMSGS_POPUP}', '_faprivmsg', 'HEIGHT=225,resizable=yes,WIDTH=400');
                if (pm != null) {
                    pm.focus();
                }
                <!-- END switch_enable_pm_popup -->
                <!-- BEGIN switch_report_popup -->
                report = window.open('{switch_report_popup.U_REPORT_POPUP}', '_phpbbreport', 'HEIGHT={switch_report_popup.S_HEIGHT},resizable=yes,scrollbars=no,WIDTH={switch_report_popup.S_WIDTH}');
                if (report != null) {
                    report.focus();
                }
                <!-- END switch_report_popup -->
                <!-- BEGIN switch_ticker -->
                $(document).ready(function () {
                    Ticker.start({
                      height: {switch_ticker.HEIGHT},
                      spacing: {switch_ticker.SPACING},
                      speed: {switch_ticker.SPEED},
                      direction: '{switch_ticker.DIRECTION}',
                      pause: {switch_ticker.STOP_TIME}
                    });
                });
                <!-- END switch_ticker -->
              });

              <!-- BEGIN switch_login_popup -->
              var logInPopUpLeft, logInPopUpTop, logInPopUpWidth = {LOGIN_POPUP_WIDTH},
                logInPopUpHeight = {LOGIN_POPUP_HEIGHT}, logInBackgroundResize = true, logInBackgroundClass = false;
              <!-- END switch_login_popup -->

              <!-- BEGIN switch_login_popup -->
              $(document).ready(function () {
                $(window).resize(function () {
                    var windowWidth = document.documentElement.clientWidth;
                    var popupWidth = $("#login_popup").width();
                    var mypopup = $("#login_popup");

                    $("#login_popup").css({
                      "left": windowWidth / 2 - popupWidth / 2
                    });
                });
              });
              <!-- END switch_login_popup -->
              //]]>
          </script>
          {GREETING_POPUP}
          <!-- BEGIN switch_ticker_new -->
          <style>
              .jcarousel-skin-tango .jcarousel-item {
                text-align: center;
                width: 10px;
              }

              .jcarousel-skin-tango .jcarousel-item-horizontal {
                margin-right: {switch_ticker.SPACING}px;
              }

              .jcarousel-skin-tango .jcarousel-item-vertical {
                margin-bottom: {switch_ticker.SPACING}px;
              }
          </style>
          <!-- END switch_ticker_new -->
          {HOSTING_JS}

          <!-- BEGIN google_analytics_code -->
          <script type="text/javascript">
              //<![CDATA[
              (function (i, s, o, g, r, a, m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
              (i[r].q=i[r].q||[]).push(arguments)}, i[r].l = 1 * new Date();
              a = s.createElement(o),
                m = s.getElementsByTagName(o)[0];
              a.async = 1;
              a.src = g;
              m.parentNode.insertBefore(a, m)
              })
              (window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
              ga('create', '{G_ANALYTICS_ID}', 'auto');
              ga('send', 'pageview');
              ga('set', 'anonymizeIp', true);

              <!-- BEGIN google_analytics_code_bis -->
              ga('create', '{G_ANALYTICS_ID_BIS}', 'auto', 'bis');
              ga('bis.send', 'pageview');
              ga('bis.set', 'anonymizeIp', true);
              <!-- END google_analytics_code_bis -->
              //]]>

          </script>
          <!-- END google_analytics_code -->

        </head>
        <body background="{T_BODY_BACKGROUND}" bgcolor="{T_BODY_BGCOLOR}" text="{T_BODY_TEXT}" link="{T_BODY_LINK}"
            vlink="{T_BODY_VLINK}">
        <!-- BEGIN hitskin_preview -->
        <div id="hitskin_preview" style="display: block;">
          <h1><img src="https://2img.net/i/fa/hitskin/hitskin_logo.png" alt=""/> <em>Hit</em>skin.com</h1>
          <div class="content">
              <p>
                {hitskin_preview.L_THEME_SITE_PREVIEW}
                <br/>
                <span>{hitskin_preview.U_INSTALL_THEME}<a
                          href="https://{hitskin_preview.U_RETURN_THEME}">{hitskin_preview.L_RETURN_THEME}</a></span>
              </p>
          </div>
        </div>
        <!-- END hitskin_preview -->

        <!-- BEGIN switch_login_popup -->
        <div id="login_popup" style="z-index: 10000 !important;">
          <table class="forumline" width="{LOGIN_POPUP_WIDTH}" height="{LOGIN_POPUP_HEIGHT}" border="0" cellspacing="1"
                cellpadding="0">
              <tr height="25">
                <td class="catLeft">
                    <span class="genmed module-title">{SITENAME}</span>
                </td>
              </tr>
              <tr height="{LOGIN_POPUP_MSG_HEIGHT}">
                <td class="row1" align="left" valign="top">
                    <div id="login_popup_buttons">
                      <form action="{S_LOGIN_ACTION}" method="get">
                          <input type="submit" class="mainoption" value="{L_LOGIN}"/>
                          <input type="button" class="mainoption" value="{L_REGISTER}"
                              onclick="parent.location='{U_REGISTER}';"/>
                          <input id="login_popup_close" type="button" class="button" value="{L_DONT_DISPLAY_AGAIN}"/>
                      </form>
                    </div>
                    <span class="genmed">{LOGIN_POPUP_MSG}</span>
                </td>
              </tr>
          </table>
        </div>
        <!-- END switch_login_popup -->

        <!-- BEGIN switch_like_popup -->
        <div id="like_popup" style="z-index: 10000 !important;">
          <table class="forumline" width="{LIKE_POPUP_WIDTH}" height="{LIKE_POPUP_HEIGHT}" border="0" cellspacing="1"
                cellpadding="0">
              <tr height="25">
                <td class="catLeft">
                    <span class="genmed module-title">{SITENAME}</span>
                </td>
              </tr>
              <tr height="{LIKE_POPUP_MSG_HEIGHT}">
                <td class="row1" align="left" valign="top">
                    <div id="like_popup_buttons">
                      <form action="{S_LOGIN_ACTION}" method="get">
                          <input type="submit" class="mainoption" value="{L_LOGIN}"/>
                          <input type="button" class="mainoption" value="{L_REGISTER}"
                              onclick="parent.location='{U_REGISTER}';"/>
                          <input id="like_popup_close" type="button" class="button" value="{L_LIKE_CLOSE}"/>
                      </form>
                    </div>
                    <span class="genmed">{LIKE_POPUP_MSG}</span>
                </td>
              </tr>
          </table>
        </div>
        <!-- END switch_like_popup -->

        <a name="top"></a>
        {JAVASCRIPT}

        <table class="bodylinewidth" width="{T_BODY_TABLE_WIDTH}" cellspacing="0" cellpadding="10" border="0" align="center">
          <tr>
              <td class="bodyline">
                <table width="100%" cellspacing="0" cellpadding="0" border="0">
                    <tr>
                      <!-- BEGIN switch_logo_left -->
                      <td><a href="{U_INDEX}"><img loading="lazy" src="{LOGO}" id="i_logo" border="0" alt="{L_INDEX}" vspace="1"/></a>
                      </td>
                      <!-- END switch_logo_left -->
                      <td align="center" width="100%" valign="middle">
                          <!-- BEGIN switch_logo_center -->
                          <a href="{U_INDEX}"><img loading="lazy" src="{LOGO}" id="i_logo" border="0" alt="{L_INDEX}" vspace="1"/></a>
                          <br/>
                          <!-- END switch_logo_center -->
                          <div class="maintitle">{MAIN_SITENAME}</div>
                          <br/>
                          <span class="gen">{SITE_DESCRIPTION}<br/>&nbsp; </span>
                      </td>
                      <!-- BEGIN switch_logo_right -->
                      <td><a href="{U_INDEX}"><img loading="lazy" src="{LOGO}" id="i_logo" border="0" alt="{L_INDEX}" vspace="1"/></a>
                      </td>
                      <!-- END switch_logo_right -->
                    </tr>
                </table>
                <div style="clear: both;"></div>

                <!-- BEGIN switch_ticker_new -->
                <div id="fa_ticker_block" style="margin-top:4px;margin-bottom:4px;">
                    <table width="100%" border="0" cellspacing="0" cellpadding="0" class="forumline">
                      <tr>
                          <td align="left" class="row1">
                            <div id="fa_ticker_container">
                                <ul id="fa_ticker_content" class="jcarousel-skin-tango" style="display:none;">
                                  <!-- BEGIN ticker_row -->
                                  <li>{switch_ticker.ticker_row.ELEMENT}</li>
                                  <!-- END ticker_row -->
                                </ul>
                            </div>
                          </td>
                      </tr>
                    </table>
                </div>
                <!-- END switch_ticker_new -->

                <!-- BEGIN switch_ticker -->
                <div id="fa_ticker_block" style="margin-top:4px;margin-bottom:4px;">
                    <table width="100%" border="0" cellspacing="0" cellpadding="0" class="forumline">
                      <tr>
                          <td align="left" class="row1">
                            <div id="fa_ticker_container">
                                <div id="fa_ticker" style="height:{switch_ticker.HEIGHT}px;">
                                  <div class="fa_ticker_content">
                                      <!-- BEGIN ticker_row -->
                                      <div>{switch_ticker.ticker_row.ELEMENT}</div>
                                      <!-- END ticker_row -->
                                  </div>
                                </div>
                            </div>
                          </td>
                      </tr>
                    </table>
                </div>
                <!-- END switch_ticker -->

                <div id="page-body">
                    <div id="{ID_CONTENT_CONTAINER}"{CLASS_CONTENT_CONTAINER}>
                      <table cellpadding="0" cellspacing="0" width="100%" class="three-col">
                          <tbody>
                          <tr>
                            <td valign="top" width="{C1SIZE}">
                                <div id="{ID_LEFT}">
                                  <!-- BEGIN giefmod_index1 -->
                                  {giefmod_index1.MODVAR}
                                  <!-- BEGIN saut -->
                                  <div style="height:{SPACE_ROW}px"></div>
                                  <!-- END saut -->
                                  <!-- END giefmod_index1 -->
                                </div>
                            </td>
                            <td valign="top" width="100%">
                                <!-- BEGIN html_validation -->
                            </td>
                          </tr>
                          </tbody>
                      </table>
                    </div>
                </div>
              </td>
          </tr>
        </table>
        </body>
        </html>
        <!-- END html_validation -->

Javascript pour l'astuce du lien chatbox dans la toolbar
Code:
(function() {
    if (!window.FA) window.FA = {};
    if (FA.Chat) {
        if (window.console) console.warn('FA.Chat has already been initialized');
        return;
    }

    FA.Chat = {

        // chatbox settings
        config: {
            height: '60%',
            width: '70%',

            live_notif: true,
            sound_notif: {
                enabled: true,
                file: 'https://illiweb.com/fa/fdf/zelda.mono.mp3'
            },
            notifRate: 10000
        },

        // language settings
        lang: {
            chatbox: 'Chatbox',
            new_msg: 'Un nouveau message a été posté sur la <a href="javascript:FA.Chat.toggle();">chatbox</a>.'
        },

        // technical data below
        node:{}, // node cache
        users: 0, // users in chat
        messages: 'initial', // total chat messages
        actif: false, // tells us if the chatbox is opened
        notifActif: false, // tells us if the notifications are active

        // initial setup of the chatbox
        init: function() {
            var right = document.getElementById('fa_right'),
                container = document.createElement('DIV'),
                button = document.createElement('A'),
                audio;

            button.id = 'fa_chat_button';
            button.innerHTML = FA.Chat.lang.chatbox + ' <span id="fa_chatters">(0)</span>';
            button.onclick = FA.Chat.toggle;
            FA.Chat.node.button = button;

            container.id = 'fa_chat_container';
            container.innerHTML = '<iframe id="fa_chat" src="/chatbox/index.forum"></iframe>';
            container.style.width = FA.Chat.config.width;
            container.style.height = FA.Chat.config.height;
            container.style.bottom = '-' + FA.Chat.config.height;
            container.style.visibility = 'hidden';

            if (right) {
                right.insertBefore(button, right.lastChild); // add the chat button to the right side of the toolbar
                document.body.appendChild(container);

                // create the notification audio element
                if (FA.Chat.config.sound_notif.enabled) {
                    audio = document.createElement('AUDIO');
                    audio.src = FA.Chat.config.sound_notif.file;
                    if (audio.canPlayType) {
                        FA.Chat.node.audio = audio;
                        document.body.appendChild(audio);
                    }
                }

                FA.Chat.node.container = document.getElementById('fa_chat_container');
                FA.Chat.node.chatters = document.getElementById('fa_chatters');
                FA.Chat.node.frame = document.getElementById('fa_chat');
                FA.Chat.node.frame.onload = FA.Chat.getFrame;
            }

            delete FA.Chat.init;
        },

        // get the frame window, document, and elements
        getFrame: function() {
            if (FA.Chat.poll) window.clearInterval(FA.Chat.poll);
            if (this.contentDocument || this.contentWindow) {
                FA.Chat.window = this.contentWindow;
                FA.Chat.document = this.contentDocument ? this.contentDocument : FA.Chat.window.document;

                FA.Chat.node.message = FA.Chat.document.getElementById('message');
                FA.Chat.node.members = FA.Chat.document.getElementById('chatbox_members');

                FA.Chat.poll = window.setInterval(FA.Chat.listen, 300); // listen for changes every 0.3 seconds
            }
        },

        // listen for changes in the chatbox
        listen: function() {
            var users = FA.Chat.node.members.getElementsByTagName('LI').length,
                messages = FA.Chat.window.chatbox.messages.length;

            // update user count
            if (users > FA.Chat.users || users < FA.Chat.users) {
                FA.Chat.users = users;
                FA.Chat.node.chatters.innerHTML = '(' + FA.Chat.users + ')';
            }

            // initial / active updates
            if ((FA.Chat.messages == 'initial' && messages) || FA.Chat.notifActif || FA.Chat.actif) FA.Chat.messages = messages;

            // notify new messages while connected and the chatbox is closed
            if (!FA.Chat.actif && !FA.Chat.notifActif && FA.Chat.window.chatbox.connected && (messages > FA.Chat.messages || messages < FA.Chat.messages)) {
                FA.Chat.messages = messages; // update message count
                FA.Chat.notifActif = true;

                if (FA.Chat.config.live_notif) FA.Chat.notify(FA.Chat.lang.new_msg); // show live notification
                if (FA.Chat.config.sound_notif.enabled && FA.Chat.node.audio) FA.Chat.node.audio.play(); // play sound notification

                // wait before notifying the user again
                window.setTimeout(function() {
                    FA.Chat.notifActif = false;
                }, FA.Chat.config.notifRate);
            }
        },

        // create a custom notification
        notify: function(msg) {

            var notif = document.createElement('DIV'),
                live = document.getElementById(Toolbar.LIVE_NOTIF);

            notif.className = 'fa_notification';
            notif.innerHTML = '<div class="content ellipsis">' + msg + '</div>';
            notif.style.display = 'none';

            $(notif).mouseover(function() {
                $(this).stop(true, true)
            });
            $(notif).mouseleave(function() {
                $(this).delay(5000).fadeOut()
            });

            live.insertBefore(notif, live.firstChild);
            $(notif.firstChild).dotdotdot();

            $(notif).fadeIn(100, function() {
                $(this).delay(10000).fadeOut()
            });
        },

        // toggle the display state of the chatbox
        toggle: function() {
            var container = FA.Chat.node.container.style;

            if (/hidden/i.test(container.visibility)) {
                FA.Chat.node.button.className = 'fa_chat_active';
                FA.Chat.actif = true;

                container.visibility = 'visible';
                container.bottom = '3px';

                // auto focus the message field
                window.setTimeout(function() {
                    FA.Chat.node.message.focus();
                }, 350); // some browsers ( firefox ) need a delay
            } else {
                FA.Chat.node.button.className = '';
                FA.Chat.actif = false;

                container.visibility = 'hidden';
                container.bottom = '-' + FA.Chat.config.height;
            }
        }

    };

    $(function() {
        // initialize the chat when the document is ready and the user is logged in
        if (_userdata.session_logged_in) $(FA.Chat.init);
    });
})();

Le script que tu m'avais installer
Code:
$(function(){$(function(){
var a=$('#fa_welcome');
var b=$('#fa_notifications');
$('.M14_recept-faLeft').append(a);
$('.M14_recept-faRight').append(b);});});
$(function(){if(_userdata["session_logged_in"])return;
  $(function(){
var a=$('#fa_right a.rightHeaderLink[href$="login"]');
var b=$('#fa_right a.rightHeaderLink[href$="register"]');
$('.M14_recept-faLeft').append(a);
$('.M14_recept-faRight').append(b);
  });});
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Lun 14 Sep 2020 - 16:09

Oki merci,

tu peux remplacer ton template par celui-ci Franck:
Code:
        <!DOCTYPE html>
        <html>
        <head>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <style>
        body {
          font-family: Arial, Helvetica, sans-serif;
          margin: 0;
        }

        .header {
          background-color: #e9eaf2;
          text-align: center;
            padding-top: 5px;
        }

        #navbar {
          overflow: hidden;
          background-color: #333;
          z-index:998 !important;
        }

        #navbar a {
          float: left;
          display: block;
          color: #f2f2f2;
          text-align: center;
          padding: 14px 16px;
          text-decoration: none;
          font-size: 17px;
        }

        #navbar a:hover {
          background-color: #ddd;
          color: black;
        }

        #navbar a.active {
          background-color: #4CAF50;
          color: white;
        }

    .sticky {
      position: fixed;
      top: 0;
      width: 100%;
    }
     
        </style>
        </head>
        <body>

        <div class="header">
          <center><a href="https://qmhl.forum-canada.com/"><img src="https://i.servimg.com/u/f66/20/18/69/47/gmconn10.jpg" width="700" height="225"></center>
        </div>

        <div id="navbar">
          <a class="active" href="https://qmhl.forum-canada.com/">Acceuil</a>
          <a href="https://www.simulatedhockeymanager.ca/">Outil</a>
          <a href="https://qmhl.forum-canada.com/search">Recherche</a>
          <a href="https://qmhl.forum-canada.com/memberlist">Membres</a>
          <a href="https://qmhl.forum-canada.com/groups">Groupes</a>
          <a href="https://qmhl.forum-canada.com/profile?mode=editprofile">Profil</a>
          <a href="https://qmhl.forum-canada.com/privmsg?folder=inbox">Messagerie</a>
          <a href="https://qmhl.forum-canada.com/login">Connexion</a>
          <a href="https://qmhl.forum-canada.com/login?logout">Déconnexion</a>
          <span class="M14_recept-faLeft"></span>
          <span class="M14_recept-faRight"></span>
          <div id="bar_chatbox"></div>
            </div>
      <script>
    window.onscroll = function() {myFunction()};

    var navbar = document.getElementById("navbar");
    var sticky = navbar.offsetTop;

    function myFunction() {
      if (window.pageYOffset >= sticky) {
        navbar.classList.add("sticky")
      } else {
        navbar.classList.remove("sticky");
      }
    }
    </script>

        </body>
        </html>
        <!DOCTYPE html>
        <html>
        <head>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <style>
        body {

        }

        .sidepanel  {
          width: 0;
          position:absolute;
          z-index: 1;
          height: 200px;
          top: 282px;
          left: 0;
          background-color: #333;
          overflow-x: hidden;
          transition: 0.9s;
          padding-top: 14px;
        }

        .sidepanel a {
          padding: 8px 8px 8px 32px;
          text-decoration: none;
          font-size: 25px;
          color: #818181;
          display: block;
          transition: 0.3s;
        }

        .sidepanel a:hover {
          color: #f1f1f1;
        }

        .sidepanel .closebtn {
          font-size: 20px;
          cursor: pointer;
          background-color: #;
          color: #ffffff;
          padding: 5px 10px;
          border: none;
          border-radius: 25px 25px 25px 25px;
        position: absolute;
        right: 32px;
        }

        .openbtn {
          font-size: 20px;
          cursor: pointer;
          background-color: #4CAF50;
          color: #ffffff;
          padding: 5px 10px;
          border: none;
          border-radius: 25px 25px 25px 25px;
          margin-top: -41px;
        position: absolute;
        right: 30px;
        }

        .openbtn:hover {
          background-color:#444;
        }
        </style>
        </head>
        <body>

        <div id="mySidepanel" class="sidepanel">
        <a href="javascript:void(0)" class="closebtn" onclick="closeNav()">x</a>
        <center><img src="http://hf.hockeyhq.net/HockeyFederation/Menu/CHAMPBANv20.png" style="margin-top:-10px;"></center>
        </div>
        <button class="openbtn" onclick="openNav()">+</button>
        <script>
        function openNav() {
          document.getElementById("mySidepanel").style.width = "100%";
        }

        function closeNav() {
          document.getElementById("mySidepanel").style.width = "0";
        }
        </script>
     
        </body>
        </html>
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
              "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" id="min-width" lang="{L_LANG_HTML}"
            xml:lang="{L_LANG_HTML}" {NAMESPACE_FB_LIKE} {NAMESPACE_FB} {NAMESPACE_BBCODE}>
        <head>
          <title>{SITENAME_TITLE}{PAGE_TITLE}</title>
          <meta http-equiv="content-type" content="text/html; charset={S_CONTENT_ENCODING}"/>
          <meta http-equiv="content-script-type" content="text/javascript"/>
          <meta http-equiv="content-style-type" content="text/css"/>
          <!-- BEGIN switch_compat_meta -->
          <meta http-equiv="X-UA-Compatible" content="IE={switch_compat_meta.VERSION}"/>
          <!-- END switch_compat_meta -->
          <!-- BEGIN switch_canonical_url -->
          <link rel="canonical" href="{switch_canonical_url.CANONICAL_URL}"/>
          <!-- END switch_canonical_url -->
          {META_FAVICO}
          {META}
          {META_FB_LIKE}
          <meta name="title" content="{SITENAME_TITLE}{PAGE_TITLE}"/>
          {T_HEAD_STYLESHEET}
          {CSS}
          <link rel="search" type="application/opensearchdescription+xml" href="/improvedsearch.xml" title="{SITENAME}"/>
          <link rel="search" type="application/opensearchdescription+xml"
                href="{URL_BOARD_DIRECTORY}/search/improvedsearch.xml" title="{SEARCH_FORUMS}"/>
          <script src="{JQUERY_PATH}" type="text/javascript"></script>
          <!-- BEGIN switch_recent_jquery -->
          <script src="{JS_DIR}jquery1.9/jquery-migrate-1.4.1.js" type="text/javascript"></script>
          <script src="{JQUERY_DIR}browser/v1.0/jquery.browser.min.js" type="text/javascript"></script>
          <script src="{JQUERY_DIR}support/jquery.support.js" type="text/javascript"></script>
          <!-- END switch_recent_jquery -->
          <script src="{JS_DIR}{L_LANG}.js" type="text/javascript"></script>
          {RICH_SNIPPET_GOOGLE}

          <!-- BEGIN switch_fb_login -->
          <script src="https://connect.facebook.net/{switch_fb_login.FB_LOCAL}/all.js" type="text/javascript"></script>
          <script src="{switch_fb_login.JS_FB_LOGIN}" type="text/javascript"></script>
          <!-- END switch_fb_login -->

          <!-- BEGIN switch_ticker -->
          <link type="text/css" rel="stylesheet" href="{JQUERY_DIR}ticker/ticker.css"/>
          <script src="{JQUERY_DIR}/ticker/ticker.js" type="text/javascript"></script>
          <!-- END switch_ticker -->

          <!-- BEGIN switch_ticker_new -->
          <script src="{JQUERY_DIR}jcarousel/jquery.jcarousel.js" type="text/javascript"></script>
          <script type="text/javascript">//<![CDATA[
              /* Definir le sens de direction en fonction du panneau admin */
              var tickerDirParam = "{switch_ticker.DIRECTION}";
              var slid_vert = false;
              var auto_dir = 'next';
              var h_perso = parseInt({switch_ticker.HEIGHT});

              switch (tickerDirParam) {
                case 'top' :
                    slid_vert = true;
                    break;
                case 'left':
                    break;
                case 'bottom':
                    slid_vert = true;
                    auto_dir = 'prev';
                    break;
                case 'right':
                    auto_dir = 'prev';
                    break;
                default:
                    slid_vert = true;
              }

              $(document).ready(function () {
                var w_cont = $('#fa_ticker_container').width();

                if (w_cont > 0) {
                    $('#fa_ticker_container').width(w_cont);

                    /* Affichage de la liste */
                    $('#fa_ticker_content').css('display', 'block');

                    /* Calcul des dimensions du conteneur et des elements */
                    var width_max = $('ul#fa_ticker_content').width();
                    var width_item = Math.floor(width_max / {switch_ticker.SIZE});
                    var height_max = h_perso;

                    /* Calcul de la hauteur maximale du conteneur en fonction des elements et de la hauteur personnalisee dans l'admin */
                    $('ul#fa_ticker_content li').each(function () {
                      if ($(this).height() > height_max) {
                          height_max = $(this).height();
                      }
                    });

                    /* Redimensionnement des elements et des images trop larges */
                    $('ul#fa_ticker_content li').width(width_item).height(height_max).find('img').each(function () {
                      if ($(this).width() > width_item) {
                          var ratio = $(this).width() / width_item;
                          var new_height = Math.round($(this).height() / ratio);
                          $(this).height(new_height).width(width_item);
                      }
                    });

                    /* Redimensionnement et centrage du conteneur en mode vertical */
                    if (slid_vert) {
                      $('ul#fa_ticker_content').width(width_item).height(height_max).css('marginLeft', 'auto').css('marginRight', 'auto');
                    }

                    /* Initialisation du caroussel */
                    $('#fa_ticker_content').jcarousel({
                      vertical: slid_vert,
                      wrap: 'circular',
                      auto: {switch_ticker.STOP_TIME},
                      auto_direction: auto_dir,
                      scroll: 1,
                      size: {switch_ticker.SIZE},
                      height_max: height_max,
                      animation: {switch_ticker.SPEED}
                    });
                } else {
                    $('ul#fa_ticker_content li:not(:first)').css('display', 'none');
                    $('ul#fa_ticker_content li:first').css('list-style', 'none').css('text-align', 'center');
                }
              });
              //]]>
          </script>
          <!-- END switch_ticker_new -->

          <script type="text/javascript">//<![CDATA[
              $(document).ready(function () {
                <!-- BEGIN switch_enable_pm_popup -->
                pm = window.open('{U_PRIVATEMSGS_POPUP}', '_faprivmsg', 'HEIGHT=225,resizable=yes,WIDTH=400');
                if (pm != null) {
                    pm.focus();
                }
                <!-- END switch_enable_pm_popup -->
                <!-- BEGIN switch_report_popup -->
                report = window.open('{switch_report_popup.U_REPORT_POPUP}', '_phpbbreport', 'HEIGHT={switch_report_popup.S_HEIGHT},resizable=yes,scrollbars=no,WIDTH={switch_report_popup.S_WIDTH}');
                if (report != null) {
                    report.focus();
                }
                <!-- END switch_report_popup -->
                <!-- BEGIN switch_ticker -->
                $(document).ready(function () {
                    Ticker.start({
                      height: {switch_ticker.HEIGHT},
                      spacing: {switch_ticker.SPACING},
                      speed: {switch_ticker.SPEED},
                      direction: '{switch_ticker.DIRECTION}',
                      pause: {switch_ticker.STOP_TIME}
                    });
                });
                <!-- END switch_ticker -->
              });

              <!-- BEGIN switch_login_popup -->
              var logInPopUpLeft, logInPopUpTop, logInPopUpWidth = {LOGIN_POPUP_WIDTH},
                logInPopUpHeight = {LOGIN_POPUP_HEIGHT}, logInBackgroundResize = true, logInBackgroundClass = false;
              <!-- END switch_login_popup -->

              <!-- BEGIN switch_login_popup -->
              $(document).ready(function () {
                $(window).resize(function () {
                    var windowWidth = document.documentElement.clientWidth;
                    var popupWidth = $("#login_popup").width();
                    var mypopup = $("#login_popup");

                    $("#login_popup").css({
                      "left": windowWidth / 2 - popupWidth / 2
                    });
                });
              });
              <!-- END switch_login_popup -->
              //]]>
          </script>
          {GREETING_POPUP}
          <!-- BEGIN switch_ticker_new -->
          <style>
              .jcarousel-skin-tango .jcarousel-item {
                text-align: center;
                width: 10px;
              }

              .jcarousel-skin-tango .jcarousel-item-horizontal {
                margin-right: {switch_ticker.SPACING}px;
              }

              .jcarousel-skin-tango .jcarousel-item-vertical {
                margin-bottom: {switch_ticker.SPACING}px;
              }
          </style>
          <!-- END switch_ticker_new -->
          {HOSTING_JS}

          <!-- BEGIN google_analytics_code -->
          <script type="text/javascript">
              //<![CDATA[
              (function (i, s, o, g, r, a, m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
              (i[r].q=i[r].q||[]).push(arguments)}, i[r].l = 1 * new Date();
              a = s.createElement(o),
                m = s.getElementsByTagName(o)[0];
              a.async = 1;
              a.src = g;
              m.parentNode.insertBefore(a, m)
              })
              (window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
              ga('create', '{G_ANALYTICS_ID}', 'auto');
              ga('send', 'pageview');
              ga('set', 'anonymizeIp', true);

              <!-- BEGIN google_analytics_code_bis -->
              ga('create', '{G_ANALYTICS_ID_BIS}', 'auto', 'bis');
              ga('bis.send', 'pageview');
              ga('bis.set', 'anonymizeIp', true);
              <!-- END google_analytics_code_bis -->
              //]]>

          </script>
          <!-- END google_analytics_code -->

        </head>
        <body background="{T_BODY_BACKGROUND}" bgcolor="{T_BODY_BGCOLOR}" text="{T_BODY_TEXT}" link="{T_BODY_LINK}"
            vlink="{T_BODY_VLINK}">
        <!-- BEGIN hitskin_preview -->
        <div id="hitskin_preview" style="display: block;">
          <h1><img src="https://2img.net/i/fa/hitskin/hitskin_logo.png" alt=""/> <em>Hit</em>skin.com</h1>
          <div class="content">
              <p>
                {hitskin_preview.L_THEME_SITE_PREVIEW}
                <br/>
                <span>{hitskin_preview.U_INSTALL_THEME}<a
                          href="https://{hitskin_preview.U_RETURN_THEME}">{hitskin_preview.L_RETURN_THEME}</a></span>
              </p>
          </div>
        </div>
        <!-- END hitskin_preview -->

        <!-- BEGIN switch_login_popup -->
        <div id="login_popup" style="z-index: 10000 !important;">
          <table class="forumline" width="{LOGIN_POPUP_WIDTH}" height="{LOGIN_POPUP_HEIGHT}" border="0" cellspacing="1"
                cellpadding="0">
              <tr height="25">
                <td class="catLeft">
                    <span class="genmed module-title">{SITENAME}</span>
                </td>
              </tr>
              <tr height="{LOGIN_POPUP_MSG_HEIGHT}">
                <td class="row1" align="left" valign="top">
                    <div id="login_popup_buttons">
                      <form action="{S_LOGIN_ACTION}" method="get">
                          <input type="submit" class="mainoption" value="{L_LOGIN}"/>
                          <input type="button" class="mainoption" value="{L_REGISTER}"
                              onclick="parent.location='{U_REGISTER}';"/>
                          <input id="login_popup_close" type="button" class="button" value="{L_DONT_DISPLAY_AGAIN}"/>
                      </form>
                    </div>
                    <span class="genmed">{LOGIN_POPUP_MSG}</span>
                </td>
              </tr>
          </table>
        </div>
        <!-- END switch_login_popup -->

        <!-- BEGIN switch_like_popup -->
        <div id="like_popup" style="z-index: 10000 !important;">
          <table class="forumline" width="{LIKE_POPUP_WIDTH}" height="{LIKE_POPUP_HEIGHT}" border="0" cellspacing="1"
                cellpadding="0">
              <tr height="25">
                <td class="catLeft">
                    <span class="genmed module-title">{SITENAME}</span>
                </td>
              </tr>
              <tr height="{LIKE_POPUP_MSG_HEIGHT}">
                <td class="row1" align="left" valign="top">
                    <div id="like_popup_buttons">
                      <form action="{S_LOGIN_ACTION}" method="get">
                          <input type="submit" class="mainoption" value="{L_LOGIN}"/>
                          <input type="button" class="mainoption" value="{L_REGISTER}"
                              onclick="parent.location='{U_REGISTER}';"/>
                          <input id="like_popup_close" type="button" class="button" value="{L_LIKE_CLOSE}"/>
                      </form>
                    </div>
                    <span class="genmed">{LIKE_POPUP_MSG}</span>
                </td>
              </tr>
          </table>
        </div>
        <!-- END switch_like_popup -->

        <a name="top"></a>
        {JAVASCRIPT}

        <table class="bodylinewidth" width="{T_BODY_TABLE_WIDTH}" cellspacing="0" cellpadding="10" border="0" align="center">
          <tr>
              <td class="bodyline">
                <table width="100%" cellspacing="0" cellpadding="0" border="0">
                    <tr>
                      <!-- BEGIN switch_logo_left -->
                      <td><a href="{U_INDEX}"><img loading="lazy" src="{LOGO}" id="i_logo" border="0" alt="{L_INDEX}" vspace="1"/></a>
                      </td>
                      <!-- END switch_logo_left -->
                      <td align="center" width="100%" valign="middle">
                          <!-- BEGIN switch_logo_center -->
                          <a href="{U_INDEX}"><img loading="lazy" src="{LOGO}" id="i_logo" border="0" alt="{L_INDEX}" vspace="1"/></a>
                          <br/>
                          <!-- END switch_logo_center -->
                          <div class="maintitle">{MAIN_SITENAME}</div>
                          <br/>
                          <span class="gen">{SITE_DESCRIPTION}<br/>&nbsp; </span>
                      </td>
                      <!-- BEGIN switch_logo_right -->
                      <td><a href="{U_INDEX}"><img loading="lazy" src="{LOGO}" id="i_logo" border="0" alt="{L_INDEX}" vspace="1"/></a>
                      </td>
                      <!-- END switch_logo_right -->
                    </tr>
                </table>
                <div style="clear: both;"></div>

                <!-- BEGIN switch_ticker_new -->
                <div id="fa_ticker_block" style="margin-top:4px;margin-bottom:4px;">
                    <table width="100%" border="0" cellspacing="0" cellpadding="0" class="forumline">
                      <tr>
                          <td align="left" class="row1">
                            <div id="fa_ticker_container">
                                <ul id="fa_ticker_content" class="jcarousel-skin-tango" style="display:none;">
                                  <!-- BEGIN ticker_row -->
                                  <li>{switch_ticker.ticker_row.ELEMENT}</li>
                                  <!-- END ticker_row -->
                                </ul>
                            </div>
                          </td>
                      </tr>
                    </table>
                </div>
                <!-- END switch_ticker_new -->

                <!-- BEGIN switch_ticker -->
                <div id="fa_ticker_block" style="margin-top:4px;margin-bottom:4px;">
                    <table width="100%" border="0" cellspacing="0" cellpadding="0" class="forumline">
                      <tr>
                          <td align="left" class="row1">
                            <div id="fa_ticker_container">
                                <div id="fa_ticker" style="height:{switch_ticker.HEIGHT}px;">
                                  <div class="fa_ticker_content">
                                      <!-- BEGIN ticker_row -->
                                      <div>{switch_ticker.ticker_row.ELEMENT}</div>
                                      <!-- END ticker_row -->
                                  </div>
                                </div>
                            </div>
                          </td>
                      </tr>
                    </table>
                </div>
                <!-- END switch_ticker -->

                <div id="page-body">
                    <div id="{ID_CONTENT_CONTAINER}"{CLASS_CONTENT_CONTAINER}>
                      <table cellpadding="0" cellspacing="0" width="100%" class="three-col">
                          <tbody>
                          <tr>
                            <td valign="top" width="{C1SIZE}">
                                <div id="{ID_LEFT}">
                                  <!-- BEGIN giefmod_index1 -->
                                  {giefmod_index1.MODVAR}
                                  <!-- BEGIN saut -->
                                  <div style="height:{SPACE_ROW}px"></div>
                                  <!-- END saut -->
                                  <!-- END giefmod_index1 -->
                                </div>
                            </td>
                            <td valign="top" width="100%">
                                <!-- BEGIN html_validation -->
                            </td>
                          </tr>
                          </tbody>
                      </table>
                    </div>
                </div>
              </td>
          </tr>
        </table>
        </body>
        </html>
        <!-- END html_validation -->

Remplaces le Javascript pour l'astuce du lien chatbox dans la toolbar

Par celui-ci:

Code:
(function() {
        if (!window.FA) window.FA = {};
        if (FA.Chat) {
            if (window.console) console.warn('FA.Chat has already been initialized');
            return;
        }

        FA.Chat = {

            // chatbox settings
            config: {
                height: '60%',
                width: '70%',

                live_notif: true,
                sound_notif: {
                    enabled: true,
                    file: 'https://illiweb.com/fa/fdf/zelda.mono.mp3'
                },
                notifRate: 10000
            },

            // language settings
            lang: {
                chatbox: 'Chatbox',
                new_msg: 'Un nouveau message a été posté sur la <a href="javascript:FA.Chat.toggle();">chatbox</a>.'
            },

            // technical data below
            node:{}, // node cache
            users: 0, // users in chat
            messages: 'initial', // total chat messages
            actif: false, // tells us if the chatbox is opened
            notifActif: false, // tells us if the notifications are active

            // initial setup of the chatbox
            init: function() {
                var right = document.getElementById('bar_chatbox'),
                    container = document.createElement('DIV'),
                    button = document.createElement('A'),
                    audio;

                button.id = 'fa_chat_button';
                button.innerHTML = FA.Chat.lang.chatbox + ' <span id="fa_chatters">(0)</span>';
                button.onclick = FA.Chat.toggle;
                FA.Chat.node.button = button;

                container.id = 'fa_chat_container';
                container.innerHTML = '<iframe id="fa_chat" src="/chatbox/index.forum"></iframe>';
                container.style.width = FA.Chat.config.width;
                container.style.height = FA.Chat.config.height;
                container.style.bottom = '-' + FA.Chat.config.height;
                container.style.visibility = 'hidden';

                if (right) {
                    right.insertBefore(button, right.lastChild); // add the chat button to the right side of the toolbar
                    document.body.appendChild(container);

                    // create the notification audio element
                    if (FA.Chat.config.sound_notif.enabled) {
                        audio = document.createElement('AUDIO');
                        audio.src = FA.Chat.config.sound_notif.file;
                        if (audio.canPlayType) {
                            FA.Chat.node.audio = audio;
                            document.body.appendChild(audio);
                        }
                    }

                    FA.Chat.node.container = document.getElementById('fa_chat_container');
                    FA.Chat.node.chatters = document.getElementById('fa_chatters');
                    FA.Chat.node.frame = document.getElementById('fa_chat');
                    FA.Chat.node.frame.onload = FA.Chat.getFrame;
                }

                delete FA.Chat.init;
            },

            // get the frame window, document, and elements
            getFrame: function() {
                if (FA.Chat.poll) window.clearInterval(FA.Chat.poll);
                if (this.contentDocument || this.contentWindow) {
                    FA.Chat.window = this.contentWindow;
                    FA.Chat.document = this.contentDocument ? this.contentDocument : FA.Chat.window.document;

                    FA.Chat.node.message = FA.Chat.document.getElementById('message');
                    FA.Chat.node.members = FA.Chat.document.getElementById('chatbox_members');

                    FA.Chat.poll = window.setInterval(FA.Chat.listen, 300); // listen for changes every 0.3 seconds
                }
            },

            // listen for changes in the chatbox
            listen: function() {
                var users = FA.Chat.node.members.getElementsByTagName('LI').length,
                    messages = FA.Chat.window.chatbox.messages.length;

                // update user count
                if (users > FA.Chat.users || users < FA.Chat.users) {
                    FA.Chat.users = users;
                    FA.Chat.node.chatters.innerHTML = '(' + FA.Chat.users + ')';
                }

                // initial / active updates
                if ((FA.Chat.messages == 'initial' && messages) || FA.Chat.notifActif || FA.Chat.actif) FA.Chat.messages = messages;

                // notify new messages while connected and the chatbox is closed
                if (!FA.Chat.actif && !FA.Chat.notifActif && FA.Chat.window.chatbox.connected && (messages > FA.Chat.messages || messages < FA.Chat.messages)) {
                    FA.Chat.messages = messages; // update message count
                    FA.Chat.notifActif = true;

                    if (FA.Chat.config.live_notif) FA.Chat.notify(FA.Chat.lang.new_msg); // show live notification
                    if (FA.Chat.config.sound_notif.enabled && FA.Chat.node.audio) FA.Chat.node.audio.play(); // play sound notification

                    // wait before notifying the user again
                    window.setTimeout(function() {
                        FA.Chat.notifActif = false;
                    }, FA.Chat.config.notifRate);
                }
            },

            // create a custom notification
            notify: function(msg) {

                var notif = document.createElement('DIV'),
                    live = document.getElementById(Toolbar.LIVE_NOTIF);

                notif.className = 'fa_notification';
                notif.innerHTML = '<div class="content ellipsis">' + msg + '</div>';
                notif.style.display = 'none';

                $(notif).mouseover(function() {
                    $(this).stop(true, true)
                });
                $(notif).mouseleave(function() {
                    $(this).delay(5000).fadeOut()
                });

                live.insertBefore(notif, live.firstChild);
                $(notif.firstChild).dotdotdot();

                $(notif).fadeIn(100, function() {
                    $(this).delay(10000).fadeOut()
                });
            },

            // toggle the display state of the chatbox
            toggle: function() {
                var container = FA.Chat.node.container.style;

                if (/hidden/i.test(container.visibility)) {
                    FA.Chat.node.button.className = 'fa_chat_active';
                    FA.Chat.actif = true;

                    container.visibility = 'visible';
                    container.bottom = '3px';

                    // auto focus the message field
                    window.setTimeout(function() {
                        FA.Chat.node.message.focus();
                    }, 350); // some browsers ( firefox ) need a delay
                } else {
                    FA.Chat.node.button.className = '';
                    FA.Chat.actif = false;

                    container.visibility = 'hidden';
                    container.bottom = '-' + FA.Chat.config.height;
                }
            }

        };

        $(function() {
            // initialize the chat when the document is ready and the user is logged in
            if (_userdata.session_logged_in) $(FA.Chat.init);
        });
    })();

Normlement, tu ne devrais pas être ennuyé avec le positionnement.
ThunderTB
ThunderTB
http://hockeyfederation.forumgratuit.org/forum

MessageThunderTB Lun 14 Sep 2020 - 16:45

C'est de toute beauté mon cher ami , un grand merci .
Je te souhaite une belle fin de journée Phil à la prochaine .

hinhin
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Lun 14 Sep 2020 - 16:48

De rien Franck,
bonne fin de soirée à toi aussi même si elle est bien entamée impeccable .
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Lun 14 Sep 2020 - 16:48


Hello


Sujet résolu et déplacé dans le forum adéquate

A bientôt pour une prochaine demande clin oeil



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