/* ローンシミュレーションの結果値をAJAXを利用し 処理　：　元鐘云 */


var isSafari;
var isOpera;
var correctWidth = 918;

function adjustPos(elmt) {
	//alert(elmt);
	var obj = new Object();
	if (!isSafari && !isOpera) {
		obj.x = document.documentElement.clientWidth || document.body.clientWidth || document.body.scrollWidth;
		obj.y = document.documentElement.clientHeight || document.body.clientHeight || document.body.scrollHeight;
	} else {
		obj.x = window.innerWidth;
		obj.y = window.innerHeight;
	}
	var leftPoint = (obj.x - correctWidth) / 2;
	if (leftPoint < 0) {
		leftPoint = 0;
	}
	
	document.getElementById('coverLayer').style.width =  parseInt(obj.x) + 'px';
	document.getElementById('coverLayer').style.height =  parseInt(obj.y + 50) + 'px';
	document.getElementById(elmt).style.left =  parseInt(leftPoint) + 'px';

}

function getXhrObj(){
	var xhrObj;
	if(window.XMLHttpRequest){
		try{
			xhrObj = new XMLHttpRequest();
		}catch(e){
			xhrObj = false;
		}
	}else if(window.ActiveXObject){
		try{
			xhrObj = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e){
			try{
				xhrObj = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e){
				xhrObj = false;
			}
		}
	}
	return xhrObj;
}

function loanSimultCheck(){
	
	var kakaku='';
	var atama_kin=''; 
	var bonus_kin='';
	var kinri='';
	var return_kikan='';
	
	//価格
	kakaku = document.getElementById("kakaku").value;
	//頭金
	atama_kin = document.getElementById("atamaKin").value;
	//ボーナス返済
	bonus_kin = document.getElementById("bonusKakaku").value;
	//金利
	kinri = document.getElementById("kinri").value;
	//返済期間
	return_kikan = document.getElementById("returnKikan").value;
	
	//パラメータとしてURLにつける文言を作る
	var param;
	
	//それぞれの項目を必須をチェックする(全ての項目が必須)
	if(kakaku == null || kakaku == ''){
		alert("物件価格を入力してください");
		return false;
	} else {
	}
	
	if(atama_kin == null || atama_kin == ''){
		alert("頭金を入力してください");
		return false;
	} else {}
	
	if(bonus_kin == null || bonus_kin == ''){
		alert("ボーナス返済を入力してください");
		return false;
	} else {
	}
	
	if(kinri == null || kinri == ''){
		alert("金利を入力してください");
		return false;
	} else {
	}
	
	if(return_kikan == null || return_kikan == ''){
		alert("返済期間を入力してください");
		return false;
	} else {
	}
	
	//全角チェックを行う
	var kakaku_chk = trim(kakaku);
	var atama_kin_chk = trim(atama_kin);
	var bonus_kin_chk = trim(bonus_kin);
	var kinri_chk = trim(kinri);
	var return_kikan_chk = trim(return_kikan);
	
	/**
	 * 半角&数字チェック
	 * 全角の数字、カタカナ、英語、特殊文字はエラー処理
	 * */
	if((/[^0-9.]/gi.test(kakaku_chk))){
		 alert("価格を半額の数字で入力してください。");
		 return false;
	 } else {
		
	 }
	if((/[^0-9.]/gi.test(atama_kin_chk))){
		alert("頭金を半額の数字で入力してください。");
		 return false;
	 } else {
		 
	 }
	if((/[^0-9.]/gi.test(bonus_kin_chk))){
		alert("ボーナス返済を半額の数字で入力してください。");
		 return false;
	 } else {
	 }
	if((/[^0-9.]/gi.test(kinri_chk))){
		alert("金利を半額の数字で入力してください。");
		 return false;
	 } else {
	 }
	if((/[^0-9]/gi.test(return_kikan_chk))){
		alert("返済期間を半額の数字で入力してください。");
		 return false;
	 } else {
	 }
	
	return true;
}

function loanSimult(){
	
	var kakaku='';
	var atama_kin=''; 
	var bonus_kin='';
	var kinri='';
	var return_kikan='';

	//価格
	kakaku = document.getElementById("kakaku").value;
	//頭金
	atama_kin = document.getElementById("atamaKin").value;
	//ボーナス返済
	bonus_kin = document.getElementById("bonusKakaku").value;
	//金利
	kinri = document.getElementById("kinri").value;
	//返済期間
	return_kikan = document.getElementById("returnKikan").value;
	
	//パラメータとしてURLにつける文言を作る
	var param;
	
	//それぞれの項目を必須をチェックする(全ての項目が必須)
	if(kakaku == null || kakaku == ''){
		alert("物件価格を入力してください");
		return;
	} else {
		param = '?kakaku='+kakaku;
	}
	
	if(atama_kin == null || atama_kin == ''){
		alert("頭金を入力してください");
		return;
	} else {
		param += '&atama_kin='+atama_kin;
	}
	
	if(bonus_kin == null || bonus_kin == ''){
		alert("ボーナス返済を入力してください");
		return;
	} else {
		param += '&bonus_kin='+bonus_kin;
	}
	
	if(kinri == null || kinri == ''){
		alert("金利を入力してください");
		return;
	} else {
		param += '&kinri='+kinri;
	}
	
	if(return_kikan == null || return_kikan == ''){
		alert("返済期間を入力してください");
		return;
	} else {
		param += '&return_kikan='+return_kikan;
	}
	
	//全角チェックを行う
	var kakaku_chk = trim(kakaku);
	var atama_kin_chk = trim(atama_kin);
	var bonus_kin_chk = trim(bonus_kin);
	var kinri_chk = trim(kinri);
	var return_kikan_chk = trim(return_kikan);
	
	/**
	 * 半角&数字チェック
	 * 全角の数字、カタカナ、英語、特殊文字はエラー処理
	 * */
	if((/[^0-9.]/gi.test(kakaku_chk))){
		 alert("価格を半額の数字で入力してください。");
		 return;
	 } else {
		
	 }
	if((/[^0-9.]/gi.test(atama_kin_chk))){
		alert("頭金を半額の数字で入力してください。");
		 return;
	 } else {
		 
	 }
	if((/[^0-9.]/gi.test(bonus_kin_chk))){
		alert("ボーナス返済を半額の数字で入力してください。");
		 return;
	 } else {
		 
	 }
	if((/[^0-9.]/gi.test(kinri_chk))){
		alert("金利を半額の数字で入力してください。");
		 return;
	 } else {
		 
	 }
	if((/[^0-9]/gi.test(return_kikan_chk))){
		alert("返済期間を半額の数字で入力してください。");
		 return;
	 } else {
		 
	 }
  var xhrObj = getXhrObj();
 
  xhrObj.onreadystatechange = function(){
	  
	  if(xhrObj.readyState == 4){
		  if(xhrObj.status == 200){
			 var name = decodeURI(xhrObj.responseText);
			 if(name.length > 0){
				 
				 var strTemp = decodeURI(xhrObj.responseText);

				 if (strTemp.indexOf("loan_result_kkk") > -1) {
					 var strQueryString = strTemp.substr(strTemp.indexOf("loan_result_kkk")).toLowerCase();
					 var aQueryString = strQueryString.split(":");
						for ( var iParam = 0; iParam < aQueryString.length; iParam++) {
								aQueryString[iParam];
								
								//毎月の支払価格
								result = aQueryString[1];
								//総ボーナス返済
								//result2 = aQueryString[2];
								//年間の支払い価格
								result2 = aQueryString[2];
								//総額
								result3 = aQueryString[3];

								document.getElementById("each_month").innerHTML = "<span class='roan_result_01'>"+"毎月の支払い"+"</span>"+"："+decodeURL(result)+"円";
								//詳細トップ画面に表示する
								//document.getElementById("eachMonth").value = decodeURL(result);
								
								//document.getElementById("bonus_return").innerHTML = "<span class='roan_result_02'>"+"ボーナス返済"+"</span>"+"："+decodeURL(result2)+"円";
								document.getElementById("year_money").innerHTML = "<span class='roan_result_03'>"+"年間の支払い"+"</span>"+"："+decodeURL(result2)+"円";
								document.getElementById("all_money").innerHTML = "<span class='roan_result_04'>"+"総返済額"+"</span>"+"："+decodeURL(result3)+"円";
								
								break;
							}
				 	   }
			 	}
		    }
		}
  }

  xhrObj.open("post","loansimultajax.html"+param);
  xhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded;charset=UTF-8;');
  xhrObj.send(null);
}        
/**
 * decode処理
 * 
 * Ajaxの結果の中、特集文字が含まれていたためdecode処理を行う
 * */
function decodeURL(str)
{
    var s0, i, j, s, ss, u, n, f;
    s0 = "";                // decoded str
    for (i = 0; i < str.length; i++){   // scan the source str
        s = str.charAt(i);
        if (s == "+"){s0 += " ";}       // "+" should be changed to SP
        else {
            if (s != "%"){s0 += s;}     // add an unescaped char
            else{               // escape sequence decoding
                u = 0;          // unicode of the character
                f = 1;          // escape flag, zero means end of this sequence
                while (true) {
                    ss = "";        // local str to parse as int
                        for (j = 0; j < 2; j++ ) {  // get two maximum hex characters for parse
                            sss = str.charAt(++i);
                            if (((sss >= "0") && (sss <= "9")) || ((sss >= "a") && (sss <= "f"))  || ((sss >= "A") && (sss <= "F"))) {
                                ss += sss;      // if hex, add the hex character
                            } else {--i; break;}    // not a hex char., exit the loop
                        }
                    n = parseInt(ss, 16);           // parse the hex str as byte
                    if (n <= 0x7f){u = n; f = 1;}   // single byte format
                    if ((n >= 0xc0) && (n <= 0xdf)){u = n & 0x1f; f = 2;}   // double byte format
                    if ((n >= 0xe0) && (n <= 0xef)){u = n & 0x0f; f = 3;}   // triple byte format
                    if ((n >= 0xf0) && (n <= 0xf7)){u = n & 0x07; f = 4;}   // quaternary byte format (extended)
                    if ((n >= 0x80) && (n <= 0xbf)){u = (u << 6) + (n & 0x3f); --f;}         // not a first, shift and add 6 lower bits
                    if (f <= 1){break;}         // end of the utf byte sequence
                    if (str.charAt(i + 1) == "%"){ i++ ;}                   // test for the next shift byte
                    else {break;}                   // abnormal, format error
                }
            s0 += String.fromCharCode(u);           // add the escaped character
            }
        }
    }
    return s0;
} 

/**  
 *　空白を無くす処理
 *  ^ : 文字列スタート  
    \s* : 任意の空白文字数, \s：空白, *：任意の数  
    | : OR
    $ : 文字列のエンド  
    g : 全ての文字列を検査し変換する  
    '' :　変換する文字列 
 */  
function trim(domein) {  
    return domein.replace(/(^\s*)|(\s*$)/g, "");  
} 

/**
 * ローンシミュレーションの閉じるボタン
 * */
function closeSiku(flg) {
	
	document.getElementById('roan_simulation').style.display='none';
	document.getElementById('chk_flg').value = flg;
	var bkId = document.getElementById("bukkenGB").value;

	//alert("フラグチェック："+flg+"物件ID:"+bkId);
	document.loan_form.method = "post";
	document.loan_form.action = "../detail_"+bkId+"/";
	document.loan_form.target = "_self";
	document.loan_form.submit();
}

/**
 * ローンシミュレーションのアクション処理
 */
function loan_simul(flg) {

	// 各項目の値をチェック。
	var check = loanSimultCheck();
	
	//　項目チェックで一つでも間違った値があった場合。
	if (check == false){
		//　何の処理も行わない。
	} else {	
		document.getElementById('chk_flg').value = flg;
		var bkId = document.getElementById("bukkenGB").value;

		//alert("フラグチェック："+flg+"物件ID:"+bkId);
		document.loan_form.action = "../detail_"+bkId+"/";
		document.loan_form.target = "_self";
		document.loan_form.method = "post";
		document.loan_form.submit();
	}
}

/**
 * ローンシミュレーションのアクション処理
 */
function loan_simul_pview(flg, type ) {

	document.getElementById('chk_flg').value = flg;
	var bkId = document.getElementById("bukkenGB").value;

	//alert("フラグチェック："+flg+"物件ID:"+bkId);
	document.loan_form.method = "post";
	if('1' == type){
		document.loan_form.action = "../detail_"+bkId+"_1/topm_view.html";
	} else if('2' == type) {
		document.loan_form.action = "../detail_"+bkId+"_1/toph_view.html";
	} else if('3' == type) {
		document.loan_form.action = "../detail_"+bkId+"_1/topl_view.html";
	}
	document.loan_form.target = "_self";
	document.loan_form.submit();

}

