﻿//コードデータフォーマット
var data_format_arr = new Array();
data_format_arr[0] = new Array("DLRCD", "");
data_format_arr[1] = new Array("STRCD", "");
data_format_arr[2] = new Array("CARCD", "");
data_format_arr[3] = new Array("LNGCD", "");
data_format_arr[4] = new Array("LGNSTAT", "");


//サーチ情報をデコード（あらかじめ記憶しておく）
var get_data_str = decodeURIComponent(location.search);

//************Query用関数


//★送信されたデータを分解・抽出
function extractSentData(ARR){

	//デコードされたサーチ情報からデータを抽出
	var ext_data_arr = extractData(get_data_str);

	//抽出したデータをフォーマット化
	formatData(ext_data_arr);
	

	//データ送る
	for ( var i = 0; i<data_format_arr.length; i++ ) {
		ARR[i] = new Array( data_format_arr[i][0], data_format_arr[i][1]);
	}
}


//★デコードされたサーチ情報（文字列）からデータを抽出（配列）
//	抽出したデータを返す
function extractData(INFO_DEC){

	//一文字目の？を削除
	var data_dec = INFO_DEC.replace("?", "");

	//アンバサンド（&）区切りで配列へ
	var mid_data_arr; 
	mid_data_arr = data_dec.split("&");

	//イコール(=)区切りで配列へ	[0]:code, [1]:data
	var ext_data_arr = new Array();
	for ( var i = 0; i < mid_data_arr.length; i++ ){
		ext_data_arr[i] = mid_data_arr[i].split("=");
	}
	return ext_data_arr;

}

//★抽出したデータをフォーマット化
function formatData(EX_DATA_ARR){

	//フォーマット化された配列に入れ込んで行く
	for ( var i = 0; i<EX_DATA_ARR.length; i++ ) {
		for ( var j = 0; j<data_format_arr.length; j++) {
			if ( EX_DATA_ARR[i][0] == data_format_arr[j][0] ){
				data_format_arr[j][1] = EX_DATA_ARR[i][1];
			}
		}
	}
}


//★POSTメソッド用formタグ記述関数
function writeformHTML(OBJ, ARR){
	var strObjTag = "";

	strObjTag += '<form id="data_list">';

	//[0]DLRCD [1]STRCD [2]CARCD [3]LNGCD [4]LGNSTAT
	for ( var i = 0; i<ARR[3].length; i++){
		strObjTag += '<input type="hidden" name="';
		strObjTag += ARR[3][i][0] + '"';
		if( ARR[3][i][1] == undefined ){ ARR[3][i][1] = ""; }
		if( i == 2 ){
		//[2]CARCDには強制的に車種名を入れる
			strObjTag += ' value="' + ARR[0][0] + '">';
		} else {
			strObjTag += ' value="' + ARR[3][i][1] + '">';
		}
	}
	//GRDCDを追加
	strObjTag += '<input type="hidden" name="GRDCD" value="' + ARR[0][1] + '">';

	//見積画面に表示されるボディカラー、インテリアカラー、販売型式
	strObjTag += '<input type="hidden" name="Est.Color" value="' + ARR[0][6] + "/" +ARR[0][7] + '">';	// 2006/09/29 追加
	//strObjTag += '<input type="hidden" name="Est.BodyColor" value="' + ARR[0][6] + '">';			// 2006/09/29 Est.Colorに統合
	//strObjTag += '<input type="hidden" name="Est.InteriorColor" value="' + ARR[0][7] + '">';		// 2006/09/29 Est.Colorに統合
	//strObjTag += '<input type="hidden" name="Est.ReferenceNumber" value="' + ARR[0][8] + '">';		// 2006/09/29 削除

	//見積画面に表示されるオプション名称
	var num_mop = 1;	//連番は0001～
	var num_dop = 1;	//連番は0001～
	var form_num_mop;
	var form_num_dop;

	for ( var i = 0; i<ARR[2].length/4; i++){
		strObjTag += '<input type="hidden" name="';
		if ( ARR[2][4*i+3] == 1 || ARR[2][4*i+3] == 2 ) {
		//MOP
			form_num_mop = to4Digits_addZero(num_mop);
			strObjTag += 'Est.Mop' + form_num_mop + '"';
			num_mop++;
		} else if ( ARR[2][4*i+3] == 3 || ARR[2][4*i+3] == 4 || ARR[2][4*i+3] == 5 ){
		//DOP
			form_num_dop = to4Digits_addZero(num_dop);
			strObjTag += 'Est.Dop' + form_num_dop + '"';
			num_dop++;
		}
		strObjTag += ' value="' + ARR[2][4*i] + '">';
	}
	strObjTag += '</form>';

	OBJ.write(strObjTag);

	//alert(strObjTag);
	
	return strObjTag;
}


//★前ゼロ付加、４桁にする関数
function to4Digits_addZero(NUM){
	var ret_num_str;
	var set_zero_arr = new Array("000", "00", "0", "");
	ret_num_str = "" + NUM;
	
	//桁数チェックして、４桁になるように前ゼロを付与
	if ( ret_num_str.length <5 ){
		ret_num_str = set_zero_arr[ret_num_str.length-1] + ret_num_str;
	}

	return ret_num_str;	
}

//★見積依頼ページへのポスト
function postMethod(ARR, OBJ){
	if ( ARR[4] == true ){
	//オーナーサイト連携ONの時
		//データ送信
		var targetname = "lexus_quote";

		if ( true /* ARR[3][4][1] == "1" */ ){		// 2006/09/24 ログオンステータスの値を無視するように変更
		//ログオンしている場合
			try{
				if ( ARR[5].opener != undefined ){
				//オーナーサイト経由
					if ( getAry[5].opener.name != "" ){
					//ウィンドウ名あり
						targetname = ARR[5].opener.name;
					} else {
					//ウィンドウ名無し
						ARR[5].opener.name = targetname;
					}
				}
			}catch(e){
			//オーナーサイトを閉じてる時はエラー
				//alert(e);
			}
		}


		//オーナーサイト（レクサスコーポレートサイト）にフォーカスON
		var w = OBJ.open("", targetname);
		forwordData("data_list", "../../../../cn/dealerrequest/default.asp", targetname);
		w.focus();

	}
}


//★POSTメソッドでフォワード
function forwordData(FROM_NAME, ACTION_NAME, TARGET_NAME){
	var form =  document.forms[FROM_NAME]
	form.action = ACTION_NAME;
	form.target = TARGET_NAME;
	form.method = "POST";
	form.submit();	//★送信注意
//	alert("ﾎﾟｽﾄ処理を実行\nﾀｰｹﾞｯﾄ：" + TARGET_NAME);
}
