var COOKIE_KENTO_ALERT_BUK = 'buksvfst';
var COOKIE_KENTO_ALERT_KAI = 'kaisvfst';
var COOKIE_JOKEN_ALERT = 'buksvjk';
var COOKIE_KENTO_BUKKEN = 'ktbukno';
var COOKIE_KENTO_KAIIN = 'ktkaino';
var sitecd = '';

// 有効期限（日）を指定してクッキー書き込み
function setCookieExp(kword, kdata, kday)
{
	sday = new Date();
	sday.setTime(sday.getTime() + (kday * 1000 * 60 * 60 * 24));
	s2day = sday.toGMTString();
	document.cookie = kword + "=" + escape(kdata) + ";path=/;expires=" + s2day;
}

// 有効期限を永久（論理）としてクッキー書き込み
function setCookiePerm(kword, kdata)
{
	 var s2day = "Tue, 1-Jan-2030 00:00:00 GMT";
	 document.cookie = kword + "=" + escape(kdata) + ";path=/;expires=" + s2day;
}

//クッキー取得
function getCookie(kword)
{
	if(typeof(kword) == "undefined") return "";
	kword = kword + "=";
	kdata = "";
	scookie = document.cookie + ";";
	start = scookie.indexOf(kword);
	if (start != -1)
	{
		end = scookie.indexOf(";", start);
		kdata = unescape(scookie.substring(start + kword.length, end));  // データ取り出し
	}
	return kdata;
}

//検討中リストに登録するのが初回かどうか判定
function isKentoRegistFirst(item){
	var flg='0';
	if (item=='me'){
		flg = getCookie(COOKIE_KENTO_ALERT_KAI);
	} else {
		flg = getCookie(COOKIE_KENTO_ALERT_BUK);
	}
	return flg=='1' ? false : true;
}

// 検討中登録完了のオーバーレイを閉じる
function closeKentoBox(item)
{
	if(getElement('kento_subwin_first_check').checked){
		// クッキー情報に登録完了画面の表示が初回ではないことを登録
		if (item=='me'){
			setCookiePerm(COOKIE_KENTO_ALERT_KAI, '1');
		} else {
			setCookiePerm(COOKIE_KENTO_ALERT_BUK, '1');
		}
	}
	// オーバーレイを閉じる
	cancelParam();
}

// 条件保存するのが初回かどうか判定
function isCondRegistFirst(){
	var flg = getCookie(COOKIE_JOKEN_ALERT);
	return flg=='1' ? false : true;
}

// FORMからINPUT項目の値を取得
function getInputValue(name){
	for (var i=0; i<document.forms.length; i++){
		var fo = document.forms[i];
		if (fo.elements[name] && fo.elements[name].value && fo.elements[name].value!=''){
			return fo.elements[name].value;
		}
	}
	return '';
}

// 保存完了のオーバーレイを閉じる
function closeCondBox()
{
	if(getElement('cond_subwin_first_check').checked){
		// クッキー情報に登録完了画面の表示が初回ではないことを登録
		setCookiePerm(COOKIE_JOKEN_ALERT, '1');
	}
	// オーバーレイを閉じる
	cancelParam();
}

// オーバレイの表示
function displaySaveOverlay(layerWrapName){
	var layerWrap = getElement(layerWrapName);
	layerWrap.style.display = "block";
	layerWrap.style.top = ( document.documentElement.scrollTop + 200 ) + "px";
	layerWrap.style.left = ( ( screen.width / 2 ) - ( layerWrap.offsetWidth / 2 ) ) + "px";
	layerWrap.style.opacity = 1;
}

// 検討中オーバーレイ用HTML取得関数セット
function getKentoOverlayElement( url, iconType )
{
	var imgName = "loadingImg";
	// オーバーレイの初期化
	var layerWrap = getElement("layerWrap");
	layerWrap.style.display = "none";
	layerWrap.style.opacity = 0;
	layerWrap.style.top = "0px";
	layerWrap.style.left = "0px";
	createAjaxObject( PREFIX_OVERLAY, url, getParam( null, null ), 0, imgName,
		function()	//onStartFunction
		{

		},
		function( htmlString )	//onCompleteFunction
		{
			// ロード中の画像のフェードアウト
			timerObject[ imgName ] = setInterval( function(){ fadeoutLoadingImage( imgName ); }, 50 );
			var layerWrap = getElement("layerWrap");
			if( htmlString )
			{
				// オーバーレイに取得したHTMLをセット
				setInnerHTML( layerWrap, htmlString );
				// HIDDENを変数にセットする
				var item = getElement("KENTO_REGIST_ITEM").value;
				var item_list = getElement("KENTO_REGIST_KENTO_LIST").value;
				var msg = getElement("KENTO_REGIST_MSG").value;
				var kentoAry = item_list.split(",");
				// ITEM+ARTを除去
				for(var i=0;i<kentoAry.length;i++)
					if (kentoAry[i].length>=4) kentoAry[i] = kentoAry[i].substring(4);
				if (!msg){
					// オーバーレイの中のボックスを初回か否かで変更する
					if (isKentoRegistFirst(item)){
						getElement('kentoWrapFirst').style.display = "block";
					} else{
						getElement('kentoWrapNormal').style.display = "block";
					}
					// オーバーレイの表示
					displaySaveOverlay("layerWrap");
					// 3秒後にオーバーレイを消去する設定（2.5秒たつとフェードアウト開始）
					if (!isKentoRegistFirst(item)){
						// 初回以外の時にオーバーレイを消去する
						clearTimeout( timerObject["timerWrapDelete"] );
						delete timerObject[ "timerWrapDelete" ];
						timerObject[ "timerWrapDelete" ] = setTimeout(
							function(){
								timerObject[ "layerWrap" ] = setInterval( function(){ fadeoutLoadingImage( "layerWrap" ); }, 50 );
							}
						, 2500);
					}
					// グローバル変数[sitecd]にサイトコードをセットする
					sitecd = getInputValue('SITECD');
					if (sitecd!=''){
						// 一覧イメージ変更
						addKentoImgsList(kentoAry,iconType);
						// 保存ボタンのイメージ変更
						modifyKentoRegistImgsList(kentoAry,iconType);
					}
					// ヘッダの検討中件数の更新
					var headerKentoCount = getElement("header_kento_count");
					if (headerKentoCount){
						headerKentoCount.innerHTML = kentoAry.length;
					}
				} else {
					// オーバーレイに失敗時のHTMLをセット
					getElement('kentoWrapError').style.display = "block";
					// オーバーレイの表示
					displaySaveOverlay("layerWrap");
				}
			} else {
				// オーバーレイに失敗時のHTMLをセット
				getElement('kentoWrapError').style.display = "block";
				// オーバーレイの表示
				displaySaveOverlay("layerWrap");
			}
		}
	);
}

// 条件保存オーバーレイ用HTML取得関数セット
function getCondOverlayElement( url )
{
	var imgName = "loadingImg";
	// オーバーレイの初期化
	var layerWrap = getElement("layerWrap");
	layerWrap.style.display = "none";
	layerWrap.style.opacity = 0;
	layerWrap.style.top = "0px";
	layerWrap.style.left = "0px";
	createAjaxObject( PREFIX_OVERLAY, url, getParam( null, null ), 0, imgName,
		function()	//onStartFunction
		{

		},
		function( htmlString )	//onCompleteFunction
		{
			// ロード中の画像のフェードアウト
			timerObject[ imgName ] = setInterval( function(){ fadeoutLoadingImage( imgName ); }, 50 );
			var layerWrap = getElement("layerWrap");
			if( htmlString )
			{
				// オーバーレイに取得したHTMLをセット
				setInnerHTML( layerWrap, htmlString );
				// HIDDENを変数にセットする
				var msg = getElement("COND_REGIST_MSG").value;
				if (!msg){
					// オーバーレイの中のボックスを初回か否かで変更する
					if (isCondRegistFirst()){
						getElement('condWrapFirst').style.display = "block";
					} else{
						getElement('condWrapNormal').style.display = "block";
					}
					// オーバーレイの表示
					displaySaveOverlay("layerWrap");
					// 3秒後にオーバーレイを消去する設定（2.5秒たつとフェードアウト開始）
					if (!isCondRegistFirst()){
						// 初回以外の時にオーバーレイを消去する
						clearTimeout( timerObject["timerWrapDelete"] );
						delete timerObject[ "timerWrapDelete" ];
						timerObject[ "timerWrapDelete" ] = setTimeout(
							function(){
								timerObject[ "layerWrap" ] = setInterval( function(){ fadeoutLoadingImage( "layerWrap" ); }, 50 );
							}
						, 2500);
					}
				} else {
					// オーバーレイに失敗時のHTMLをセット
					getElement('condWrapError').style.display = "block";
					// オーバーレイの表示
					displaySaveOverlay("layerWrap");
				}
			} else {
				// オーバーレイに失敗時のHTMLをセット
				getElement('condWrapError').style.display = "block";
				// オーバーレイの表示
				displaySaveOverlay("layerWrap");
			}
		}
	);
}

// 検討中に物件・会員を登録する
function addKento(kento, iconType){
	// パラメータ生成
	paramObject["SITECD"] = getInputValue('SITECD');
	paramObject["ITEM"] = getInputValue('ITEM');
	paramObject["ART"] = getInputValue('ART');
	paramObject["BUKKEN"] = kento;
	// オーバーレイ表示
	getKentoOverlayElement( '/psl/exam/regist', iconType );
}

// 検討中に物件・会員を登録する（一括）
function addKentoPlural(type,iconType){
	var obj = getCheckedBoxInfo( "list[]", type );
	if( obj.count < 1 ) {
		obj.unCheckedWarning();
		return;
	}
	var kento = '';
	for (var i=0; i<obj.list.length; i++) {
		kento += ','+obj.list[i].value;
	}
	kento = kento.substring(1);
	addKento(kento, iconType);
}

function addKentoPluralBukken(iconType){
	addKentoPlural('物件',iconType);
}

function addKentoPluralEstate(){
	addKentoPlural('会員');
}

function addKentoPluralEstate(iconType){
	addKentoPlural('会員', iconType);
}

var condDeniedQuery ={
	'EKI_PAGENO':true,
	'EKI_BASE':true
}

// 条件を保存する
function addCond(fo){
	// パラメータ生成
	var inputs = document.forms[fo].elements;
	var paramName = null;
	for (i=0;i<inputs.length;i++) {
		var input = inputs[i];
		paramName = input.name;
		if (!condDeniedQuery[paramName]){
			if (paramName=='EKI') {
				// 駅の特殊処理（配列表現でなければならない）
				paramName = 'EKI[]';
			}
			var value = '';
			if (input.type=='radio' || input.type=='checkbox'){
				if (!input.checked){
					// チェックされていない場合は処理をスキップ
					continue;
				}
			}
			if (paramObject[paramName]){
				// 複数クエリーはカンマ区切りで１つにまとめる
				paramObject[paramName] = paramObject[paramName] + ',' + input.value;
			} else {
				paramObject[paramName] = input.value;
			}
		}
	}
	// オーバーレイ表示
	getCondOverlayElement( '/psl/cond/regist' );
}

function setIconHTML( targetElement, src, alt )
{
	var elem = targetElement;
	if( typeof( targetElement ) == "string" ) elem = document.getElementById( targetElement );

	if( elem )
	{
		var imgString = "<li><img src='" + src + "' alt='" + alt + "' ></li>";

		elem.innerHTML = imgString;
	}
}

function addEturanImg(parent)
{
    psSitecd = getInputValue('SITECD');
    setIconHTML(parent, "/images/" + psSitecd + "/new/txt/txt_search_result05.gif", "閲覧済み");
}

function addKentoImg(parent)
{
    setIconHTML(parent, "/images/" + psSitecd + "/new/txt/txt_search_result06.gif", "保存済み");
}

function addEturanLargeImg(parent)
{
    psSitecd = getInputValue('SITECD');
    setIconHTML(parent, "/images/" + psSitecd + "/new/txt/txt_search_result05_01.gif", "閲覧済み");
}

function addKentoLargeImg(parent)
{
    setIconHTML(parent, "/images/" + psSitecd + "/new/txt/txt_search_result06_01.gif", "保存済み");
}


function addKentoBukkenDetailImg(element)
{
	html = '<img src="/images/common/btn/btn_article_preserved_off.gif" alt="保存済み" width="235" height="47" class="roll" onMouseOver="imgRoll(this,1);" onMouseOut="imgRoll(this,0);"/>';
	for(var i=1; i<=2; i++){
		var element_name = element+'_'+i;
		if (document.getElementById( element_name )){
			setInnerHTML(element_name, html);
		}
	}
}

function addKentoCommonFolderImg(parent){
	html = '<img src="/images/common/btn/added_candidate.gif" alt="検討中リストに追加済み">';
	setInnerHTML(parent, html);
}

function addKentoEstateDetailImg(parent)
{
	html = 'リストに登録されています';
	setInnerHTML(parent, html);
}

function addKentoRegistImg(parent)
{
	html = '<img src="/images/' +  sitecd + '/new/btn/btn_search_result01.gif" alt="保存済み" width="93" height="19" style="cursor:auto"/>';
	setInnerHTML(parent, html);
}

function getInputList( Name )
{
    var obj = new Object();
    obj.list = new Array();
    var boxArray = document.getElementsByName( Name );
    for( var i = 0; i < boxArray.length; i++ )
    {
        if( boxArray[ i ].type == "checkbox" || boxArray[ i ].type == "hidden" || boxArray[ i ].type == "text")
        {
            obj.list.push( boxArray[ i ] );
        }
    }
    obj.count = obj.list.length;
    return obj;
}

function addIconImgsList(func, prefix, targetList)
{
	obj = getInputList("list[]");
	for (var i=0; i<obj.list.length; i++) {
		for(var j=0;j<targetList.length;j++){
			if(obj.list[i].value==targetList[j]){
				func.method(prefix+obj.list[i].value);
				break;
			}
		}
	}
}

function addIconImgs(func, prefix){

	var obj = getCheckedBoxInfo( "list[]", "" );
	if( obj.count < 1 )
	{
		return;
	}
	var paramArray = new Array();
	for( var i = 0; i < obj.list.length; i++ )
	{
		func.method(prefix+obj.list[ i ].value);
	}
}


function addEturanImgs()
{
	var func = new Object();
	func.method = addEturanImg;
	addIconImgs(func, 'eturan_icons_');
}

function addKentoImgs()
{
	var func = new Object();
	func.method = addKentoImg;
	addIconImgs(func, 'kento_icons_');
}

function addKentoImgsList(targetList, iconType)
{
	var func = new Object();
	if (iconType=='l'){
		func.method = addKentoLargeImg;
	} else if (iconType=='bd'){
		func.method = addKentoBukkenDetailImg;
	} else if (iconType=='ed'){
		func.method = addKentoEstateDetailImg;
	} else if (iconType=='cf'){
		func.method = addKentoCommonFolderImg;
	} else {
		func.method = addKentoImg;
	}
	addIconImgsList(func, 'kento_icons_', targetList);
}

function modifyKentoRegistImgsList(targetList, iconType){
	var func = new Object();
	func.method = addKentoRegistImg;
	addIconImgsList(func, 'kento_regist_', targetList);
}

function addEturanLargeImgs()
{
	var func = new Object();
	func.method = addEturanLargeImg;
	addIconImgs(func, 'eturan_icons_');
}

function addKentoLargeImgs()
{
	var func = new Object();
	func.method = addKentoLargeImg;
	addIconImgs(func, 'kento_icons_');
}

function inputcheck(inputMail, isMobile){
	if(inputMail.value != ""){
		if(inputMail.value.match(/[!#-9A-~]+@+[a-z0-9]+.+[!#-9A-~]/i)){
			if (!isMobile){
				if(inputMail.value.match(/\b[0-9a-z_.\-]*@(docomo\.ne\.jp|ezweb\.ne\.jp|[0-9a-z\-]{2}\.ezweb\.ne\.jp|softbank\.ne.jp|[0-9a-z\-]\.vodafone\.ne\.jp|jp\-[0-9a-z]\.ne\.jp|pdx\.ne\.jp|[0-9a-z]{2}\.pdx\.ne\.jp)$\b/)){
					window.alert("PC用のメールアドレスを入力してください。");
					inputMail.focus();
					return;
				}
			}
		}else{
			window.alert("メールアドレス形式に誤りがあります。");
			inputMail.focus();
			return false;
		}
	}else{
		window.alert("メールアドレスを入力してください。");
		inputMail.focus();
		return false;
	}
	return true;
}

function registMatchingWithPcAddr(submitFormName){
	registMatchingWithAddr(submitFormName, "list_pc_mail", "MAIL_PC", false);
}

function registMatchingWithMbAddr(submitFormName){
	registMatchingWithAddr(submitFormName, "list_mb_mail", "MAIL_MB", true);
}

function registMatchingWithAddr(submitFormName, inputMailName, submitMailName, isMobile){
	var inputMail = document.getElementById(inputMailName);
	var inputMailValue = '';
	var submitForm = document.forms[submitFormName];
	var mailTagName = submitMailName;

	if (inputMail!=undefined){
		if(inputcheck(inputMail, isMobile)){
			inputMailValue = inputMail.value;
		}
	}
	if (inputMailValue!=''){
		submitForm.innerHTML += '<input type="hidden" name="' + submitMailName + '" id="' + submitMailName + '" value="' + inputMailValue + '">';
		registMatching(submitFormName);
		submitForm.removeChild( submitForm[ submitMailName ] );
	}
}

function registMatching(submitFormName){
	var submitForm = document.forms[submitFormName];
	excuteSubmitFunction(submitForm, '/psl/mml', null, true );
}

function clearMailInputText(text){
	if (text.getAttribute('isClick')==null){
		text.value = '';
		text.style.color = 'black';
		text.setAttribute('isClick',1);
	}
}

function getBukKentoCount(){
	var kentoCount = 0;
	strKento = getCookie(COOKIE_KENTO_BUKKEN);
	if (strKento!="") {
		kentoCount = strKento.split(",").length;
	}
	return parseInt(kentoCount);
}

function getKaiKentoCount(){
	var kentoCount = 0;
	strKento = getCookie(COOKIE_KENTO_KAIIN);
	if (strKento!="") {
		kentoCount = strKento.split(",").length;
	}
	return parseInt(kentoCount);
}

function getKentoCount(item){
	return getBukKentoCount() + getKaiKentoCount();
}


