diff --git a/app/js/post/emoji.js b/app/js/post/emoji.js index 0b4e4609..5edeea68 100644 --- a/app/js/post/emoji.js +++ b/app/js/post/emoji.js @@ -191,7 +191,7 @@ function emojiInsert(code, del) { $("#textarea").val(newt); //emoji(); } else { - var regExp = new RegExp(del, "g"); + var regExp = new RegExp(del.replace(/[.*+?^=!:${}()|[\]\/\\]/g, "\\$&"), "g"); var now = now.replace(regExp, ""); $("#textarea").val(now + brank + code); } diff --git a/app/js/post/suggest.js b/app/js/post/suggest.js index 71bf9c7a..32fe9853 100644 --- a/app/js/post/suggest.js +++ b/app/js/post/suggest.js @@ -131,7 +131,7 @@ function tagInsert(code, del) { var selin = $("#textarea").prop('selectionStart'); if (!del) { } else { - var regExp = new RegExp(del, "g"); + var regExp = new RegExp(del.replace(/[.*+?^=!:${}()|[\]\/\\]/g, "\\$&"), "g"); var now = now.replace(regExp, ""); selin = selin - del.length; } diff --git a/app/js/tl/filter.js b/app/js/tl/filter.js index 5d0de708..9e098c41 100644 --- a/app/js/tl/filter.js +++ b/app/js/tl/filter.js @@ -370,7 +370,7 @@ function filterUpdateInternal(json, type) { var text = $(elem).find('.toot').html(); Object.keys(home).forEach(function (key8) { var word = home[key8]; - var regExp = new RegExp(word, "g"); + var regExp = new RegExp(word.replace(/[.*+?^=!:${}()|[\]\/\\]/g, "\\$&"), "g"); if ($.strip_tags(text).match(regExp)) { $("[toot-id=" + id + "]").addClass("hide"); } @@ -386,6 +386,7 @@ function filterUpdateInternal(json, type) { */ //通知フィルター function exclude(key) { + localStorage.setItem("exclude-" + key, "") var excludetxt = localStorage.getItem("exclude-" + key); if ($('#exc-reply-' + key + ':checked').val()) { excludetxt = "?exclude_types[]=mention" diff --git a/app/js/tl/misskeyparse.js b/app/js/tl/misskeyparse.js index aca9f5e9..bbc0a937 100644 --- a/app/js/tl/misskeyparse.js +++ b/app/js/tl/misskeyparse.js @@ -590,7 +590,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) { } else { var word = worde } - var regExp = new RegExp(word, "g"); + var regExp = new RegExp(word.replace(/[.*+?^=!:${}()|[\]\/\\]/g, "\\$&"), "g"); if ($.strip_tagstemp(content).match(regExp)) { boostback = "hide by_filter"; } @@ -603,7 +603,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) { var word = wordemp[key9]; if (word) { var word = word.tag; - var regExp = new RegExp(word, "g"); + var regExp = new RegExp(word.replace(/[.*+?^=!:${}()|[\]\/\\]/g, "\\$&"), "g"); content = content.replace(regExp, '' + word + ""); } }); diff --git a/app/js/tl/parse.js b/app/js/tl/parse.js index 3b9068e7..77b2d709 100644 --- a/app/js/tl/parse.js +++ b/app/js/tl/parse.js @@ -733,7 +733,8 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) { } else { var word = worde } - var regExp = new RegExp(word, "g"); + var regExp = new RegExp(word.replace(/[.*+?^=!:${}()|[\]\/\\]/g, "\\$&"), "g"); + console.log(regExp) if ($.strip_tags(content).match(regExp)) { boostback = "hide by_filter"; } @@ -746,7 +747,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) { var word = wordemp[key9]; if (word) { var word = word.tag; - var regExp = new RegExp(word, "g"); + var regExp = new RegExp(word.replace(/[.*+?^=!:${}()|[\]\/\\]/g, "\\$&"), "g"); content = content.replace(regExp, '' + word + ""); } }); diff --git a/app/js/ui/settings.js b/app/js/ui/settings.js index e3c745aa..c1a9ed22 100644 --- a/app/js/ui/settings.js +++ b/app/js/ui/settings.js @@ -171,7 +171,7 @@ function wordmute() { }); } function wordmuteSave() { - var word = $('#wordmute').material_chip('data'); + var word = M.Chips.getInstance($("#wordmute")).chipsData; var json = JSON.stringify(word); localStorage.setItem("word_mute", json); } @@ -185,7 +185,7 @@ function wordemp() { }); } function wordempSave() { - var word = $('#wordemp').material_chip('data'); + var word = M.Chips.getInstance($("#wordemp")).chipsData; var json = JSON.stringify(word); localStorage.setItem("word_emp", json); }