Reject blank emote names and images

This commit is contained in:
calzoneman 2015-12-05 18:52:39 -08:00
parent 889fb6595f
commit 11d4c4ca62
2 changed files with 20 additions and 2 deletions

View File

@ -79,6 +79,10 @@ function validateEmote(f) {
s = "(^|\\s)" + s + "(?!\\S)";
f.source = s;
if (!f.image || !f.name) {
return false;
}
try {
new RegExp(f.source, "gi");
} catch (e) {
@ -140,6 +144,16 @@ EmoteModule.prototype.handleUpdateEmote = function (user, data) {
var f = validateEmote(data);
if (!f) {
var message = "Unable to update emote '" + JSON.stringify(data) + "'. " +
"Please contact an administrator for assistance.";
if (!data.image || !data.name) {
message = "Emote names and images must not be blank.";
}
user.socket.emit("errorMsg", {
msg: message,
alert: true
});
return;
}

View File

@ -2561,8 +2561,12 @@ function formatUserPlaylistList() {
function loadEmotes(data) {
CHANNEL.emotes = [];
data.forEach(function (e) {
e.regex = new RegExp(e.source, "gi");
CHANNEL.emotes.push(e);
if (e.image && e.name) {
e.regex = new RegExp(e.source, "gi");
CHANNEL.emotes.push(e);
} else {
console.error("Rejecting invalid emote: " + JSON.stringify(e));
}
});
}