Cargando...
Notificaciones Password  Username

Regresar CPortada - Mas que un foro, tu Comunidad.  » Recursos para Forumotion - Foroactivo » Scripts
Actualizar esta página Usar chatbox sin modo "Arquivos"
Nombre de Usuario:
Contraseña:
   

Responder al tema
 
Herramientas Usar chatbox sin modo "Arquivos" 2x97uModos de visualización Usar chatbox sin modo "Arquivos" 2x97u

Usar chatbox sin modo "Arquivos" UFXmlYjUsar chatbox sin modo "Arquivos" ZcHKMjL
(#1)
Old  Supervisor
">
Chronos
Supervisor
Chronos
26133504/06/2012PeruMi time is now.https://i.imgur.com/95H8RF7.png
 
Usar chatbox sin modo "Arquivos" Empty Usar chatbox sin modo "Arquivos" - 16/4/2018, 4:13 pm

¡Hola gente!

El nuevo formato del chat box sólo permite conversación en el modo sin "Archivos", eso significa que en un promedio de 15 minutos las entradas van "desapareciendo"!
De ahí para tener acceso a los mensajes anteriores, tenemos que hacer clic en el enlace Archivos.

Bueno, yo soy uno de los que todavía no se acostumbraron a eso, pues en la versión anterior prevalecía los "Archivos" en la conversación, donde nos quedábamos con una lista de hasta 250 mensajes donde podríamos visualizarlos y publicar al mismo tiempo!

Para aquellos que deseen tener esta funcionalidad de la versión anterior, abran el siguiente código debajo de "Indice":

Código:
// Redefine function!
function insertChatBox(chatbox_id, chatbox_url) {
  return insertChatBoxNew(chatbox_id, chatbox_url);
}
// Redefine function!
function insertChatBoxNew(chatbox_id, chatbox_url) {
  document.getElementById(chatbox_id).innerHTML = '<iframe src="/chatbox/index.forum?archives=1" id="frame_chatbox" scrolling="no" width="100%" height="100%" marginwidth="0" marginheight="0" frameborder="0"></iframe>';
}

$(function() {
  if (_userdata.session_logged_in) {
      $('#frame_chatbox').load(function () {
        chat_archives();
      });
  }
});

function chat_archives() {
  var oIframe = (document.getElementById("frame_chatbox").contentWindow.document || document.getElementById("frame_chatbox").contentDocument),
      script = oIframe.createElement("script"),
      chatbox_script = function () {

      // "For" asynchronous loop, faster and does not lock the browser interface when you have many messages!
      (function ($) {
        $.assyncFor = function (arr, callback) {
            for (var i = 0, len = arr.length; i < len; ++i) {
              var boundCallback = callback.bind(null, i, arr[i]);
              setTimeout(boundCallback, i);
            }
            return this;
        };
      }(jQuery));

      var interval = 0;

      $("#chatbox_option_co, #chatbox_option_disco").bind("click", function () {
        $("#chatbox").empty();
      });

      Chatbox.prototype.refresh = function (data) {
        if (data.error) {
            $("body").html(data.error)
        } else {
            if (this.connected) {
              $("#chatbox_display_archives").show();
              $("#chatbox_option_co").hide();
              $("#chatbox_option_disco, #chatbox_footer").show();
              $("#chatbox_messenger_form").css('display', 'block');
              $("#chatbox_messenger_form").css('visibility', 'visible');
              $(".format-message").each(function () {
                  var name = $(this).attr('name');
                  var value = my_getcookie('CB_' + name);
                  $(this).prop('checked', parseInt(value) ? true : false)
              });
              this.format();
              if (data.lastModified) {
                  this.listenParams.lastModified = data.lastModified
              }
              if (!interval) {
                  interval = setInterval(function () {
                    chatbox.init();
                  }, 5000);
              }
            } else {
              clearInterval(interval);
              interval = 0;
              $("#chatbox_option_co").show();
              $("#chatbox_option_disco, #chatbox_footer").hide();
              $("#chatbox_display_archives").hide();
              $("#chatbox_messenger_form").css('display', 'none');
              $("#chatbox_messenger_form").css('visibility', 'hidden');
            }
            if (data.users) {
              this.users = [];
              $(".online-users, .away-users").empty();
              $(".member-title").hide();
              for (var i in data.users) {
                  var user = data.users[i];
                  this.users[user.id] = user;
                  var username = "<span style='color:" + user.color + "'>" + (user.admin ? "@ " : "") + "<span class='chatbox-username chatbox-user-username' data-user='" + user.id + "' >" + user.username + "</span>" + "</span>";
                  var list = user.online ? '.online-users' : '.away-users';
                  $(list).append('<li>' + username + '</li>')
              }
              if (!$(".online-users").is(':empty')) {
                  $(".member-title.online").show()
              }
              if (!$(".away-users").is(':empty')) {
                  $(".member-title.away").show()
              }
            }
            if (data.messages) {
              var scroll = !this.messages || this.messages.length != data.messages.length;
              this.messages = data.messages;

              if (this.messages) {
                  var oThis = this; // Here we save the current "this" for use inside "For" asynchronous loop!

                  $.assyncFor(oThis.messages, function (index, content) { // The "For" asynchronous loop...
                    // Here checks if there is already a message in the DOM, if already, not need to process the same message!
                    if ($(".shout-" + index).length) {
                        return oThis;
                    }

                    var message = content, //                                      |ClassName index|
                        html = "<p class='chatbox_row_" + (index % 2 == 1 ? 2 : 1) + " clearfix shout-" + index + "'>" + "<span class='date-and-time' title='" + message.date + "'>[" + message.datetime + "]</span>";

                    if (message.userId == -10) {
                        html += "<span class='msg'>" + "<span style='color:" + message.msgColor + "'>" + "<strong> " + message.msg + "</strong>" + "</span>" + "</span>"
                    } else {
                        html += "<span class='user-msg'>";
                        if (oThis.avatar) {
                          html += "  <span class='cb-avatar'><img src='" + message.user.avatar + "' /></span>"
                        }
                        html += "  <span class='user' style='color:" + message.user.color + "'>" + "<strong> " + (message.user.admin ? "@ " : "") + "<span class='chatbox-username chatbox-message-username'  data-user='" + message.userId + "' >" + message.username + "</span> :&nbsp;" + "</strong>" + "</span>" + "<span class='msg'>" + message.msg + "</span>" + "</span>"
                    }
                    html += "</p>";

                    /**
                      * Here the "append" will not make slow the code execution since it is not within a synchronous loop,
                      * but instead in an asynchronous loop that schedules the execution later!
                      */
                    $("#chatbox").append(html);

                    if ((index + 1) == oThis.messages.length) {
                        if (scroll) {
                          $("#chatbox")[0].scrollTop = $("#chatbox").prop("scrollHeight") * 2
                        }
                    }
                  });
              }
            }
        }
      };
      $("#chatbox").empty();
      chatbox.init();
      interval = setInterval(function () {
        chatbox.init();
      }, 5000);
  };

  script.type = "text/javascript";
  script.innerHTML = "(" + chatbox_script.toString() + ")();";
  oIframe.getElementsByTagName("head")[0].appendChild(script);
}


Nota: Si tienes algún otro código de personalización del chat, tendrás que pedir ayuda para conciliar mi código con el tuyo!

Usar chatbox sin modo "Arquivos" LUdCPFY

Comentar con facebook:
Usar chatbox sin modo "Arquivos" Imagen11
 » Temas similares en otros foros
» Modificar el modo de Threads y Posts
» No de este modo
» [MOD] Perfil en modo horizontal
» [MOD] Perfil en modo horizontal
» Perfil en modo horizontal
 
Permisos de este foro:
No puedes responder a temas en este foro.

 Los Códigos BB están Activado
 Los Emoticonos están Activado
 Código [IMG] está Activado
 Código HTML está Activado