/* ----------------------------------------------------- */
/* 物件詳細印刷用CSS（detail-print.css）適用 */
/* ----------------------------------------------------- */
if(window.name == "printWindow"){
	var printCss = 'css/detail-print.css';
	var loc = document.getElementsByTagName('link')[0].getAttribute('href').split('css')[0] + printCss;
	document.write('<link rel="stylesheet" href="'+ loc +'" type="text/css" media="all" />');
}

/* CSSハック用 */
/* ----------------------------------------------------- */
var css_browser_selector = function() {
	var 
		ua=navigator.userAgent.toLowerCase(),
		is=function(t){ return ua.indexOf(t) != -1; },
		h=document.getElementsByTagName('html')[0],
		b=(!(/opera|webtv/i.test(ua))&&/msie (\d)/.test(ua))?('ie ie'+RegExp.$1):is('gecko/')? 'gecko':is('opera/9')?'opera opera9':/opera (\d)/.test(ua)?'opera opera'+RegExp.$1:is('konqueror')?'konqueror':is('applewebkit/')?'webkit safari':is('mozilla/')?'gecko':'',
		os=(is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':'';
	var c=b+os+' js';
	h.className += h.className?' '+c:c;
}();

/* ----------------------------------------------------- */
/* noConflict*/
/* ----------------------------------------------------- */
var $j =jQuery.noConflict();

/* ----------------------------------------------------- */
/* jquery ロード*/
/* ----------------------------------------------------- */
$j(function(){

	/* aタグクリック時の枠線無効に */
	/* ----------------------------------------------------- */
	$j('a').focus(
		function(){
		this.blur();
	});

	/* 関数Call */
	/* ----------------------------------------------------- */
	
	/* フッターナビ高さ揃える */
	flat('#footer div.nav','ul',4);

	/* TOPバナーの高さ揃える */
	flat('#home ul.bnr01','li:not(.long)',2);

	/* お気に入り物件リスト */
	flat('#favorite-list','div',0);

	/* サイド検索フリーワードのフォーカス */
	formUtility('#side #ws-input','#side #ws-btn');

	/* TOP路線から検索　駅名のフォーカス */
	formUtility('#search-wrap #train-input','#search-wrap #train-btn');

	/* 物件部屋情報テーブル　trクリッカブルに */
	blockClickable('#main table.rl-table tr:not(:first-child)');

	/* 物件詳細お気に入り追加ボタン dlクリッカブルに */
	blockClickable('#article-detail #main dl.bookmark-btn:not(.b-cheked)');

	/* 物件詳細スワップ */
	SwapImg('#article-detail #thum ul a','#article-detail #main-pic');

	/* 物件詳細　お問い合わせページへの物件名引継ぎ */
	setNum('#article-detail li.inq a');

	/* グローバルナビ　カレントページのボタン変更（ロールオーバー部分の前に記載する） */
	/* ----------------------------------------------------- */
	var activeObj ='#g-'+ $j('body').attr('id');
	if(activeObj==='#g-article-detail' || activeObj==='#g-article-list' ){
		activeObj = '#g-search';
	}
	if($j('#gnav li').filter(activeObj).size()==1){
		$activeObj = $j(activeObj).find('a:first img');
		$activeObj.removeClass('over');
		var src = $activeObj.attr('src');
		var ftype = src.substring(src.lastIndexOf('.'), src.length);
		var hsrc = src.replace(ftype, '-o'+ftype);
		$activeObj.attr('src', hsrc);
	}
	
	/* ロールオーバー */
	/* ----------------------------------------------------- */
	$j('img.over').not('[src*="-o."]').hover(function()
	{
		Rollover($j(this),$j(this).attr('src'));	
	},function() {
		Rollover($j(this),$j(this).attr('src'));	
	});	

	/* ページ内スクロール */
	/* ----------------------------------------------------- */
  $j('a[href^=#]').click(function(event) {
    var hash = this.hash;
		if(hash!==''){
			var tarPosition = $j(hash).offset().top;
			if(undefined !== window.opera && "function" === typeof window.opera.version){ // opera
				$j('html').animate({scrollTop: tarPosition}, 400, 'easeOutQuad'); 
			}
			else{
				$j('html, body').animate({scrollTop: tarPosition}, 400, 'easeOutQuad');
			}
			return false;
		}
  });

	/* 物件一覧・詳細　部屋番号表内のブックマークボタンクリックを有効に */
	/* ----------------------------------------------------- */
	$j("#main table.rl-table a.bookmark").click(function(event){
		event.stopPropagation();
	});
	$j("#main table.rl-table td.check").click(function(event){
		event.stopPropagation();
		
		// 20100514 checkbox変更時にAJAXを起動する必要がある為、無効にする
		return;
		
		var obj = $j('input',this);
			if(obj.attr("checked") == ""){
				obj.attr("checked", "checked");
			}
			else{
				obj.attr("checked", "");
			}
	});
	$j("#main table.rl-table td.check input").click(function(event){
		event.stopPropagation();
	});

	/* 物件一覧・詳細　もっと空き部屋を見る */
	/* ----------------------------------------------------- */
	$j("#main p.more-room span").click(function(){
		var txt = $j(this).text();
		var obj = $j(this);
		$j(obj).parent('p').next('table').toggleClass('more-list');
		if(txt==='もっと空き部屋を見る'){
			$j(obj).addClass('close')
			$j(obj).text('閉じる');
		}
		else{
			$j(obj).text('もっと空き部屋を見る');
		}
	});

	/* 物件詳細　お問い合わせボタンに物件名設定 */
	/* ----------------------------------------------------- */
	if($j('#article-detail').size()===1){
		$j('#article-detail li.inq a').each(function(){
			var aName = $j('#article-detail h2').text();
			aName +=$j('#article-detail #roomNo').text();
			$j(this).attr('title',aName);
		});
	}

	/* 物件詳細ページ　プリントページ開く*/
	/* ----------------------------------------------------- */
	$j('#article-detail li.print a').click(function(){
		var Url = $j(this).attr('href');																									
		openPrintWin(700,700,Url);
		return false;
	});
	
	/* ポップアップウィンドウを閉じる */
	/* ----------------------------------------------------- */
	$j('#cls span').click(function(){
		window.close();
	});

	/* 印刷ボタン */
	/* ----------------------------------------------------- */
	$j('#printPageBtn span').click(function(){
			window.print();
	});

	/* フォーム */
	/* ----------------------------------------------------- */
	$j("table input,table textarea").focus(function(){
		$j(this).addClass('focus');															
  });
	$j("table input,table textarea").blur(function(){
		$j(this).removeClass('focus');															
  });

	/* addclass */
	/* ----------------------------------------------------- */
	/*$j('#gnav li:last-child').addClass('last-c');*/
	$j('#sitemap li:first').addClass('first');
	$j('#sitemap li:last-child').addClass('close');
	$j('#main table.entry-condition td:last-child').addClass('last-c');
	$j('#favorite-list div').hover(function()
	{
		$j(this).addClass('hover');
	},function() {
		$j(this).removeClass('hover');
	});	

});

/* ----------------------------------------------------- */
/*　ページ内スクロール用　*/
/* ----------------------------------------------------- */
jQuery.easing.easeOutQuad = function (x, t, b, c, d) {
		return -c *(t/=d)*(t-2) + b;
};

/* ----------------------------------------------------- */
/*　ロールオーバー　*/
/* ----------------------------------------------------- */
var Rollover = function(obj,thisSrc) {
	/* 変数宣言 */
	var sTempSrc = thisSrc;
	var ftype = thisSrc.substring(thisSrc.lastIndexOf('.'), thisSrc.length);
	var hsrc = thisSrc.replace(ftype, '-o'+ftype);	
	var aPreLoad = new Image();

	/* プリロード */
	aPreLoad.src = hsrc;

	re = new RegExp('-o');
	
	if(!sTempSrc.match(re)){
		$j(obj).attr('src', hsrc);
	}
	
	if (sTempSrc.match(re)) {
		sTempSrc = $j(obj).attr('src').replace('-o'+ftype, ftype);
		$j(obj).attr('src', sTempSrc);
	}
}

/* ----------------------------------------------------- */
/* flatHeights */
/* ----------------------------------------------------- */
var flat = function(obj,flatobj,num){
	var sets = [], temp = [];
	/* numごとで高さ揃える */
		$j(obj).find(flatobj).each(function(i) {
				temp.push(this);
				if(num===0){
					sets.push(temp);
				}else{
					if ((i+1) % num == 0) {
							sets.push(temp);
							temp = [];
					}
				}
		});
		if (temp.length) sets.push(temp);

		/* 各組ごとに高さ揃え */
		$j.each(sets, function() {
				$j(this).flatHeights();
		});
		sets = [], temp = [];
}

/* ----------------------------------------------------- */
/* フォームユーティリティ */
/* ----------------------------------------------------- */
var formUtility = function(obj,submitBtn) {
	var obj = $j(obj),
			submitBtn = $j(submitBtn),
			defaultVal = obj.val();
	if(obj.size()!==0){
		
		if(defaultVal===''){
			obj.val(defaultVal);															
		}		

		obj.focus(function(){
			if($j(this).val()===defaultVal){
				$j(this).val('');															
			}
		});
		obj.blur(function(){
			if($j(this).val()===''){
				$j(this).val(defaultVal);															
			}
		});
	
		submitBtn.click(function(){
			$j(this).parents('form').find('.ex-txt').each(function(){
				if($j(this).val()===defaultVal){
					obj.val('');															
				}
			});
		});

		$j(window).bind("beforeunload", function(e){
			obj.val(defaultVal).blur();
		});
	
		$j('input[type=text],textarea').focus(function(){
			$j(this).addClass('focus');															
		});
		$j('input[type=text],textarea').blur(function(){
			$j(this).removeClass('focus');															
		});
	}
}

/* ----------------------------------------------------- */
/* block clickable */
/* ----------------------------------------------------- */
var blockClickable = function(obj){
	$j(obj).hover(function(){
		$j(this).addClass('hover');
	},function(){
		$j(this).removeClass('hover');
	});
	
	$j(obj).click(function(){
		if($j(this).find('a').attr('target') =='_blank'){
			var url = $j('a',this).eq(0).attr('href');
			window.open(url);
			return false;
		}
	  window.location=$j('a',this).eq(0).attr('href');
		return false;
	});
}

/* ----------------------------------------------------- */
/* スワップ */
/* ----------------------------------------------------- */
var SwapImg = function(href,mainImg){
		xOffset = 10;
		yOffset = -290;

	/* プリロード */
	$j(href).each(function(i){				
		var siPreLoad = new Array();
		var src = $j(this).attr('href');
		siPreLoad[i] = new Image();
		siPreLoad[i].src = src;
	});
	/* クリック */
	$j(href).click(function(){
		src = $j(this).attr('href');
		$j(mainImg).find('img').attr('src',src);
		$j("#preview").remove();
		return false;
	});
	
	$j(href).hover(function(e){
		$j("body").append("<p id='preview'><img src='"+ this.href +"' alt='' /></p>");								 
		$j("#preview")
			.css("top",(e.pageY - xOffset) + "px")
			.css("left",(e.pageX + yOffset) + "px")
			.fadeIn("fast");						
    },function(){
			$j("#preview").remove();
    });	
		$j(href).mousemove(function(e){
			$j("#preview")
				.css("top",(e.pageY - xOffset) + "px")
				.css("left",(e.pageX + yOffset) + "px");
		});			
}

/* ----------------------------------------------------- */
/* 物件名引継ぎ */
/* ----------------------------------------------------- */
var setNum = function(obj){
	$j(obj).click(function(){
		var Insert_No = new Array();
		var Parameter = new Array();	
		Parameter[0] = "No_Name";
		var Str,Target,Value;
		var Set_Url ="";
		Value = "";
		URL =$j(this).attr("href");
		Str = $j(this).attr("title");
		Value += Str;
		Set_Url += "?" +Parameter[0]  + "=" + escape(Value);
		URL = URL + Set_Url;
		$j(this).attr("href",URL)
	});
}

/* ----------------------------------------------------- */
/* 印刷用ページポップアップ */
/* ----------------------------------------------------- */
var openPrintWin= function(w,h,Url){
		var features="scrollbars=yes";
		features+=", left="+(window.screen.width-w)/2;
		features+=", top="+(window.screen.height-h)/2;
		features+=", width="+w;
		features+=", height="+h;
		var newWin = window.open(Url,"printWindow",features);
		newWin.focus();
}