var _toolTip, a, b, r = /^[0-9]*$/;
var bindToolTip = function(){
	var _div = document.getElementById('advancedBlock');
	_div.onmouseover = bindOnMouseMove;
	_div.onmouseout = function(){document.onmousemove = null;};
	var _anchors = _div.getElementsByTagName('img');
	var _body = document.getElementsByTagName('body')[0];
	var _standardBlock = document.getElementById('standardBlock');
	var _advancedBlock = document.getElementById('advancedBlock');
	var _h1 = _standardBlock.scrollHeight;
	_standardBlock.className = "tabVisible";	
	var _h2 = _advancedBlock.scrollHeight;
	_advancedBlock.className = "tabHidden";
	if(_h1 + 80 > _h2){
		_advancedBlock.style.height = _h1 + 80 + 'px';
		_standardBlock.style.height = _h1 + 80 + 'px';
	}else{
			_standardBlock.style.height = _h2 + 'px';
	}
	document.getElementById("_submit").onclick=___submit;
	for(var i=0; i < _anchors.length; i++){
		_anchors[i].onmouseover = new Function('showToolTip(' + i + ')');
		_anchors[i].onmouseout = new Function('hideToolTip(' + i + ')');
		var __span = document.createElement('span');
		var _span = _body.appendChild(__span);
		_span.className = 'toolTip';
		_span.id = 'toolTip' + i;
		_span.innerHTML = _toolTip[i];
	}
}

var showToolTip = function(i){
	var _divToolTip = document.getElementById('toolTip' + i);
	_divToolTip.style.left = mousePos.x -120 + 'px';
	_divToolTip.style.top = mousePos.y + 15 + 'px';
	_divToolTip.style.display = 'block';
}

var hideToolTip = function(i){
	document.getElementById('toolTip' + i).style.display = 'none';
}

var showTab = function (tabid){
	document.getElementById(tabid).className = "tab show";
	document.getElementById(tabid+"Block").className = "tabVisible";
}
var hideTab = function (tabid){
	document.getElementById(tabid).className = "tab";
	document.getElementById(tabid+"Block").className = "tabHidden";
}

var valid = function (value, count){
    if(value == "")return false;
	if(!r.test(value) || value < b[i])return false;
	return true;
}
var formatNum = function (num){
	var re = new RegExp().compile( "(\\d)(\\d{3})(,|\\.|$) ");
    num += " ";  
    while(re.test(num))
        num = num.replace(re, "$1,$2$3 ")
    return num;
} 

var toStandard = function (){
	hideTab('advanced');
	showTab('standard');
}
var toAdvanced = function (){
	hideTab('standard');
	showTab('advanced');
}
var ___submit = function (){
	if(cs())
	document.getElementById("form").submit();
}
function cs(){
	var flag = true;
	for(i =0; i <a.length; i++){
		var error = document.getElementById(a[i]+"_error");		
		if(!valid(document.getElementById(a[i]).value, i)){
			flag = false;
			if(error.innerHTML.indexOf('This value must be') == -1){
				error.innerHTML += "<br/><b>" + b[i] + "</b>以上の値を入力してください。" ;
				error.style.color = "red";
			}	
		}else{
			error.innerHTML = error.innerHTML.split(")")[0] + ")";
			error.style.color = "black";
		}
	}
	if(!flag){
		document.getElementById('errorDiv').style.visibility = 'visible';
	}else{
		document.getElementById('errorDiv').style.visibility = 'hidden';
	}
	return flag;
}
if(window.location.href.indexOf("roic") != -1){
	AddToOnload(bindToolTip);
}
if(window.location.href.indexOf("sharepoint-data-protection-roic") != -1){
	a = new Array("num_employees", "num_admin", "num_wfe", "num_servers", "num_hosts", "num_dbs", "ave_dbsize", "recovery_time");
	b = new Array(1, 1, 0, 0, 0, 1, 1, 1);
//	a = new Array("num_employees", "num_admin", "num_wfe", "web_app", "site_coll", "site", "list");
//	b = new Array(1, 1, 0, 1, 1, 1, 1);
	_toolTip = new Array("TCO 及びROI 計算プログラムの範囲となります。既定値は標準分析の値です。",
					"企業リサーチ結果から取得した既定値です。これには、賃金、残業代、利益、昇給分などが含まれます。",
					"既定値は米ガートナー社より取得しています。それ以上の分析については、IDC、Alinean、Nucleus Research による様々な業界リサーチの結果を基に作成されています。",
					"既定値はお客様のデータを基に作成された概算です。",
					"既定値は Microsoft 社のデータを基に作成されています。",
					"特定のユーザー コミュニティで必要とされる自由度の高いコンテンツ リカバリーの実行率です。既定値はお客様のデータを基に作成されています。",
					"これには、ユーザーがごみ箱から復旧出来ない、またはドキュメント ライブラリ/サイトすべてのリストアが必須、などのシナリオが含まれます。自由度の高いリカバリーが実行される確率です。既定値はお客様のデータを基に作成されています。");
}
if(window.location.href.indexOf("sharepoint-administration-roic") != -1){
	a = new Array("num_employees", "num_admin", "num_wfe", "web_app", "site_coll", "site", "list");
	b = new Array(1, 1, 0, 1, 1, 1, 1);
//	a = new Array("num_employees", "num_admin", "num_wfe", "cost_tier1", "cost_tier2");
//	b = new Array(1, 1, 1, 1, 1);
	_toolTip = new Array("TCO 及びROI 計算プログラムの範囲となります。既定値は標準分析の値です。",
					"企業リサーチ結果から取得した既定値です。これには、賃金、残業代、利益、昇給分などが含まれます。",
					"既定値はお客様のデータを基に作成されています。",
					"“再構築タスク” にはサイトの昇格、または新しい Content Database へのサイト コレクションの移動等の環境トポロジーの変更が含まれます。",
					"１つのライブラリから他のライブラリへのリストの移動、または異なるサイト コレクションへのサイトの移動等が含まれます。");
}
if(window.location.href.indexOf("sharepoint-archiving-roic") != -1){
	a = new Array("num_employees", "num_admin", "num_wfe", "cost_tier1", "cost_tier2");
	b = new Array(1, 1, 1, 100, 100);
//	a = new Array("num_employees", "num_admin", "num_wfe", "num_servers", "num_hosts", "num_dbs", "ave_dbsize", "recovery_time");
//	b = new Array(1, 1, 0, 0, 0, 1, 1, 1);
	_toolTip = new Array("TCO 及びROI 計算プログラムの範囲となります。既定値は標準分析の値です。",
						"既定値はお客様のデータを基に作成されています。");
}
