/* analytics */
$ (function () {
	if (!/yusukekamiyamane.com/.test (location) || /local/.test (location) || /__utmv=[0-9]+\.local/.test (document.cookie)) {
		$ ("<div id='local'>local</div>").appendTo ("body");
		pageTracker._setVar ("local");
	} else {
		pageTracker._setVar ("lang: " + document.getElementsByTagName ("html")[0].getAttribute ("lang"));
	}
});

/* prettify */
document.write ("<script type='text/javascript' src='/common/scripts/prettify.js'></script>");
document.write ("<script type='text/javascript' src='/common/scripts/lang-css.js'></script>");
document.write ("<link type='text/css' rel='stylesheet' href='/common/stylesheets/prettify.css' />");
$ (function () {
	prettyPrint ();
});

/* rollover */
$ (function () {
	$ ("img.rollover").each (function () {
		$ ("<img />").attr ("src", this.src.replace (/\.([^.]+)$/, "-hover." + "$1")).appendTo ("body").hide ();
	});
	$ ("a:has(img.rollover)").hover (function () {
		$ ("img.rollover", this).each (function () {
			this.src = this.src.replace (/\.([^.]+)$/, "-hover." + "$1");
		});
	}, function () {
		$ ("img.rollover", this).each (function () {
			this.src = this.src.replace (/-hover\.([^.]+)$/, "." + "$1");
		});
	});
});

/* search */
document.write ("<script type='text/javascript' src='/common/scripts/ecl.js'></script>");
document.write ("<script type='text/javascript' src='/common/scripts/jquery-cookie.js'></script>");
function getSearchQuery (referrer) {
	if (!/yusukekamiyamane.com/.test (document.referrer)) {
		if (/[?&](kw|MT|name|p|q|qt|query|search|word)=([^&]+)/.test (referrer || document.referrer)) {
			var query = RegExp.$2;
			return eval ("Unescape" + GetEscapeCodeType (query) + "('" + query.replace (/\+/g, " ") + "')").replace (/^\s+|\s+$/g, "");
		}
	}
	return null;
}
google.load ("search", "1");
google.setOnLoadCallback (function () {
	var query = getSearchQuery () || $.cookie ("query");
	if (query) {
		query = unescape (query);
		var control = new google.search.SearchControl ();
		var search = new google.search.WebSearch ();
		control.addSearcher (search);
		// search.setResultSetSize (google.search.Search.LARGE_RESULTSET);
		search.setSiteRestriction ("yusukekamiyamane.com/blog/");
		search.setSearchCompleteCallback (null, function () {
			var results = $.grep (search.results, function (result) {
				result.titleNoFormatting = result.titleNoFormatting.split (" | ")[0];
				return result.titleNoFormatting != "Blog";
			});
			if (results.length) {
				var list = $ ("<ul class='link-list-a-1' />").prependTo ("div#blog h2 + div.section-block-a-1").wrap ("<div class='box-block-a-1'><div class='inner' /></div>").before ("<p class='paragraph-a-1 first'>検索キーワード「<em>" + query + "</em>」に関連するブログ記事</p>");
				$.each (results, function (i, result) {
					var url = result.url;
					if (!/categories|date/.test (url)) {
						$ ("<li><a href='" + url + "'>" + result.titleNoFormatting + "</a></li>").appendTo (list);
					}
				});
			}
		});
		search.execute (query);
		$.cookie ("query", escape (query), { path: "/" });
	}
});

/* stylesheet */
$ (function () {
	if ($.browser.mozilla) {
		$ ("html:lang(ja)").attr ("lang", "");
	}
});