From 43bac6f3e6051b930885ca6a942ed752e98df487 Mon Sep 17 00:00:00 2001 From: Cutls Date: Wed, 22 May 2019 00:00:54 +0900 Subject: [PATCH] Add: notification filter by user (for head) --- app/js/lang/lang.en.js | 1 + app/js/lang/lang.ja.js | 1 + app/js/tl/filter.js | 44 ++++++++++++++++++++------------- app/js/tl/notification.js | 8 +++--- app/js/tl/parse.js | 3 ++- app/js/ui/layout.js | 6 ++++- app/view/make/index.sample.html | 8 +++++- 7 files changed, 47 insertions(+), 24 deletions(-) diff --git a/app/js/lang/lang.en.js b/app/js/lang/lang.en.js index 8fae95cb..48c12bf6 100644 --- a/app/js/lang/lang.en.js +++ b/app/js/lang/lang.en.js @@ -195,6 +195,7 @@ var lang = { "lang_parse_thread": "Show thread", "lang_parse_unknown": "Attached file", "lang_parse_nsfw": "NSFW media", + "lang_parse_notffilter":"Show this user's notifications", //misskey "lang_misskeyparse_renote": "Repost", "lang_misskeyparse_renoteqt": "Renote", diff --git a/app/js/lang/lang.ja.js b/app/js/lang/lang.ja.js index 69df3708..3891a719 100644 --- a/app/js/lang/lang.ja.js +++ b/app/js/lang/lang.ja.js @@ -197,6 +197,7 @@ var lang = { "lang_parse_thread": "会話を表示", "lang_parse_unknown": "添付ファイル", "lang_parse_nsfw": "閲覧注意", + "lang_parse_notffilter":"このユーザーの通知のみを表示", //misskey "lang_misskeyparse_renote": "再投稿", "lang_misskeyparse_renoteqt": "引用", diff --git a/app/js/tl/filter.js b/app/js/tl/filter.js index 67d16595..f012a7a9 100644 --- a/app/js/tl/filter.js +++ b/app/js/tl/filter.js @@ -386,45 +386,33 @@ function filterUpdateInternal(json, type) { */ //通知フィルター function exclude(key) { - var excludetxt = ""; + var excludetxt = localStorage.getItem("exclude-" + key); if ($('#exc-reply-' + key + ':checked').val()) { excludetxt = "?exclude_types[]=mention" - var reply = true - } else { - var reply = false; } if ($('#exc-fav-' + key + ':checked').val()) { - if (reply) { + if (!excludetxt || excludetxt !="") { excludetxt = excludetxt + "&exclude_types[]=favourite" } else { excludetxt = "?exclude_types[]=favourite" } - var fav = true - } else { - var fav = false; } if ($('#exc-bt-' + key + ':checked').val()) { - if (reply || fav) { + if (!excludetxt || excludetxt !="") { excludetxt = excludetxt + "&exclude_types[]=reblog" } else { excludetxt = "?exclude_types[]=reblog" } - var bt = true - } else { - var bt = false; } if ($('#exc-follow-' + key + ':checked').val()) { - if (reply || bt || fav) { + if (!excludetxt || excludetxt !="") { excludetxt = excludetxt + "&exclude_types[]=follow" } else { excludetxt = "?exclude_types[]=follow" } - var follow = true; - } else { - var follow = false; } if ($('#exc-poll-' + key + ':checked').val()) { - if (reply || bt || fav || follow) { + if (!excludetxt || excludetxt !="") { excludetxt = excludetxt + "&exclude_types[]=poll" } else { excludetxt = "?exclude_types[]=poll" @@ -444,4 +432,26 @@ function excludeCk(key, target) { } else { return ""; } +} +function checkNotfFilter(tlid){ + var excludetxt = localStorage.getItem("exclude-" + tlid); + if(!excludetxt || excludetxt != ""){ + return true; + }else{ + return false; + } +} +function resetNotfFilter(tlid){ + localStorage.setItem("exclude-" + tlid, "") + parseColumn(); +} +function notfFilter(id,tlid){ + var excludetxt = localStorage.getItem("exclude-" + tlid); + if (!excludetxt || excludetxt !="") { + excludetxt = excludetxt + "&account_id="+id + } else { + excludetxt = "?account_id="+id + } + localStorage.setItem("exclude-" + tlid, excludetxt) + parseColumn(); } \ No newline at end of file diff --git a/app/js/tl/notification.js b/app/js/tl/notification.js index 4f5de095..397862df 100644 --- a/app/js/tl/notification.js +++ b/app/js/tl/notification.js @@ -79,15 +79,15 @@ function notfColumn(acct_id, tlid, sys) { } if (obj.type != "follow") { if (misskey) { - templete = templete + misskeyParse([obj], 'notf', acct_id, 'notf', -1, mute); + templete = templete + misskeyParse([obj], 'notf', acct_id, tlid, -1, mute); } else { - templete = templete + parse([obj], 'notf', acct_id, 'notf', -1, mute); + templete = templete + parse([obj], 'notf', acct_id, tlid, -1, mute); } } else { if (misskey) { - templete = templete + misskeyUserparse([obj], 'notf', acct_id, 'notf', -1, mute); + templete = templete + misskeyUserparse([obj], 'notf', acct_id, tlid, -1, mute); } else { - templete = templete + userparse([obj.account], 'notf', acct_id, 'notf', -1); + templete = templete + userparse([obj.account], 'notf', acct_id, tlid, -1); } } diff --git a/app/js/tl/parse.js b/app/js/tl/parse.js index 1800c68d..af46e54e 100644 --- a/app/js/tl/parse.js +++ b/app/js/tl/parse.js @@ -235,7 +235,8 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) { var what = lang.lang_parse_polled; var icon = "fa-tasks purple-text"; } - var noticetext = '' + date(toot.created_at, datetype) + ' ' + ' ' + ' ' + - '
'; + ''; + if(checkNotfFilter(key)){ + exclude=exclude+'' + } + exclude=exclude+"
"; } else if (acct.type == "home") { var exclude = '
TheDesk Docsをご覧ください。
Release Note Usamin (18.4.1)
- ・
+ ・macOSでのアップデータについて修正。
+ ・本来不要なところにフォロリク許可画面が出るようになっていたのを修正。
+ ・不明なメディアに対するリンクを表示します。
+ ・PleromaでのVideoの挙動について修正しました。
+ ・Patreonでの支援を開始しました
+ ・アスタルテの新しいBBCodeに対応しました
+ ・Electron 5.0.1になりました

ThinkingDeskラベル