顯示預覽圖像(支持單幅圖像,多幅圖像,運動圖像); 下載動畫(.zip); 按收藏夾數對搜索頁進行排序(並顯示)。
已自行解决“排序时隐藏已关注画师作品”功能失效问题
也完成部分屏蔽作者的功能,不过是类似于屏蔽tag的方法屏蔽userid,使用上还是有点痛苦,每次都要自行添加userid
下面是我修改的方案
function getFollowingOfCurrentUser() {
return new Promise(function (resolve, reject) {
let user_id = '';
try {
user_id = dataLayer[0].user_id;
} catch (ex) {
iLog.e('Get user id failed.');
resolve([]);
return;
}
// show/hide
$('#progress').text(Texts[g_language].sort_getPublicFollowing);
// 注释掉缓存读取逻辑,每次都重新获取
// let following = GetLocalStorage('followingOfUid-' + user_id);
// if (following != null && following != 'null') {
// resolve(following);
// return;
// }
getFollowingOfType(user_id, 'show').then(function (members) {
$('#progress').text(Texts[g_language].sort_getPrivateFollowing);
getFollowingOfType(user_id, 'hide').then(function (members2) {
let following = members.concat(members2);
// 仍然保存到缓存,但不再读取(可选:如果不需要缓存可以注释掉下面这行)
SetLocalStorage('followingOfUid-' + user_id, following);
resolve(following);
});
});
});
}
gmcInit()修改
// 新增:根据用户ID屏蔽
hideByUserId: {
label: Texts[g_language].setting_hideByUserId,
type: "checkbox",
default: false,
},
hideByUserIdRegex: {
label: Texts[g_language].setting_hideByUserIdPlaceholder,
type: "text",
default: "",
},
Texts 对象修改
Texts[Lang.zh_CN] = {
// 新增
setting_hideByUserId: '排序时隐藏指定用户的作品',
setting_hideByUserIdPlaceholder: '输入用户ID,如 "123456|789012",支持正则',
// ... 其他文本
};
Texts[Lang.en_US] = {
// 新增
setting_hideByUserId: 'Hide artworks by user ID',
setting_hideByUserIdPlaceholder: 'Input user ID, e.g. "123456|789012", regular expressions supported',
// ... 其他文本
};
Texts[Lang.ru_RU] = {
// 新增
setting_hideByUserId: 'При сортировке, скрыть работы указанных пользователей',
setting_hideByUserIdPlaceholder: 'Введите ID пользователя, например "123456|789012", поддерживается регулярное выражение',
// ... 其他文本
};
Texts[Lang.ja_JP] = {
// 新增
setting_hideByUserId: 'ソート時に指定したユーザーの作品を非表示',
setting_hideByUserIdPlaceholder: 'ユーザーIDを入力してください(例:"123456|789012"、正規表現対応)',
// ... 其他文本
};
ConvertSettingsFromGMC()添加
function ConvertSettingsFromGMC() {
let settings = {
// 新增
'hideByUserId': GMC.get('hideByUserId'),
'hideByUserIdRegex': GMC.get('hideByUserIdRegex'),
};
filterAndSort函数修改
let filterAndSort = function (sortType = 0) {
return new Promise(function (resolve, reject) {
let userIdFilteredCount = 0; // 新增计数器
$(works).each(function (i, work) {
// 新增:根据用户ID筛选
if (g_settings.hideByUserId) {
let userIdRegex = null;
try {
if (g_settings.hideByUserIdRegex && g_settings.hideByUserIdRegex.trim() !== '') {
userIdRegex = new RegExp(g_settings.hideByUserIdRegex);
}
} catch (e) {
iLog.w('Invalid hideByUserIdRegex: ' + g_settings.hideByUserIdRegex);
}
if (userIdRegex && userIdRegex.test(work.userId.toString())) {
userIdFilteredCount++;
return true;
}
}
});
}
若发现有bug,望完善
“排序时隐藏已关注画师作品”功能只在每次清除缓存后生效,刷新或换页就会失效,望修复
希望出一个屏蔽作者功能,或者一键收藏该作者所有作品功能,然后通过屏蔽收藏来间接实现
目前在使用“关注不喜欢的作者+排序时隐藏已关注画师作品”功能配合实现,但会影响查看想要关注作者的最新作品功能