/*
* @title [hatena]この人のプロフィール
* @description profile.hatena.ne.jp に飛びます。
* @include *
* @license MIT License
* @javascript_url
*/
/*
// ノードとか見る方
[
'https://daichkr.hatelabo.jp/antenna/960669575395951115',
'http://quyo.hatelabo.jp/items/5476c75138633800021d0000',
'http://copie.hatelabo.jp/cp/gYC-xLrOpsWNbA',
'http://counting.hatelabo.jp/count/118791',
'http://serif.hatelabo.jp/a2504c7ccb748c24565b1feb73f6bf2192e81383/',
'http://serif.hatelabo.jp/a2504c7ccb748c24565b1feb73f6bf2192e81383/6bfba5ff61d5d7699d620e9f72ffae17efabc2b5',
'http://a.hatena.ne.jp/include?uid=sample',
'http://d.hatena.ne.jp/sample/20071112#c1194857635',
'http://d.hatena.ne.jp/hatenadiary/20030314#c1047642967',
'http://d.hatena.ne.jp/keywordlog?klid=1005025',
'http://sample.g.hatena.ne.jp/sample/20040418#c1167971092',
'http://sample.g.hatena.ne.jp/sample/20040418#c1297938357',
'http://sample.hatenastaff.com/',
'http://i.hatena.ne.jp/idea/162',
'http://q.hatena.ne.jp/1189538758',
'http://q.hatena.ne.jp/1189538758/115450/#i115450',
'http://q.hatena.ne.jp/1345623024#a1163768',
'http://q.hatena.ne.jp/1284525413#c213292',
];
*/
/*
// URL だけ見る方
[
'https://daichkr.hatelabo.jp/hatelabo/',
'http://quyo.hatelabo.jp/users/hakobe932',
'http://daishonin.hatelabo.jp/user/hatelabo',
'http://daishonin.hatelabo.jp/user/hatelabo/52fc4783021d8693c0000006',
'http://let.hatelabo.jp/secondlife/',
'http://let.hatelabo.jp/secondlife/let/gYC-xpO2uIvsEQ',
'http://let.st-hatelabo.com/secondlife/let/gYC-xpO2uIvsEQ.bookmarklet.js',
'http://copie.hatelabo.jp/cho45/',
'http://counting.hatelabo.jp/user/chris4403',
'http://serif.hatelabo.jp/secondlife/',
'http://cdn1.www.st-hatena.com/users/sa/sample/profile.gif',
'http://a.hatena.ne.jp/sample/',
'http://b.hatena.ne.jp/sample/',
'http://b.hatena.ne.jp/entry/574190/comment/sample',
'http://d.hatena.ne.jp/sample/',
'http://d.hatena.ne.jp/hatenadiary+cooking/',
'http://f.hatena.ne.jp/sample/',
'http://cdn-ak.f.st-hatena.com/images/fotolife/s/sample/20050728/20050728171129.jpg',
'http://sample.g.hatena.ne.jp/sample/',
'http://h.hatena.ne.jp/hatenahaiku/',
'http://h.hatena.ne.jp/id/hatenahaiku/',
'http://i.hatena.ne.jp/hatenaidea/',
'http://q.hatena.ne.jp/hatenaquestion/',
'http://s.hatena.ne.jp/sample/' // その他のサービス代表
].forEach(
*/
((a, i, p = 'parentNode', q = 'querySelector', m = 'match', h = 'pathname', l = location,
u = ((a || l.href)[m](/(\w+)\.(st-)?(hate(labo|na)\.(ne\.jp|jp|com))(\/touch|\/mobile)?\/([^\/]+)(.*)/) || []),
f = u[7], s = u[8],
b = '', e = [b, f],
$ = _ => document[q](_),
r = _ => ((_ = l.hash[m](_)) ? $(`a[name="${_[1]}"]`) : 0),
t = _ => (_[h] ? _[h].slice(1, -1) : f),
d = (_ = 0, z = b) => (_ && (_ = $(z))
? _[h][m](/^(\/users?\/|\/)([^\/]+)/)[2]
: (/^(users?|id)$/.test(f) ? s[m](/[^\/]{3,}/)[0] : f)
),
g = f => ((a = r(/(c\d+)/)) ? t(a[p][p][q]('.hatena-id-icon')) : f)[m](/[^+]+/)[0]
) => ((i = f ?
({
/*'daishonin': f => d(),*/
'daichkr': f => d(f == 'antenna', '.created a'),
'quyo': f => d(f == 'items', '.author a'),
'copie': f => d(f == 'cp', 'div[class="banner"] a'),
/* div.username が存在する */
'counting': f => d(f == 'count', 'a.username'),
'serif': f => d(f.length == 40, '.userlink'),
/*'www': f => d(),*/
'a': f => (l.search[m](/uid=([^&]+)/) || e)[1],
'b': f => (s[m](/\/comment\/(.+)/) || e)[1],
'd': f => (f[m](/^keywordlog\?/) ? d(1, '.username') : g(f)),
'f': f => (s[m](/([^\/]+)\/\d{8}\//) || e)[1],
'g': g,
/*'h': f => d(),*/
'i': f => d(f == 'idea', 'td a'),
'k': f => d(f == 'idea', 'td a'),
/* 退会者の処理はしょった */
'q': f => ((a = r(/([aci]\d+)/)) && (a = t({
a: a[p][p][p][q]('.f-left a'),
c: a[p][p][q]('a'),
i: a[p][q]('a[href$="/"]:not([class])')
}[l.hash.charAt(1)])) ? a : d(/^\d+$/.test(f), '.questioner-title a'))
}[u[1]] || (f => d()))(f)
/* コメントのパーマリンクもあるけど隠されてるのでスルー */
: $('html').dataset.author
)
&& /^[A-Za-z][\-\w]{1,30}[\dA-Za-z]$/.test(i)
/* && console.log(i, u[0])*/
&& void(window.open(`http:\u002F\u002Fprofile.hatena.ne.jp/${i}/`))
))
(
)