// ==UserScript==
// @title twitter_acc_list
// @name twitter_acc_list
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @match https://twitter.com/*
// @grant none
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js
// ==/UserScript==
//登録処理
var result2 = document.evaluate('id("global-new-tweet-button")', document, null, 7, null);
result2.snapshotItem(0).insertAdjacentHTML('afterend', '<input type="button" value="登録" id="regist">');
var result3 = document.evaluate('id("regist")', document, null, 7, null);
result3.snapshotItem(0).addEventListener('click', sample, false);
function sample() {
var result = document.evaluate('//link[@rel="canonical"]', document, null, 7, null);
var n_str = result.snapshotItem(0).href + "/";
var n_arr = n_str.split("/");
var acc = n_arr[3];
if (acc.length == 0) {
acc = "home_kokokara_hajimaruyo";
}
for (var i = 0; i < 128; i++) {
if (!('user' + (i + 1) in localStorage)) {
if (i == 127) {
alert("保存できるURLの数は128までに制限しています。\nローカルストレージから登録したキーを削除してください");
break;
}
var cb = list_check(i + 1, acc);
if (cb != 1) {
localStorage.setItem('user' + (i + 1), acc);
var memo_ran = window.prompt("コメントは何かありますか?", "");
localStorage.setItem(acc, memo_ran);
alert("登録しました");
break;
} else {
break;
}
}
}
//重複チェック
function list_check(lp, n_name) {
var flag = 0;
for (var i = 0; i < lp; i++) {
if (localStorage.getItem('user' + (i + 1)) == n_name) {
alert("このページは既に登録されています");
flag = 1;
break;
}
}
return flag;
}
}
//リスト表示処理
var result4 = document.evaluate('id("global-new-tweet-button")', document, null, 7, null);
result4.snapshotItem(0).insertAdjacentHTML('afterend', '<input type="button" value="リスト" id="list">');
var result5 = document.evaluate('id("list")', document, null, 7, null);
result5.snapshotItem(0).addEventListener('click', sample2, false);
function sample2() {
localStorage.setItem("n_url", location.href);
history.pushState(null, null, "/koko_nanimo_naidesuyo2");
document.body.innerHTML = "<ol type=1></ol>";
var result6 = document.evaluate('//ol', document, null, 7, null);
for (var i = 0; i < 128; i++) {
if ('user' + (i + 1) in localStorage) {
if (localStorage.getItem('user' + (i + 1)) != "home_kokokara_hajimaruyo") {
if (localStorage.getItem(localStorage.getItem('user' + (i + 1))) != null) {
result6.snapshotItem(0).insertAdjacentHTML('beforeend', '<li class=line' + (i + 1) + '><img src=https://twitter.com/' + localStorage.getItem('user' + (i + 1)) + '/profile_image?size=mini><a href=https://twitter.com/' + localStorage.getItem('user' + (i + 1)) + '>@' + localStorage.getItem('user' + (i + 1)) + '</a><div>' + localStorage.getItem(localStorage.getItem('user' + (i + 1))) + '</div></li>');
} else {
result6.snapshotItem(0).insertAdjacentHTML('beforeend', '<li class=line' + (i + 1) + '><img src=https://twitter.com/' + localStorage.getItem('user' + (i + 1)) + '/profile_image?size=mini><a href=https://twitter.com/' + localStorage.getItem('user' + (i + 1)) + '>@' + localStorage.getItem('user' + (i + 1)) + '</a></li>');
}
} else {
result6.snapshotItem(0).insertAdjacentHTML('beforeend', '<li class=line' + (i + 1) + '>home</li><br>');
}
} else {
document.body.insertAdjacentHTML('beforeend', '<input type=button id=remove value=削除>');
break;
}
}
var listArray = document.querySelectorAll('li+li');
for (var a = 0; a < listArray.length; a++) {
listArray[a].style.marginTop = "1em";
}
$(function () {
$('#remove').click(function () {
var j = window.prompt("何番目のアカウントを削除しますか?\n半角英数で入力してください。\n入力例は1番から3番を消す場合です", "1-3");
if (/\-/g.test(j)) {
var j_sp = j.split("-");
var j_begin = j_sp[0];
var j_end = j_sp[1];
while (j_begin <= j_end) {
$('.line' + j_begin).css({
"display": "none"
});
j_begin++;
}
} else {
$('.line' + j).css({
"display": "none"
});
}
}, );
});
window.addEventListener('popstate', function (event) {
location.href = localStorage.getItem("n_url");
});
}