// JavaScript Document

// jQuery Functions //
$(document).ready(function() {

	// Modify CSS style for Google Translate //
//     var url = window.location.href;
//     if(/translate/g.test(url)){
//		$("#featured_listings_horizontal").attr("id","g_featured_listings_horizontal");
//     }

	// Reset Quick Search Property Type //
	$('select#rental_property_class').val('');
	$('select#sale_property_class').val('');
	
	// Initiate Superfisg Property Navigation Menu //
	$('ul.sf-menu').superfish({ delay: 250, animation: {height:'show'}, speed: 'fast' }).find('ul').bgIframe({ opacity:false }); 
	
	// Initiate Scroll Marquee //
	$('.marquee').vTicker({
		speed: 700,
		pause: 5000,
		showItems: 1,
		animation: 'fade',
		mousePause: false,
		height: 204,
		direction: 'up'
	});
	

	// Attached target blank to Google Search //
	$("#cse-search-box").attr("target", "_blank");
	
	// Initiate Scroll View //
	$('#listing_detail_custom').scrollView();
	$('#scrollto_search_result').scrollView();
	$('#content').scrollView();
	
	// Remove empty tr //
	$('table tr').each(function () {
		 if (!$.trim($(this).text())) $(this).remove();
	});
	$('#content div:empty:only-child').parent().remove();
	
	// Set same height for listing details box //
	var highestCol1 = Math.max($('#top_left_box').height(),$('#top_right_box').height());
	$('.auto_height1').height(highestCol1);
	var highestCol2 = Math.max($('#feature1_box').height(),$('#feature2_box').height());
	$('.auto_height2').height(highestCol2);

	// Set Google Language Select field to open up in new window //
    $("#langMenu").change(function() {
        var val = $("select option:selected").val();
        if (val != '') {
            window.open(val + window.location.href);
        }
    });
	
	
	// Colorbox for Location Map Link //
	$("a#loc_map_link_1").colorbox();
	$("a#loc_map_link_2").colorbox();
	$("a#loc_map_link_3").colorbox();
	
	// Colorbox for Contact Agent Form + Tell A Friend Form //
	$("a#contact_agent_btn").colorbox({width:"550px", inline:true, href:"#property_inquiry_colorbox"});
	$("a#tell_a_friend_btn").colorbox({width:"550px", height:"96%", iframe:true});

	// Functions for Contact Agent Form and Tell A Friend Form //
	$("input#property_inquiry_submit").click(function(){
		$("#form_submit_failed").remove();
		$("#form_submit_success").remove();
		$("#submission_retry").css("display", "none"); 
		$("#submission_processing").css("display", "block");
		$("input#property_inquiry_submit").addClass("disabled").attr("disabled", true);
	})

	// Refresh Securimage on Contact Agent Form //
	$('#contact_agent_btn').click(function() {
	  document.getElementById('captcha').src = '/securimage/securimage_show.php?sid=' + Math.random();
	});
	
	// Contact Agent Form Ajax Function //
	$("#property_inquiry_submit").click(function(){
		$.ajax({
			url  	: $("#property_inquiry").attr('action'),
			type 	: $("#property_inquiry").attr('method'),
			data 	: $("#property_inquiry").serialize(),
			success : function(data){
				$("#property_inquiry_result").append( $(data) );
				$("input#property_inquiry_submit").removeClass("disabled").attr("disabled", false);
				$("#submission_processing").css("display", "none");
				$("a#contact_agent_btn").colorbox.resize();
				if ($("div#property_inquiry_result").children().hasClass("success")){
					$("#property_inquiry").remove();
					$("a#contact_agent_btn").colorbox.resize();
				}
				if ($("div#property_inquiry_result").children().hasClass("failed")){
					$("#submission_processing").css("display", "none");
					$("#submission_retry").css("display", "block"); 
				}
			}
		});
		return false;
	});
	
	
	// Construct Google Translate link attached to Language Country Flags //
	$(".lang_flags a").click(function(){
		var url = $.URLEncode(window.location.href);
		var gurl = $(this).attr("href");
		var furl = gurl + url;
		window.open(furl); 
		return false;
	});
	

	// Attached hover style and effect to Search Result Listings //
	$(".search_result_list").mouseenter(function(){
		$(this).addClass("hover");
	}).click(function(){
		var search_list_url = $(this).children().find("a").attr("href");
		window.open(search_list_url); 
		return false;
	}).mouseleave(function(){
		$(this).removeClass("hover");
	})
	
	// Attached hover style and effect to Featured Listings //
	$(".featured_list").mouseenter(function(){
		$(this).addClass("hover");
	}).click(function(){
		var feat_url = $(this).children().find("a").attr("href");
		window.open(feat_url); 
		return false;
	}).mouseleave(function(){
		$(this).removeClass("hover");
	})

	
	// Attached function to Quick Search - Select Rental Property Class field //
	$("#rental_property_class").change(function() {
		selRpclass();
    });
	
	// Attached function to Quick Search - Select Sale Property Class field //
	$("#sale_property_class").change(function() {
		selSpclass();
    });

	// Select Rental Property Class field function //
	function selRpclass(){
        if($('select#rental_property_class option:selected').val() == '') {
		$('#select_rent_type').slideDown();
		$('#r_unit_type').slideUp();
		$("#r_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_commercial_type').slideUp();
		$("#r_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_daily').slideUp();
		$("#r_price_range_daily").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_weekly').slideUp();
		$("#r_price_range_weekly").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_bedrooms').slideDown();
		$("#r_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_bathrooms').slideDown();
		$("#r_bathrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_land_suitable').slideUp();
		$("#r_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#long_lease_note").slideUp();
		$("#short_lease_note").slideUp();
		$("#search_rent").addClass("disabled").attr("disabled", true);
        }
        if($('select#rental_property_class option:selected').val() == '2') {
		$('#select_rent_type').slideUp();
		$('#r_unit_type').slideDown();
		$("#r_unit_type").find("input, select, textarea").attr("disabled", false);
		$('#r_commercial_type').slideUp();
		$("#r_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_daily').slideUp();
		$("#r_price_range_daily").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_weekly').slideUp();
		$("#r_price_range_weekly").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_bedrooms').slideDown();
		$("#r_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_bathrooms').slideDown();
		$("#r_bathrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_land_suitable').slideUp();
		$("#r_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#long_lease_note").slideDown();
		$("#short_lease_note").slideUp();
		$("#search_rent").removeClass("disabled").attr("disabled", false);
        }
        if($('select#rental_property_class option:selected').val() == '4') {
		$('#select_rent_type').slideUp();
		$('#r_unit_type').slideUp();
		$("#r_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_commercial_type').slideUp();
		$("#r_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_daily').slideUp();
		$("#r_price_range_daily").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_weekly').slideUp();
		$("#r_price_range_weekly").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_bedrooms').slideDown();
		$("#r_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_bathrooms').slideDown();
		$("#r_bathrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_land_suitable').slideUp();
		$("#r_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#long_lease_note").slideDown();
		$("#short_lease_note").slideUp();
		$("#search_rent").removeClass("disabled").attr("disabled", false);
        }
        if($('select#rental_property_class option:selected').val() == '6') {
		$('#select_rent_type').slideUp();
		$('#r_unit_type').slideUp();
		$("#r_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_commercial_type').slideUp();
		$("#r_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_daily').slideUp();
		$("#r_price_range_daily").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_weekly').slideUp();
		$("#r_price_range_weekly").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_bedrooms').slideUp();
		$("#r_bedrooms").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_bathrooms').slideUp();
		$("#r_bathrooms").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_land_suitable').slideDown();
		$("#r_land_suitable").find("input, select, textarea").attr("disabled", false);
		$("#long_lease_note").slideDown();
		$("#short_lease_note").slideUp();
		$("#search_rent").removeClass("disabled").attr("disabled", false);
        }
        if($('select#rental_property_class option:selected').val() == '8') {
		$('#select_rent_type').slideUp();
		$('#r_unit_type').slideUp();
		$("#r_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_commercial_type').slideDown();
		$("#r_commercial_type").find("input, select, textarea").attr("disabled", false);
		$('#r_price_range_daily').slideUp();
		$("#r_price_range_daily").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_weekly').slideUp();
		$("#r_price_range_weekly").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_bedrooms').slideUp();
		$("#r_bedrooms").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_bathrooms').slideUp();
		$("#r_bathrooms").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_land_suitable').slideUp();
		$("#r_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#long_lease_note").slideDown();
		$("#short_lease_note").slideUp();
		$("#search_rent").removeClass("disabled").attr("disabled", false);
        }
        if($('select#rental_property_class option:selected').val() == '1') {
		$('#select_rent_type').slideUp();
		$('#r_unit_type').slideUp();
		$("#r_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_commercial_type').slideUp();
		$("#r_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#r_price_range_daily').slideDown();
		$("#r_price_range_daily").find("input, select, textarea").attr("disabled", false);
		$('#r_price_range_weekly').slideDown();
		$("#r_price_range_weekly").find("input, select, textarea").attr("disabled", false);
		$('#r_bedrooms').slideDown();
		$("#r_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_bathrooms').slideDown();
		$("#r_bathrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_land_suitable').slideUp();
		$("#r_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#long_lease_note").slideUp();
		$("#short_lease_note").slideDown();
		$("#search_rent").removeClass("disabled").attr("disabled", false);
        }
	}
	
	// Select Sale Property Class field function //
	function selSpclass(){
        if($('select#sale_property_class option:selected').val() == '') {
		$('#select_sale_type').slideDown();
		$('#s_unit_type').slideUp();
		$("#s_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_commercial_type').slideUp();
		$("#s_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_business_type').slideUp();
		$("#s_business_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_bedrooms').slideDown();
		$("#s_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#s_bathrooms').slideDown();
		$("#s_bathrooms").find("input, select, textarea").attr("disabled", false);
		$('#s_land_suitable').slideUp();
		$("#s_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#search_sale").addClass("disabled").attr("disabled", true);
        }
        if($('select#sale_property_class option:selected').val() == '3') {
		$('#select_sale_type').slideUp();
		$('#s_unit_type').slideDown();
		$("#s_unit_type").find("input, select, textarea").attr("disabled", false);
		$('#s_commercial_type').slideUp();
		$("#s_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_business_type').slideUp();
		$("#s_business_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_bedrooms').slideDown();
		$("#s_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#s_bathrooms').slideDown();
		$("#s_bathrooms").find("input, select, textarea").attr("disabled", false);
		$('#s_land_suitable').slideUp();
		$("#s_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#search_sale").removeClass("disabled").attr("disabled", false);
        }

        if($('select#sale_property_class option:selected').val() == '5') {
		$('#select_sale_type').slideUp();
		$('#s_unit_type').slideUp();
		$("#s_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_commercial_type').slideUp();
		$("#s_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_business_type').slideUp();
		$("#s_business_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_bedrooms').slideDown();
		$("#s_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#s_bathrooms').slideDown();
		$("#s_bathrooms").find("input, select, textarea").attr("disabled", false);
		$('#s_land_suitable').slideUp();
		$("#s_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#search_sale").removeClass("disabled").attr("disabled", false);
        }
        if($('select#sale_property_class option:selected').val() == '7') {
		$('#select_sale_type').slideUp();
		$('#s_unit_type').slideUp();
		$("#s_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_commercial_type').slideUp();
		$("#s_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_business_type').slideUp();
		$("#s_business_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_bedrooms').slideUp();
		$("#s_bedrooms").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_bathrooms').slideUp();
		$("#s_bathrooms").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_land_suitable').slideDown();
		$("#s_land_suitable").find("input, select, textarea").attr("disabled", false);
		$("#search_sale").removeClass("disabled").attr("disabled", false);
        }
        if($('select#sale_property_class option:selected').val() == '9') {
		$('#select_sale_type').slideUp();
		$('#s_unit_type').slideUp();
		$("#s_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_commercial_type').slideDown();
		$("#s_commercial_type").find("input, select, textarea").attr("disabled", false);
		$('#s_business_type').slideUp();
		$("#s_business_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_bedrooms').slideUp();
		$("#s_bedrooms").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_bathrooms').slideUp();
		$("#s_bathrooms").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_land_suitable').slideUp();
		$("#s_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#search_sale").removeClass("disabled").attr("disabled", false);
        }
        if($('select#sale_property_class option:selected').val() == '10') {
		$('#select_sale_type').slideUp();
		$('#s_unit_type').slideUp();
		$("#s_unit_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_commercial_type').slideUp();
		$("#s_commercial_type").find("input, select, textarea").val('').attr("disabled", true);
		$('#s_business_type').slideDown();
		$("#s_business_type").find("input, select, textarea").val('').attr("disabled", false);
		$('#s_bedrooms').slideUp();
		$("#s_bedrooms").find("input, select, textarea").attr("disabled", true);
		$('#s_bathrooms').slideUp();
		$("#s_bathrooms").find("input, select, textarea").attr("disabled", true);
		$('#s_land_suitable').slideUp();
		$("#s_land_suitable").find("input, select, textarea").val('').attr("disabled", true);
		$("#search_sale").removeClass("disabled").attr("disabled", false);
        }
	}
	
	// Attached function to Quick Search - Select Rental Condo Type field //
	$("#r_condounittype").change(function() {
		selRcondotype();
    });
	
	// Attached function to Quick Search - Select Sale Condo Type field //
	$("#s_condounittype").change(function() {
		selScondotype();
    });
	
	// Select Rental Condo Type field function //
	function selRcondotype(){
        if($('select#r_condounittype option:selected').val() == 'Studio') {
		$('#r_bedrooms').slideUp();
		$("#r_bedrooms").find("input, select, textarea").attr("disabled", true);
		$('#r_bathrooms').slideUp();
		$("#r_bathrooms").find("input, select, textarea").attr("disabled", true);
        } else {
		$('#r_bedrooms').slideDown();
		$("#r_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#r_bathrooms').slideDown();
		$("#r_bathrooms").find("input, select, textarea").attr("disabled", false);
		}
	}
	
	// Select Sale Condo Type field function //
	function selScondotype(){
        if($('select#s_condounittype option:selected').val() == 'Studio') {
		$('#s_bedrooms').slideUp();
		$("#s_bedrooms").find("input, select, textarea").attr("disabled", true);
		$('#s_bathrooms').slideUp();
		$("#s_bathrooms").find("input, select, textarea").attr("disabled", true);
        } else {
		$('#s_bedrooms').slideDown();
		$("#s_bedrooms").find("input, select, textarea").attr("disabled", false);
		$('#s_bathrooms').slideDown();
		$("#s_bathrooms").find("input, select, textarea").attr("disabled", false);
        }
	}
	
});

