-
Notifications
You must be signed in to change notification settings - Fork 1
/
acfunavatarFix.js
70 lines (70 loc) · 2.88 KB
/
acfunavatarFix.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
// ==UserScript==
// @name AcfunAvatarFix
// @namespace zhihaofans
// @version 0.1.3
// @description 修复顶端右侧小头像
// @author zhihaofans
// @match http://www.acfun.tv/*
// @match http://www.aixifan.com/*
// @grant none
// @note 本脚本已停止更新
// @note Github开源地址:https://github.com/zhihaofans/Acfun/blob/master/acfun.tv/AcfunAvatarFix/acfunavatarFix.js
// @note Greasyfork地址:https://greasyfork.org/zh-CN/scripts/22931
// @license MIT
// ==/UserScript==
function setCookie(name, value) {
var expdate = new Date();
expdate.setTime(expdate.getTime() + 30 * 60 * 1000);
document.cookie = name + "=" + value + ";expires=" + expdate.toGMTString() + ";path=/";
}
function getCookie(c_name) {
if (document.cookie.length > 0) {
c_start = document.cookie.indexOf(c_name + '=');
if (c_start != -1) {
c_start = c_start + c_name.length + 1;
c_end = document.cookie.indexOf(';', c_start);
if (c_end == -1) {
c_end = document.cookie.length;
}
return decodeURI(document.cookie.substring(c_start, c_end));
}
}
return '';
}
function acNotice(_mode, _text) {
var patt1 = new RegExp('(/v/ac|/a/ac|/v/ab|/member/|/a/aa)');
if (patt1.test(location.pathname, 'i')) {
$.info(_mode, "AcfunAvatarFix:" + _text);
} else {
alert("AcfunAvatarFix\n" + _text);
}
}
$(document).ready(function() {
console.log("AcfunAvatarFix:开始载入");
if (getCookie('auth_key') !== "") {
if (getCookie('ac_userimg') === "") {
$.get("/usercard.aspx?username=" + getCookie('ac_username'),
function(data, status) {
console.log("AcfunAvatarFix(status:" + status + ")");
if (status == "success") {
if (data.success === true) {
setCookie("ac_userimg", data.userjson.avatar);
if (getCookie('ac_userimg') == data.userjson.avatar) {
console.log("AcfunAvatarFix:头像修复成功,刷新后生效");
acNotice("success", "头像修复成功,刷新生效");
} else {
console.log("AcfunAvatarFix:获取个人信息失败(cookies)");
acNotice("error", "保存cookies失败");
}
} else {
console.log("AcfunAvatarFix:获取个人信息失败(api)");
acNotice("error", "获取个人信息失败");
}
} else {
console.log("AcfunAvatarFix:获取个人信息失败(网络)");
acNotice("error", "获取个人信息失败,请检查网络");
}
});
}
}
});