diaspora/app/assets/javascripts/widgets/flash-messages.js
Jonne Haß ecb1b80e24 Render flash message content with .text
.html does not escape any html input in these, leading to XSS
attack vectors.

Thanks to A Kai (@sixhundredns) for reporting the related issues.
2014-05-24 16:08:32 +02:00

35 lines
803 B
JavaScript

(function() {
var FlashMessages = function() {
var self = this;
this.subscribe("widget/ready", function() {
self.animateMessages();
});
this.animateMessages = function() {
self.flashMessages().addClass("expose").delay(8000).fadeTo(200, 0.5);
};
this.render = function(result) {
self.flashMessages().removeClass("expose").remove();
$("<div/>", {
id: result.success ? "flash_notice" : "flash_error"
})
.html($("<div/>", {
'class': "message"
})
.text(result.notice))
.prependTo(document.body);
self.animateMessages();
};
this.flashMessages = function() {
return $("#flash_notice, #flash_error, #flash_alert");
};
};
Diaspora.Widgets.FlashMessages = FlashMessages;
})();