/*=================================================================
/ JQuery noConflict
/=================================================================*/
jQuery.noConflict();


/*=================================================================
/ JSLoader
/=================================================================*/
var requireJavaScript = new Array(
	"/shared/javascript/config.js",
	"/shared/javascript/jquery.scrollTo-min.js",
	"/shared/javascript/jquery.cookie.min.js",
	"/shared/javascript/swfobject/swfobject.js",
	"/shared/javascript/css_browser_selector.js"
	);

var ITSME = {
	loadJS: function(jsURL) {
		document.write('<script type="text/javascript" src="'+jsURL+'"></script>');
	},

	init: function() {
		jQuery.each(requireJavaScript, function() {
			ITSME.loadJS(this);
		});
	}
};

ITSME.init();


/*=================================================================
/ initRollovers
/=================================================================*/
function initRollovers() {	
	var aPreLoad = new Array();
	var aImages = jQuery(".imgover");

	for (var i = 0; i < aImages.length; i++) {
		var object = aImages[i];
		var src = object.getAttribute('src');
		
		var ftype = src.substring(src.lastIndexOf('.'), src.length);
		var oversrc = src.replace(ftype, "_over" + ftype);
		
		object.setAttribute('osrc', src);
		object.setAttribute('hsrc', oversrc);
		
		aPreLoad[i] = new Image();
		aPreLoad[i].src = oversrc;
		
		object.onmouseover = function() {
			this.setAttribute('src', this.getAttribute('hsrc'));
		}	
		
		object.onmouseout = function() {
			this.setAttribute('src', this.getAttribute('osrc'));
		}
	}
}


/*=================================================================
/ ScrollAdd
/=================================================================*/
function initScrollAdd() {
	jQuery.extend(jQuery.easing,{
		easeOutExpo: function (x, t, b, c, d) {
			return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
		}
	});
	
	jQuery('a[href^="#"]').click(function() {
		var id = this.href.substring(this.href.indexOf('#'),this.href.length);
		if(id == "#") {id = "#container"};
		jQuery.scrollTo(jQuery(id), 1000, {easing:'easeOutExpo'});
	});
}

/*=================================================================
/ initUrlCheck
/=================================================================*/
function initUrlCheck() {
	jQuery.each(jQuery('a[href^="/"]'), function () {
		if( this.pathname.match(new RegExp('change|login|regist|resign|remind')) ){
				jQuery(this).attr("href",function(){
					var url = sslurl + this.pathname;
					if(document.all || window.opera) url = sslurl + "/" + this.pathname;
					if(this.hash != "#") url += this.hash;
					if(this.search != "?") url += this.search;
					return url;
				});
		} else {
			jQuery(this).attr("href",function(){
					var url = nonsslurl + this.pathname;
					if(document.all || window.opera) url = nonsslurl + "/" + this.pathname;
					if(this.hash != "#") url += this.hash;
					if(this.search != "?") url += this.search;
					return url;
				});
		}});
}


/*=================================================================
/ loginCheck
/=================================================================*/
function loginCheck() {
	var session_id = jQuery.cookie('session_id');
	var qtlns = new String(jQuery.cookie('qtlns'));
	if(session_id != null && qtlns != null && qtlns.match(new RegExp('[a-zA-Z0-9]{17}'))) {
		return true;
	} else {
		return false;
	}
}


/*=================================================================
/ initCreateLoginForm
/=================================================================*/
function initCreateLoginForm() {
	if(!document.getElementById("loginInfo")) return;
	
	if(loginCheck()) {
		var htmlCode = '<form method="post" action="/app/p/logout">';
		htmlCode += '<div class="loginForm">';
		htmlCode += '<p class="left"><a href="/app/p/mypage/"><img src="/shared/images/common/login_btn_mypage.gif" alt="MY PAGE" width="52" height="17" class="imgover" /></a></p>';
		htmlCode += '<div class="right">';
		htmlCode += '<input type="image" name="logout" src="/shared/images/common/login_btn_logout.gif" alt="LOGOUT" class="imgover" />';
		htmlCode += '</div></div>';
		htmlCode += '</form>';
		
		jQuery("#loginInfo").html(htmlCode);
		return false;
		
	} else {
		var htmlCode = '<div class="loginForm">';
		htmlCode += '<p class="left"><a href="/app/p/login/auth"><img width="52" height="17" class="imgover" alt="JOIN US" src="/shared/images/common/login_btn.gif" osrc="/shared/images/common/login_btn_joinus.gif" hsrc="/shared/images/common/login_btn_joinus_over.gif"/></a></p>';
		htmlCode += '<p class="right"><a href="/app/p/regist/"><img width="52" height="17" class="imgover" alt="JOIN US" src="/shared/images/common/login_btn_joinus.gif" osrc="/shared/images/common/login_btn_joinus.gif" hsrc="/shared/images/common/login_btn_joinus_over.gif"/></a></p>';
		htmlCode += '</div>';
		
		jQuery("#loginInfo").html(htmlCode);
		return false;
	}
}


/*=================================================================
/ initCheckLogin
/=================================================================*/
function initLocation() {
	if(!document.getElementById("headerContent")) return;
	
	var changeObject = jQuery(".headerMenu ul li a");
	changeObject.eq(5).attr('href','/event/');
	if(document.all) {
		changeObject.eq(5).bind("click", function(event){
			event.preventDefault();
			window.location = '/event/';
		});
	};

	var path = window.location.pathname;
	
	if( path.match("project") ) srcChange(changeObject.eq(1));
	if( path.match("grandprix2009") ) srcChange(changeObject.eq(2));
	if( path.match("answers") ) srcChange(changeObject.eq(2));
	if( path.match("eval") ) srcChange(changeObject.eq(2));
	if( path.match("specialweek") ) srcChange(changeObject.eq(2));
	if( path.match("gp2009") ) srcChange(changeObject.eq(2));
	if( path.match("supporters") ) srcChange(changeObject.eq(3));
	if( path.match("campus") ) srcChange(changeObject.eq(4));
	if( path.match("event") ) srcChange(changeObject.eq(5));
	if( path.match("special/") ) srcChange(changeObject.eq(6));
}

function srcChange(changeObject) {
	changeObject.css('text-decoration', "underline");
	return false;
}

/*=================================================================
/ checkCookie
/=================================================================*/
function checkCookie() {
	var visitStatus = jQuery.cookie('count');
	if(visitStatus == null) {
		return "visit_first";
	} else {
		return "visit_already";
	}
}

/*=================================================================
/ writeCookie
/=================================================================*/
function writeCookie() {
	jQuery.cookie("count","visit_already",{expires:30,path:"/"});
	return false;
}

/*=================================================================
/ deleteCookie
/=================================================================*/
function deleteCookie() {
	jQuery.cookie("count", "", { expires: -1 ,path:"/"});
	return false;
}

/*=================================================================
/ popupPointSystem
/=================================================================*/
function popupPointSystem() {
	window.open('/grandprix2009/pointsystem.html', 'pointsystem', 'width=680, height=500, menubar=no, toolbar=no, statusbar=no, scrollbars=yes')
	return false;
}

function popupPointSystemList() {
	window.open('/grandprix2009/pointsystem.html#list', 'pointsystem', 'width=680, height=500, menubar=no, toolbar=no, statusbar=no, scrollbars=yes')
	return false;
}

/*=================================================================
/ link
/=================================================================*/
function supportersLink() {
	var supportersArray = ['','hp','samantha','microsoft','asahi-kasei','jreast','tv-tokyo','eaccess','dentsu','jcer','mec','yanase-recruit','watami','hm','marubeni-recruit','japanet','monexgroup','mori',
												 'itochu','gaba','sojitz','jaeps','bandainamcogames','bcg','ana','nihon-kotsu','yamaha','daiwahouse','tgn','kayac','gree','seibu-group','iij','intel'];
	
	jQuery.each(jQuery('.questionMaster .name a'),function(){
		jQuery(this).attr('href','/supporters/' + supportersArray[jQuery(this).attr('number')] + '.html');
	});
}

/*=================================================================
/ DOM READY
/=================================================================*/
jQuery(document).ready(function(){
	initCreateLoginForm();
	initLocation();
	initRollovers();
	initScrollAdd();
	initUrlCheck();
});