var website = new Object();
website.hash = null;

if(document.domain == "localhost" || document.domain.indexOf("192.168.") > -1 || document.domain.indexOf("synck.com") > -1)
	website.root = "/weblogs.trancedive.com/design_3.0/";
else
	website.root = "/";
website.images = website.root + "images/";
var hash = new Date();
var nocache = "?" + parseInt(hash.getTime() / 10000);
//var nocache = "";

if(navigator.userAgent.indexOf('iPhone') > -1)
	document.write('<meta name="viewport" content="width=1200" />');
else if(navigator.userAgent.indexOf('iPad') > -1)
	document.write('<meta name="viewport" content="width=1200" />');

var current_dirs = new Array();
current_dirs = location.href.split("/");
if(current_dirs[current_dirs.length-1] == "")
	current_dirs[current_dirs.length-1] = "index.html";
else if(current_dirs[current_dirs.length-1].indexOf('?') > -1)
	current_dirs[current_dirs.length-1] = current_dirs[current_dirs.length-1].substring(0,current_dirs[current_dirs.length-1].indexOf('?'));
else if(current_dirs[current_dirs.length-1].indexOf('#') > -1)
	current_dirs[current_dirs.length-1] = current_dirs[current_dirs.length-1].substring(0,current_dirs[current_dirs.length-1].indexOf('#'));
var currentURI = current_dirs.join("/");


function addEventSet(elm,listener,fn){
	try{
		elm.addEventListener(listener,fn,false);
	}
	catch(e){
		elm.attachEvent("on"+listener,fn);
	}
}
function sitesearch_head(){
	if(document.getElementById('q').value != document.getElementById('q').defaultValue && document.getElementById('q').value != "")
		return true;
	else
		return false;
}
function sitesearch_head_f(obj){
	if(obj.defaultValue == obj.value)
		obj.value = "";
	obj.style.backgroundColor = "#FFFFFF";
	obj.style.color = "#000000";
}
function sitesearch_head_b(obj){
	if("" == obj.value)
		obj.value = obj.defaultValue;
	obj.style.backgroundColor = "#EEEEEE";
	obj.style.color = "#999999";
}

function hashWatcher(){
	if(location.hash != website.hash){
		var d = window.document;
		var hash = location.hash.substring(1,location.hash.length);
		var PRAMS = new Array();
		PRAMS = hash.split('&');
		var _QUERY = new Array();
		if(location.hash){
			var hash = location.hash.substring(1,location.hash.length);
			var PRAMS = new Array();
			PRAMS = hash.split('&');
			for(i=0;i<PRAMS.length;i++){
				var PRAM = PRAMS[i].split('=');
				_QUERY[PRAM[0]] = PRAM[1];
			}
			if(_QUERY['c'] != undefined){
				d.getElementById('search_category').value = decodeURI(_QUERY['c']);
				change_search_category();
			}
		}
	}
	website.hash = location.hash;
}
function sf(obj){
	if(obj.value == obj.defaultValue){
		obj.value = "";
		obj.style.color = "#000000";
	}
}
function sb(obj){
	if(obj.value == ""){
		obj.value = obj.defaultValue;
		obj.style.color = "#999999";
	}
}
function login(){
	var d = window.document;
	if(d.getElementById('user_id').value != "" && d.getElementById('user_pw').value != ""){
		d.getElementById('login_form').submit();
		return false;
	}
	else {
		return false;
	}
}
var login_display = true;
function open_login(obj){
	var d = window.document;
	if(login_display){
		ssc(obj);
		d.getElementById('login_form').style.display = "block";
		login_display = false;
	}
	else {
		//d.getElementById('login_form').submit();
		login();
	}
}
var typewriterText = "";
var typewriterIndex = 0;
function typeWriter(){
	var d = window.document;
	d.getElementById('page_snippet').innerHTML = typewriterText.substring(0,typewriterIndex);
	if (typewriterIndex < typewriterText.length){
		typewriterIndex++;
		setTimeout("typeWriter()",30);
	}
	else {
		typewriterIndex = 0;
		//setTimeout("typeWriterReverse()",1000);
	}
}
function typeWriterReverse(){
	var d = window.document;
	d.getElementById('page_snippet').innerHTML = typewriterText.substring(typewriterIndex,typewriterText.length);
	if (typewriterIndex < typewriterText.length){
		typewriterIndex++;
		setTimeout("typeWriterReverse()",80);
	}
	else {
		typewriterIndex = 0;
		typeWriter();
	}
}
var ddOpenObj = new Object();
function ddOpen(ddId){
	var d = window.document;
	if(ddOpenObj[ddId]){
		d.getElementById(ddId).style.display = "none";
		ddOpenObj[ddId] = false;
	}
	else{
		d.getElementById(ddId).style.display = "block";
		ddOpenObj[ddId] = true;
	}
}
function website_init(){
	var d = window.document;
	if(d.getElementById('tree_top'))
		d.getElementById('tree_top').innerHTML = d.getElementById('tree_bottom_inner').innerHTML;
	//if(d.getElementById('foot_textlink'))
	//	d.getElementById('header').innerHTML += d.getElementById('foot_textlink').innerHTML;
	
	var stripes = new Array('tr','li','dl','dd');
	var st_counter = 0;
	for(i=0;i<stripes.length;i++){
		var tagObj = d.getElementsByTagName(stripes[i]);
		st_counter = 0;
		for(ii=0;ii<tagObj.length;ii++){
			if(tagObj[ii].className == "color" && st_counter % 2 != 0){
				tagObj[ii].style.backgroundColor = '#E8EEF9';
				st_counter++;
			}
			else if(tagObj[ii].className == "color")
				st_counter++;
		}
	}
	
	var tagObj = d.getElementsByTagName("meta");
	for (i=0;i<tagObj.length;i++){
		if(tagObj[i].name == "Description" && tagObj[i].content != undefined){
			typewriterText = tagObj[i].content;
			//d.getElementById('page_snippet').innerHTML = "";
			//setTimeout("typeWriter()",500);
		}
	}
	var tagObj = d.getElementsByTagName("h2");
	for (i=0;i<tagObj.length;i++){
		if(tagObj[i].className == "wl_title"){
			tagObj[i].style.fontSize = Math.floor(700 / tagObj[i].innerHTML.length) + "px";
		}
	}
	
	
	// query set
	setInterval("hashWatcher()",50);
	if(typeof lightboxObj != "undefined"){
		$('a.thickbox').lightBox();
	}
	setTimeout("uzafaceloop()",2000);
	
	var getCookies = new Object();
	if(document.cookie.indexOf("siori") > -1){
		var cookies = new Array();
		cookies = document.cookie.split(';');
		for(i=0;i<cookies.length;i++){
			var ses = new Array();
			var vals = new Array();
			ses = cookies[i].split('=');
			vals = ses[0].split(' ');
			ses[0] = vals.join('');
			getCookies[ses[0]] = ses[1];
		}
		if(getCookies['siori']){
			d.getElementById('siori_href').href = getCookies['siori'];
			setTimeout("sioriOn()",2000);
		}
	}
	
	// msg sort
	var tagObj = d.getElementsByTagName("div");
	var MessageBoxArr = new Array();
	for (i=0;i<tagObj.length;i++){
		if(tagObj[i].className == "commentObj")
			MessageBoxArr.push(tagObj[i].id);
	}
	if(MessageBoxArr.length > 0){
		MessageBoxArr.sort();
		var rebuildHTML = "";
		for(i=0;i<MessageBoxArr.length;i++){
			rebuildHTML += d.getElementById(MessageBoxArr[i]).innerHTML;
		}
		d.getElementById('message_container').innerHTML = rebuildHTML;
	}
	
	// shiori function
	var current_dir = location.pathname;
	var current_dirs = new Array();
	current_dirs = current_dir.split("/");
	var current_page = current_dirs[current_dirs.length-1];
	if(current_page != "index.html" && current_page != "" && current_page != undefined)
		document.cookie = "siori=" + current_page + "; path=/; expires=Mon, 30 Dec 2020 23:59:59 GMT";
	$('.facebook_icon').each(function(index) {
		var $this = $(this);
		$.getJSON('https://graph.facebook.com/'+ $(this).attr('rel') +'?fields=picture&callback=?', function(data) {
			$this.css('background-image', 'url('+ data["picture"] +')');
		});
	});
	setInterval("mrokure()",5000);
}
function uf(DateStr){
	DateStr = DateStr.replace(/\-/ig,"/");
	var t_dates = new Date();
	var e_dates = new Date(DateStr);
	var t = e_dates.getTime() / 1000 + (60 * 60  * 9);
	var tm = t_dates.getTime() / 1000;
	var cal_time = tm - t;
	var cal_sec = cal_time % 60;
	var cal_min = Math.floor(cal_time / 60);
	var cal_hor = Math.floor(cal_min / 60);
	cal_min = cal_min % 60;
	cal_time = "";
	if(cal_hor > 24)
		cal_time = parseInt(cal_hor / 24) + "日前";
	else if(cal_hor > 0)
		cal_time += cal_hor + "時間前";
	else if(cal_min > 0)
		cal_time += cal_min + "分前";
	else
		cal_time = cal_sec + "秒前";
	return '('+cal_time+')';
}
function ud(DateStr){
	DateStr = DateStr.replace(/\-/ig,"/");
	var t_dates = new Date();
	var e_dates = new Date(DateStr);
	var t = e_dates.getTime() / 1000;
	var tm = t_dates.getTime() / 1000;
	var cal_time = tm - t;
	var cal_sec = cal_time % 60;
	var cal_min = Math.floor(cal_time / 60);
	var cal_hor = Math.floor(cal_min / 60);
	cal_min = cal_min % 60;
	cal_time = "";
	if(cal_hor > 24)
		cal_time = parseInt(cal_hor / 24) + "日前";
	else if(cal_hor > 0)
		cal_time += cal_hor + "時間前";
	else if(cal_min > 0)
		cal_time += cal_min + "分前";
	else
		cal_time = cal_sec + "秒前";
	return '('+cal_time+')';
}
function uw(DateStr){
	DateStr = DateStr.replace(/\-/ig,"/");
	var t_dates = new Date();
	var e_dates = new Date(DateStr);
	var t = e_dates.getTime() / 1000;
	var tm = t_dates.getTime() / 1000;
	var cal_time = tm - t;
	var cal_sec = cal_time % 60;
	var cal_min = Math.floor(cal_time / 60);
	var cal_hor = Math.floor(cal_min / 60);
	cal_min = cal_min % 60;
	cal_time = "";
	if(cal_hor > 24)
		cal_time = parseInt(cal_hor / 24) + "日前";
	else if(cal_hor > 0)
		cal_time += cal_hor + "時間前";
	else if(cal_min > 0)
		cal_time += cal_min + "分前";
	else
		cal_time = cal_sec + "秒前";
	document.write('('+cal_time+')');
}

function sioriOn(){
	$(function(){
		$("#siori_img")
			.animate({ top: 0 },100)
			.animate({ top: -3 },25)
			.animate({ top: 0 },25);
	});
}

function mrokure(){
	$(function(){
		$("#social_rate")
			.animate({ 'margin-left': 2 },50)
			.animate({ 'margin-left': 0 },50)
			.animate({ 'margin-left': 2 },50)
			.animate({ 'margin-left': 0 },50);
	});
}
var uzaface_flag = true;
function uzafaceloop(){
	var rtime = Math.floor(Math.random()*10000) + 1000;
	if(uzaface_flag){
		uzaface_flag = false;
		// 0 -3 0
		$(function(){
			$("#noriyukiwada_face")
				.animate({ left: 0 },200)
				.animate({ left: -3 },50)
				.animate({ left: 0 },50);
		});
	}
	else {
		uzaface_flag = true;
		// -62
		$(function(){
			$("#noriyukiwada_face")
				.animate({ left: -62 },100);
		});
	}
	setTimeout("uzafaceloop()",rtime);
}

addEventSet(window,"load",function(){website_init();});
//Page Top smoothed scroll Functions
var Mac = navigator.appVersion.indexOf('Mac',0) != -1;
var Win = navigator.appVersion.indexOf('Win',0) != -1;
var IE  = navigator.appName.indexOf("Microsoft Internet Explorer",0) != -1;
var NN  = navigator.appName.indexOf("Netscape",0) != -1;
var Moz = navigator.userAgent.indexOf("Gecko") != -1;
var Vmajor = parseInt(navigator.appVersion); // ex. 3
var Vminor = parseFloat(navigator.appVersion); // ex. 3.01

var MacIE4 = ((Mac && navigator.appVersion.indexOf('MSIE 4.',0) != -1));
var MacIE3 = ((Mac && navigator.appVersion.indexOf('MSIE 3.',0) != -1));

function getScrollLeft() {
	if((navigator.appName.indexOf("Microsoft Internet Explorer",0) != -1)) {
		return document.body.scrollLeft;
	}
	else if(window.pageXOffset) {
		return window.pageXOffset;
	}
	else {
		return 0;
	}
}

function getScrollTop() {
	if((navigator.appName.indexOf("Microsoft Internet Explorer",0) != -1)) {
		return document.body.scrollTop;
	}
	else if(window.pageYOffset) {
		return window.pageYOffset;
	}
	else {
		return 0;
	}
}

var pageScrollTimer;
function pageScroll(toX,toY,frms,cuX,cuY) { // 020314
	if(pageScrollTimer) clearTimeout(pageScrollTimer);
	if(!toX || toX < 0) toX = 0;
	if(!toY || toY < 0) toY = 0;
	if(!cuX) cuX = 0 + getScrollLeft();
	if(!cuY) cuY = 0 + getScrollTop();
	if(!frms) frms = 6;
	if(toY > cuY && toY > (getAnchorPosObj('end','enddiv').y) - getInnerSize().height) toY = (getAnchorPosObj('end','enddiv').y - getInnerSize().height) + 1;
	cuX += (toX - getScrollLeft()) / frms;
	if(cuX < 0) cuX = 0;
	cuY += (toY - getScrollTop()) / frms;
	if(cuY < 0) cuY = 0;
	var posX = Math.floor(cuX);
	var posY = Math.floor(cuY);
	window.scrollTo(posX, posY);
	if(posX != toX || posY != toY) {
		pageScrollTimer = setTimeout("pageScroll("+toX+","+toY+","+frms+","+cuX+","+cuY+")",16);
	}
}

function jumpToPageTop() {
	pageScroll(0,0,5);
}

var searchHistory = false;
function return_list_view(){
	var d = window.document;
	if(searchHistory){
		d.getElementById("search_result_inner").innerHTML = searchHistory;
		d.getElementById("return_list").disabled = true;
	}
}
function sitesearchSubmit(){
	var d = window.document;
	if(d.getElementById('site_search_query').value != d.getElementById('site_search_query').defaultValue && d.getElementById('site_search_query').value != ""){
		return true;
	}
	else {
		return false;
	}
}
function ssf(obj){
	obj.style.backgroundPosition = "0px -24px";
}
function ssb(obj){
	obj.style.backgroundPosition = "0px 0px";
}
function ssc(obj){
	obj.style.backgroundPosition = "0px -48px";
}

function change_search_mode(obj){
	var d = window.document;
	if(obj.value == "" && d.getElementById('search_category'))
		d.getElementById('search_category').style.display = "none";
	else if(d.getElementById('search_category'))
		d.getElementById('search_category').style.display = "inline";
}
function change_search_category(){
	var d = window.document;
	if(d.getElementById('search_category').value != ""){
		d.getElementById("return_list").disabled = false;
		if(!searchHistory)
			searchHistory = d.getElementById("search_result_inner").innerHTML;
		var searchQuery = d.getElementById('search_query').value;
		if(searchQuery == d.getElementById('search_query').defaultValue)
			searchQuery = "";
		siteSearchObj = createXMLHttpRequest();
		siteSearchObj.onreadystatechange = getSearchResult;
		siteSearchObj.open("GET",website.root+"search/?db="+d.getElementById("search_db").value+"&q="+encodeURI(searchQuery)+"&c="+encodeURI(d.getElementById('search_category').value),true);
		siteSearchObj.send(null);
		return false;
	}
	else if(searchHistory){
		return_list_view();
	}
}
function siteSearch(obj){
	var d = window.document;
	d.getElementById('search_error').style.display = "none";
	if(obj.elements["q"].value != obj.elements["q"].defaultValue && obj.elements["q"].value != ""){
		if(d.getElementById("search_db").value == ""){
			return true;
		}
		else {
			d.getElementById("return_list").disabled = false;
			var search_option = "";
			if(!searchHistory)
				searchHistory = d.getElementById("search_result_inner").innerHTML;
			if(d.getElementById('search_category'))
				search_option = "&c="+encodeURI(d.getElementById('search_category').value);
			siteSearchObj = createXMLHttpRequest();
			siteSearchObj.onreadystatechange = getSearchResult;
			siteSearchObj.open("GET",obj.action+"?db="+d.getElementById("search_db").value+"&q="+encodeURI(obj.elements["q"].value)+search_option,true);
			siteSearchObj.send(null);
			return false;
		}
	}
	else {
		d.getElementById('search_error').style.display = "block";
		return false;
	}
}
function getSearchResult(){
	var d = window.document;
	if ((siteSearchObj.readyState == 4) && (siteSearchObj.status == 200))
		d.getElementById("search_result_inner").innerHTML = siteSearchObj.responseText;
	else
		d.getElementById("search_result_inner").innerHTML = "検索中...";
}

function createXMLHttp() {
	try {
		return new ActiveXObject ("Microsoft.XMLHTTP");
	}catch(e){
		try {
			return new XMLHttpRequest();
		}catch(e) {
			return null;
		}
	}
	return null;
}
function createXMLHttpRequest(){
	var XMLsiteSearchObject = null;
	try{
		XMLsiteSearchObject = new XMLHttpRequest();
	}
	catch(e){
		try{
			XMLsiteSearchObject = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e){
			try{
				XMLsiteSearchObject = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e){
				return null;
			}
		}
	}
	return XMLsiteSearchObject;
}
