//ユーザーデータ表示
//タイムライン
function utl(user, more, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (user == "--now") {
var user = $('#his-data').attr("user-id");
}
if (localStorage.getItem("mode_" + domain) != "misskey") {
if (more) {
var sid = $("#his-tl .cvo").last().attr("toot-id");
var plus = "?max_id=" + sid;
} else {
var plus = "";
}
var start = "https://" + domain + "/api/v1/accounts/" + user + "/statuses" +
plus;
var i = {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
}
}
} else {
var req = { i: at }
if (more) {
var sid = $("#his-tl .cvo").last().attr("toot-id");
req.maxId = sid;
}
req.userId = user;
var start = "https://" + domain + "/api/users/notes"
var i = {
method: 'POST',
headers: {
'content-type': 'application/json',
},
body: JSON.stringify(req)
}
}
fetch(start, i).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
if (localStorage.getItem("mode_" + domain) == "misskey") {
var templete = misskeyParse(json, '', acct_id, 'user');
} else {
var templete = parse(json, '', acct_id, 'user');
}
if (!json[0]) {
templete = lang.lang_details_nodata + "
";
}
if (more) {
$("#his-tl-contents").append(templete);
} else {
if (localStorage.getItem("mode_" + domain) != "misskey") {
pinutl(templete, user, acct_id)
} else {
$("#his-tl-contents").html(templete);
}
}
jQuery("time.timeago").timeago();
});
}
//ピン留めTL
function pinutl(before, user, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (user == "--now") {
var user = $('#his-data').attr("user-id");
}
var plus = "?pinned=1";
var start = "https://" + domain + "/api/v1/accounts/" + user + "/statuses" +
plus
fetch(start, {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
},
}).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
var templete = parse(json, 'pinned', acct_id, 'user');
if (!json[0]) {
templete = "";
}
$("#his-tl-contents").html(templete + before);
jQuery("time.timeago").timeago();
});
}
//フォローリスト
function flw(user, more, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (user == "--now") {
var user = $('#his-data').attr("user-id");
}
if (localStorage.getItem("mode_" + domain) == "misskey") {
var req = { i: at }
if (more) {
var sid = $("#his-follow-list .cvo").last().attr("user-id");
req.maxId = sid;
}
req.userId = user;
var start = "https://" + domain + "/api/users/following"
var i = {
method: 'POST',
headers: {
'content-type': 'application/json',
},
body: JSON.stringify(req)
}
} else {
if (more) {
var sid = $("#his-follow-list .cvo").last().attr("user-id");
var plus = "?max_id=" + sid;
} else {
var plus = "";
}
var start = "https://" + domain + "/api/v1/accounts/" + user + "/following" +
plus
var i = {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
}
}
}
fetch(start, i).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
if (localStorage.getItem("mode_" + domain) == "misskey") {
var templete = misskeyUserparse(json, '', acct_id);
} else {
var templete = userparse(json, '', acct_id);
}
if (templete == "") {
templete = lang.lang_details_nodata + "
";
}
if (more) {
$("#his-follow-list-contents").append(templete);
} else {
$("#his-follow-list-contents").html(templete);
}
jQuery("time.timeago").timeago();
});
}
//フォロワーリスト
function fer(user, more, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (user == "--now") {
var user = $('#his-data').attr("user-id");
}
if (localStorage.getItem("mode_" + domain) == "misskey") {
var req = { i: at }
if (more) {
var sid = $("#his-follower-list .cvo").last().attr("user-id");
req.maxId = sid;
}
req.userId = user;
var start = "https://" + domain + "/api/users/followers"
var i = {
method: 'POST',
headers: {
'content-type': 'application/json',
},
body: JSON.stringify(req)
}
} else {
if (more) {
var sid = $("#his-follower-list .cvo").last().attr("user-id");
var plus = "?max_id=" + sid;
} else {
var plus = "";
}
var start = "https://" + domain + "/api/v1/accounts/" + user + "/followers" +
plus
var i = {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
}
}
}
fetch(start, i).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
if (localStorage.getItem("mode_" + domain) == "misskey") {
var templete = misskeyUserparse(json, '', acct_id);
} else {
var templete = userparse(json, '', acct_id);
}
if (templete == "") {
templete = lang.lang_details_nodata + "
";
}
if (more) {
$("#his-follower-list-contents").append(templete);
} else {
$("#his-follower-list-contents").html(templete);
}
jQuery("time.timeago").timeago();
});
}
//以下自分のみ
//お気に入り一覧
function showFav(more, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (localStorage.getItem("mode_" + domain) != "misskey") {
if (more) {
var sid = $("#his-fav-list .cvo").last().attr("toot-id");
var plus = "?max_id=" + sid;
} else {
var plus = "";
}
var start = "https://" + domain + "/api/v1/favourites" + plus
var i = {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
}
}
} else {
var req = { i: at }
if (more) {
var sid = $("#his-fav-list .cvo").last().attr("toot-id");
req.maxId = sid;
}
var start = "https://" + domain + "/api/i/favorites"
var i = {
method: 'POST',
headers: {
'content-type': 'application/json',
},
body: JSON.stringify(req)
}
}
fetch(start, i).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
if (localStorage.getItem("mode_" + domain) != "misskey") {
var templete = parse(json, '', acct_id, 'user');
} else {
var templete = misskeyParse(json, '', acct_id, 'user');
}
if (!json[0]) {
templete = lang.lang_details_nodata + "
";
}
if (more) {
$("#his-fav-list-contents").append(templete);
} else {
$("#his-fav-list-contents").html(templete);
}
jQuery("time.timeago").timeago();
});
}
//ミュートリスト
function showMut(more, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (localStorage.getItem("mode_" + domain) == "misskey") {
var req = { i: at }
if (more) {
var sid = $("#his-muting-list .cvo").last().attr("user-id");
req.maxId = sid;
}
var start = "https://" + domain + "/api/mute/list"
var i = {
method: 'POST',
headers: {
'content-type': 'application/json',
},
body: JSON.stringify(req)
}
} else {
if (more) {
var sid = $("#his-muting-list .cvo").last().attr("user-id");
var plus = "?max_id=" + sid;
} else {
var plus = "";
}
var start = "https://" + domain + "/api/v1/mutes" + plus
var i = {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
}
}
}
fetch(start, i).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
if (!json[0]) {
templete = lang.lang_details_nodata + "
";
}
var templete = userparse(json, '', acct_id);
if (more) {
$("#his-muting-list-contents").append(templete);
} else {
$("#his-muting-list-contents").html(templete);
}
});
}
//ブロックリスト
function showBlo(more, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
if (localStorage.getItem("mode_" + domain) == "misskey") {
$("#his-blocking-list-contents").html(lang.lang_hisdata_notonmisskey + "
");
return false;
}
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (more) {
var sid = $("#his-blocking-list .cvo").last().attr("user-id");
var plus = "?max_id=" + sid;
} else {
var plus = "";
}
var start = "https://" + domain + "/api/v1/blocks" + plus
fetch(start, {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
},
}).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
if (!json[0]) {
templete = lang.lang_details_nodata + "
";
}
var templete = userparse(json, '', acct_id);
if (more) {
$("#his-blocking-list-contents").append(templete);
} else {
$("#his-blocking-list-contents").html(templete);
}
jQuery("time.timeago").timeago();
});
}
//フォロリクリスト
function showReq(more, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (localStorage.getItem("mode_" + domain) == "misskey") {
var req = { i: at }
if (more) {
var sid = $("#his-request-list .cvo").last().attr("user-id");
req.maxId = sid;
}
var start = "https://" + domain + "/following/requests/list"
var i = {
method: 'POST',
headers: {
'content-type': 'application/json',
},
body: JSON.stringify(req)
}
} else {
if (more) {
var sid = $("#his-request-list .cvo").last().attr("user-id");
var plus = "?max_id=" + sid;
} else {
var plus = "";
}
var start = "https://" + domain + "/api/v1/follow_requests" + plus
var i = {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
}
}
}
fetch(start, i).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
if (localStorage.getItem("mode_" + domain) != "misskey") {
var templete = userparse(json, "request", acct_id);
} else {
var templete = misskeyUserparse(json, true, acct_id);
}
if (!json[0]) {
templete = lang.lang_details_nodata + "
";
}
if (more) {
$("#his-request-list-contents").append(templete);
} else {
$("#his-request-list-contents").html(templete);
}
jQuery("time.timeago").timeago();
});
}
//ドメインブロックリスト
function showDom(more, acct_id) {
if (!acct_id) {
var acct_id = $('#his-data').attr("use-acct");
}
var domain = localStorage.getItem("domain_" + acct_id);
if (localStorage.getItem("mode_" + domain) == "misskey") {
$("#his-domain-list-contents").html(lang.lang_hisdata_notonmisskey + "
");
return false;
}
var at = localStorage.getItem("acct_" + acct_id + "_at");
if (more) {
var sid = $("#his-domain-list .cvo").last().attr("user-id");
var plus = "?max_id=" + sid;
} else {
var plus = "";
}
var start = "https://" + domain + "/api/v1/domain_blocks" + plus
fetch(start, {
method: 'GET',
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + at
},
//body: JSON.stringify({})
}).then(function (response) {
if (!response.ok) {
response.text().then(function(text) {
setLog(response.url, response.status, text);
});
}
return response.json();
}).catch(function (error) {
todo(error);
console.error(error);
}).then(function (json) {
var templete = "";
if (!json[0]) {
templete = lang.lang_details_nodata + "
";
}
Object.keys(json).forEach(function (key) {
var domain = json[key];
templete = templete + domain +
'cancel' +
'