Proteção contra owner e XSS nas mensagens e chat
2 participantes
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1 • Compartilhe
Proteção contra owner e XSS nas mensagens e chat
Detalhes da questão
Endereço do fórum: http://alex-fdf.forumeiros.com
Versão do fórum: AwesomeBB
Descrição
Olá, boa tarde.
Estou a criar um fórum com a versão AwesomeBB, mas infelizmente, ao utilizar o script deste tutorial: Proteção contra owner e XSS nas mensagens e chat não funciona, pois o script ainda não está adaptado para a nova versão.
Gostaria que ele fosse atualizado para que possa funcionar corretamente na nova versão.
Agradeço.
Re: Proteção contra owner e XSS nas mensagens e chat
Olá @Aejis,
Mude o seu script para:
Cordialmente,
pedxz.
Bem-vindo ao Fórum dos Fóruns!Seja bem-vindo ao Fórum dos Fóruns! Como acabou de se inscrever, veja aqui alguns links importantes a saber:
|
- Código:
(function($) {
'use strict';
/**
* Configuration
*/
var config = {
/**
* Attributes to keep
*/
attributes: [
'style',
'class',
],
/**
* Styles to reset
*/
style: [
'position',
'margin',
'transform',
'top',
'right',
'bottom',
'left',
],
};
/**
* Elements queries by forum version
*/
var query = {
phpbb2: {
postbody: '.postbody > div',
},
phpbb3: {
postbody: '.content > div',
},
punbb: {
postbody: '.entry-content > div > div',
},
invision: {
postbody: '.post-entry > div',
},
modernbb: {
postbody: '.content > div',
},
awesomebb: {
postbody: '.post-content',
},
mobile: {
postbody: '.content > div',
},
mobile_modern: {
postbody: '.post-content',
},
};
/**
* Hide posts to avoid pre-render XSS
*/
var hide = [];
$.each(query, function(version, data) {
hide.push(data.postbody);
});
hide = $.grep(hide, function(item, pos) {
return $.inArray(item, hide) === pos;
});
var $hide = $('<style>', { html: hide.join(',') + ' { display: none; }' })
.appendTo('head')
;
/**
* Clear function
*/
var clear = function(elem) {
var $this = $(elem);
var attributes = $.map(elem.attributes, function(item) {
return item.name;
});
$.each(attributes, function() {
if (config.attributes.indexOf(this) === -1) {
elem.removeAttribute(this);
}
});
$.each(config.style, function() {
$this.css(this, '');
});
};
/**
* Clear posts
*/
$(function() {
/**
* Forum version detection
*/
var version;
$.each({
phpbb2: '.bodylinewidth',
phpbb3: '#phpbb',
punbb: '.pun',
invision: '#ipbwrapper',
modernbb: '#modernbb',
awesomebb: '#wrap',
mobile: '#mpage-body',
mobile_modern: '#mpage-body-modern',
}, function(name, selector) {
if ($(selector).length) {
version = name;
return false;
}
});
if (!version) {
return $hide.remove();
}
$(query[version].postbody).find('table, tr, td').each(function() {
clear(this);
});
$hide.remove();
});
/**
* Chatbox override
*/
var insertChatBoxNew = window.insertChatBoxNew;
window.insertChatBox = window.insertChatBoxNew = function() {
insertChatBoxNew.apply(this, arguments);
var chatbox = $('#frame_chatbox').get(0);
if (chatbox.readyState === 'complete') {
return run(event.target.contentWindow);
}
var onload = chatbox.onload;
chatbox.onload = function(event) {
if (onload) {
onload.apply(this, arguments);
}
run(event.target.contentWindow);
};
};
var run = function(context) {
/**
* Clear chatbox
*/
var refresh = context.Chatbox.prototype.refresh;
context.Chatbox.prototype.refresh = function(data) {
if (!data.messages || !data.messages.length) {
return refresh.call(this, data);
}
$.each(data.messages, function() {
this.msg = $('<div>', { html: this.msg })
.find('table, tr, td')
.each(function() {
clear(this);
})
.end()
.html()
;
});
refresh.call(this, data);
};
/**
* Chatbox initial refresh
*/
context.chatbox.refresh(context.chatbox);
};
}(jQuery));
Cordialmente,
pedxz.
tikky- Admineiro
- Membro desde : 13/01/2017
Mensagens : 7962
Pontos : 9217
Re: Proteção contra owner e XSS nas mensagens e chat
Agradeço.
Pode fechar o tópico.
Pode fechar o tópico.
Re: Proteção contra owner e XSS nas mensagens e chat
Tópico resolvidoMovido para "Questões resolvidas". |
Convidado- Convidado
Tópicos semelhantes
» Proteção contra owner e XSS nas mensagens e chat
» [AJUDA] Ant-Owner para Mensagens no tópico
» Som de novas mensagens no chat
» Remoção automática das mensagens de conexão no chat
» Anti-owner chat box
» [AJUDA] Ant-Owner para Mensagens no tópico
» Som de novas mensagens no chat
» Remoção automática das mensagens de conexão no chat
» Anti-owner chat box
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos