(function(){
	
	if(typeof fvr === "undefined") window.fvr = {};	
	if(typeof doPostBack === "undefined") window.doPostBack = function(){ document.getElementById("compare").submit(); };
	if(typeof console === "undefined") window.console = {log: function(){}, dir: function(){}};
	
	fvr.compare = {
		step:"select" // or "email"	
	};
	
	var $ = jQuery,
		$body = null;
		$form = null;
	
	$(document).ready(function(){
		$body = $("body");
		$form = $("form#compare");
		if(!$form.length) return;
		
		fvr.compare.step = $form.find("input[name='step']").val();	
		
		var $iframe = $("#iframe_compare", window.parent.document.body);
		
		$iframe.height($body.outerHeight());
		
		//Select Properties
		if(fvr.compare.step==="compare"){
			var trs = $("table tr");			
			trs.each(function(r, tr){
				var $tr = $(tr);
				
				$tr.children("th,td").filter(":odd").addClass("alt");
				$tr.children("th,td").filter(":first-child").addClass("first");
				$tr.children("th,td").filter(":last-child").addClass("last");
			});			
		}
		//Email Owners
		else if(fvr.compare.step==="email"){
			
			var $dates = $("input[var-type='date']");
				
			$dates.datepicker({
				changeMonth:true,
				changeYear:true,
				gotoCurrent:true,
				minDate: new Date()
			});
			
			$dates.first().change(function(evt){
				$dates.last().datepicker("option", "minDate", $dates.first().datepicker("getDate"));	
				var minOut = $dates.first().datepicker("getDate");
				minOut.setDate(minOut.getDate()+1);				
				$dates.last().datepicker("setDate", minOut);				
			});
			
			
			
			
		}
	});
	
	
	
	//Toggle the select boxes at the top of each column
	fvr.compare.toggleAllSelected=function(isSelected){
		//var checkboxes = $form.find("table tr:first td:not(:first) input:checkbox");		
		var checkboxes = $("input[name='cbgCompare']");
		if(isSelected) checkboxes.attr("checked","checked");
		else checkboxes.removeAttr("checked");
		
	}
	
	//Create, show, and hide the "lightbox"
	fvr.compare.contact = function(rental_id,trackingID){
		//alert("/compare.asp?LIDs="+rental_id+"&selected="+rental_id);
		if(typeof fvr.compare.layer === "undefined"){
			fvr.compare.layer = $("#layerContact").appendTo($body);
			fvr.compare.layer.data("modalMask", $("<div id='modalMask'></div>").appendTo($body));
			fvr.compare.layer.data("modalMask").css({display:"none"}).click(fvr.compare.close);			
		}

		var modalMask = fvr.compare.layer.data("modalMask"),
			checkboxes = $("input[name='cbgCompare']:checked"),
			LIDs = [];
		
		checkboxes.each(function(){
		 	LIDs.push(rental_id);
		 });
		 
		fvr.compare.position();	
		if($.browser.msie && $.browser.version.indexOf("8")==0){
			modalMask.css({ height: $(window).height()+1000, top:$(window).scrollTop()-500});
			$(window).scroll(function(evt){
				modalMask.css({top:$(window).scrollTop()-500});	
			});
		}else{
			modalMask.css({ height: $body.outerHeight()});	
		}
		modalMask.css({display:"block", opacity:0}).animate({opacity:0.5}, function(){
			fvr.compare.layer.find("iframe").attr("src", "/compare.asp?trackID=" + trackingID + "&LIDs="+rental_id+"&selected="+rental_id+"&inquiryForm=1");																															  
		});		
							
	}
	
	fvr.compare.open = function(){
		if(typeof fvr.compare.layer === "undefined"){
			fvr.compare.layer = $("#layerCompare").appendTo($body);
			fvr.compare.layer.data("modalMask", $("<div id='modalMask'></div>").appendTo($body));
			fvr.compare.layer.data("modalMask").css({display:"none"}).click(fvr.compare.close);			
		}
		
		var modalMask = fvr.compare.layer.data("modalMask"),
			checkboxes = $("input[name='cbgCompare']:checked"),
			LIDs = [];
		
		checkboxes.each(function(){
		 	LIDs.push(this.value);
		 });
		
		if(LIDs.join(",")=='') {
			alert('You must select at least one property.');
			return false;
		}
		
		fvr.compare.position();	
		if($.browser.msie && $.browser.version.indexOf("8")==0){
			modalMask.css({ height: $(window).height()+1000, top:$(window).scrollTop()-500});
			$(window).scroll(function(evt){
				modalMask.css({top:$(window).scrollTop()-500});	
			});
		}else{
			modalMask.css({ height: $body.outerHeight()});	
		}
		modalMask.css({display:"block", opacity:0}).animate({opacity:0.5}, function(){
			fvr.compare.layer.find("iframe").attr("src", "/compare.asp?LIDs="+LIDs.join(",")+"&selected="+LIDs.join(","));																															  
		});	
		//$(window).bind("scroll", fvr.compare.position);		
							
	}
	
	fvr.compare.close = function(){	
		fvr.compare.layer.css({display:"none"});
		fvr.compare.layer.data("modalMask").stop().animate({opacity:0}, function(){
		 	$(this).css({display:"none"});
		 	fvr.compare.layer.find("iframe").attr("src", "/blank.htm");
		 });
		
		$(window).unbind("scroll", fvr.compare.position);
	}
	
	fvr.compare.position = function(isAnimated){
		
		var layer = fvr.compare.layer.css({display:"block"}),
			layerVPad = ($(window).height() - layer.height()) /2,
			layerHPad = ($(window).width() - layer.width()) / 2;
			
		if(layerVPad < 0 ) layerVPad = 10;
		if(layerHPad < 0 ) layerHPad = 10;
		
		
		var pos = {top: layerVPad + $(window).scrollTop(), left: layerHPad + $(window).scrollLeft()};
		if(pos.top + layer.height() > $body.height()) pos.top = $body.height() - layer.height() - 10;
		
		layer.stop();
		if(isAnimated)
			layer.animate({top:pos.top, left:pos.left});
		else
			layer.css({top:pos.top, left:pos.left});
			
		
		
			
	}
	

		  
})();
