// EXECUTIVE FUNCTIONS - 5/20/2011

jQuery(document).ready(function() {

	var siteurl=window.location.pathname;
	var sitename = siteurl.split("/");
	var blogurl = sitename[1];	
	//alert(blogurl);
	jQuery.cookie('BlogURL', blogurl);
	jQuery.cookie('BlogType', 'exec');

	
	//SIDEBAR CONTACT FORM		
	jQuery('#sb_submit').bind('click', function(e) {			
		var recipient = jQuery("input#sb_recipient").val();
		var subject = jQuery("input#sb_subject").val();			
		var sbn = jQuery("input#sb_name").val();
		var sbe = jQuery("input#sb_email").val();				
		var sbp = jQuery("input#sb_phone").val();
		var sba = jQuery("input#sb_address").val();
		var sbc = jQuery("input#sb_city").val();		
		var sbs = jQuery("input#sb_state").val();
		var sbz = jQuery("input#sb_zip").val();	
		var sbq = jQuery("textarea#sb_questions").val();			
		
		var dataString = 'recipient='+recipient+'&subject='+subject+'&sbn='+sbn+'&sbe='+sbe+'&sbp='+sbp+'&sba='+sba+'&sbc='+sbc+'&sbs='+sbs+'&sbz='+sbz+'&sbq='+sbq;
		//alert(dataString);
		jQuery.ajax({
			type: "POST",
    		url: "http://realtyexecutives.com/wp-content/themes/exec1/functions_custom.php?action=askquestion",
    		data: dataString,						
    		success: function(msg){
				if (msg == "OK") {
					//window.location.reload();
					jQuery("input#sb_name").val('- Your Name -');
					jQuery("input#sb_email").val('- Email -');				
					jQuery("input#sb_phone").val('- Phone -');				
					jQuery("input#sb_address").val('- Address -');
					jQuery("input#sb_city").val('- City -');		
					jQuery("input#sb_state").val('- State -');
					jQuery("input#sb_zip").val('- Zipcode -');	
					jQuery("textarea#sb_questions").val('- Questions or Comments -');					
					alert("Your inquiry was successfully sent!");
				} else {
					alert(msg);
				}
			}
		});			
	});	
	
	
	
	// GET URL PARAMETERS
	function gup( name ){
  		name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  		var regexS = "[\\?&]"+name+"=([^&#]*)";
  		var regex = new RegExp( regexS );
  		var results = regex.exec( window.location.href );
  		if( results == null )
    		return "";
  		else
    		return results[1];
	}
	var mls = gup('mls');
	var cc = gup('cc');
	//alert(mls);
	//alert(cc);


	// TOGGLE SIDEBAR PROPERTY ADVANCED SEARCH
	jQuery('div#advanced').bind('click', function(e) {
		e.preventDefault();	
		if (jQuery("div#moreopts").is(":hidden")) {
			jQuery('div#property_searchside').height(465);
			jQuery("div#moreopts").show();
			jQuery("span#advancedtext").html("&#171; Less Search Options");
 			jQuery.cookie('Search_Expand', '1');			
		} else {
			jQuery("div#moreopts").hide();
			jQuery('div#property_searchside').height(215);
			jQuery("span#advancedtext").html("More Search Options &#187;");
 			jQuery.cookie('Search_Expand', '0');			
		}		
	});	
	


	//COUNTRIES	
	jQuery('select#idx-q-Country').bind('change', function(e) {
		jQuery("select#idx-q-Cities").html("");		
		jQuery("select#idx-q-States").html("");
		//jQuery("<option value=''></option>").appendTo("select#idx-q-States");
		
		var ctry = jQuery(this).val();
		jQuery.cookie('Country', ctry);
		//alert('Change Country = '+ctry); //OK

		switch (ctry) {
			
			case '':  //NO COUNTRY
				//alert('NoCountry'); //OK
				jQuery("#homesearch").attr("action", "../listings/");
				jQuery("#homesearch").attr("method", "post");
				jQuery("select#idx-q-States option[value='']").attr("selected", "selected");					
				break;				
			
			case 'US':
				jQuery("<option value=''>- State -</option><option value='AK'>AK</option><option value='AL'>AL</option><option value='AR'>AR</option><option value='AZ'>AZ</option><option value='CA'>CA</option><option value='CO'>CO</option><option value='CT'>CT</option><option value='DC'>DC</option><option value='DE'>DE</option><option value='FL'>FL</option><option value='GA'>GA</option><option value='HI'>HI</option><option value='IA'>IA</option><option value='ID'>ID</option><option value='IL'>IL</option><option value='IN'>IN</option><option value='KS'>KS</option><option value='LA'>LA</option><option value='MA'>MA</option><option value='MD'>MD</option><option value='ME'>ME</option><option value='MI'>MI</option><option value='MN'>MN</option><option value='MO'>MO</option><option value='MS'>MS</option><option value='MT'>MT</option><option value='NC'>NC</option><option value='ND'>ND</option><option value='NE'>NE</option><option value='NH'>NH</option><option value='NJ'>NJ</option><option value='NM'>NM</option><option value='NY'>NY</option><option value='NV'>NV</option><option value='OH'>OH</option><option value='OK'>OK</option><option value='OR'>OR</option><option value='PA'>PA</option><option value='RI'>RI</option><option value='SC'>SC</option><option value='SD'>SD</option><option value='TN'>TN</option><option value='TX'>TX</option><option value='UT'>UT</option><option value='VA'>VA</option><option value='VT'>VT</option><option value='WA'>WA</option><option value='WI'>WI</option><option value='WV'>WV</option><option value='WY'>WY</option>").appendTo("select#idx-q-States");	
				jQuery("#homesearch").attr("action", "../idx");
				jQuery("#homesearch").attr("method", "get");
				jQuery("select#idx-q-Cities option[value='']").attr("selected", "selected");					
				break;

			// INTERNATIONAL
			case 'CA':
				jQuery("<option value=''>- Province -</option><option value='AB'>AB</option><option value='BC'>BC</option><option value='MB'>MB</option><option value='NB'>NB</option><option value='NL'>NL</option><option value='NT'>NT</option><option value='NS'>NS</option><option value='NU'>NU</option><option value='ON'>ON</option><option value='PE'>PE</option><option value='QB'>QB</option><option value='SK'>SK</option><option value='YT'>YT</option>").appendTo("select#idx-q-States");			
				jQuery("<option value=''></option>").appendTo("select#idx-q-Cities");					
				jQuery("#homesearch").attr("action", "../listings/ca/");
				jQuery("#homesearch").attr("method", "post");
				break;								

			case 'AU':  //AUSTRALIA
				window.location = "http://www.realtyexecutives.com.au/";
				break;	

			case 'BH':	//BAHRAIN
				window.location = "../listings/bh/";
				break;	
			
			case 'BZ':	//BELIZE
				window.location = "http://www.realtyexecutivescentralamerica.com/locations/belize.htm";
				break;	

			case 'CO':	// COLUMBIA
				window.location = "http://www.realtyexecutivescentralamerica.com";
				break;	

			case 'CR':	// COSTA RICA
				window.location = "http://www.costaricapropertylink.com/?__utma=1.1125852610138494500.1240874054.1249932083.1249935951.28&__utmb=1.11.10.1249935951&__utmc=1&__utmx=-&__utmz=1.1245443177.18.2.utmcsr=dev.realtyexecutivesbeta.com|utmccn=(referral)|utmcmd=referral|utmcct=";
				break;	

			case 'DO':	// DOMINICAN REPUBLIC
				//window.location = "";
				break;	

			case 'FR':	// FRANCE
				//window.location = "http://www.dev.realtyexecutivesbeta.com/Franchise_France.html?__utma=1.1125852610138494500.1240874054.1249932083.1249935951.28&__utmb=1.10.10.1249935951&__utmc=1&__utmx=-&__utmz=1.1245443177.18.2.utmcsr=dev.realtyexecutivescalifornia.com|utmccn=(referral)|utmcmd=refe";
				break;
				
			case 'GR':	// GREECE
				window.location = "http://www.rei.gr/public/";
				break;					

			case 'HN':	// HONDURAS
				window.location = "http://www.realtyexecutivescentralamerica.com/locations/honduras.htm";				
				break;	

			case 'IL':	// ISRAEL
				window.location = "http://www.rexe.co.il/index.php?tlng=english";				
				break;	

			case 'KW':	// KUWAIT
				window.location = "../listings/kw/";				
				break;	

			case 'MX':	// MEXICO
				window.location = "http://www.realtyexecutivesmex.com/?__utma=1.1125852610138494500.1240874054.1249932083.1249935951.28&__utmb=1.6.10.1249935951&__utmc=1&__utmx=-&__utmz=1.1245443177.18.2.utmcsr=dev.realtyexecutivesbeta.com|utmccn=(referral)|utmcmd=referral|utmcct=/invite";				
				break;	

			case 'NG':	// NICARGUA
				window.location = "http://www.realtyexecutivescentralamerica.com/locations/nicaragua.htm";				
				break;	

			case 'OM':	// OMAN
				window.location = "../listings/om/";					
				break;			

			case 'PA':	// PANAMA
				window.location = "http://www.rexepanama.com/?__utma=1.74942104.1280418690.1280970458.1280974232.6&__utmb=1.8.10.1280974232&__utmc=1&__utmx=-&__utmz=1.1280974232.6.4.utmcsr=dev.realtyexecutivesbeta.com|utmccn=(referral)|utmcmd=referral|utmcct=/&__utmv=-&__utmk=104266752";					
				break;
				
			case 'PO':	// POLAND
				window.location = "http://www.wgn.pl/index/en,index.html?__utma=1.1125852610138494500.1240874054.1249932083.1249935951.28&__utmb=1.5.10.1249935951&__utmc=1&__utmx=-&__utmz=1.1245443177.18.2.utmcsr=dev.realtyexecutivescalifornia.com|utmccn=(referral)|utmcmd=referral|utmcct=/invi";					
				break;					

			case 'QA':	//QATAR
				window.location = "../listings/qa/";				
				break;

			case 'RO':	// ROMANIA
				window.location = "http://www.realtyexecutivespanama.com/";					
				break;	

		    case 'SA':	// SAUDI ARABIA
				window.location = "../listings/sa/";					
				break;

			case 'ES':	// SPAIN
				window.location = "http://www.realtyexecutivespanama.com/spain_branches.html";					
				break;
				
			case 'TR':	// TURKEY
				//window.location = "http://realtyexecutive.com/international-listings/oman/";					
				break;					

			case 'AE':	// UNITED ARAB EMIRATES
				window.location = "../listings/ae/";				
				break;
				
			default:
				jQuery("<option value='AK'>AK</option><option value='AL'>AL</option><option value='AR'>AR</option><option value='AZ'>AZ</option><option value='CA'>CA</option><option value='CO'>CO</option><option value='CT'>CT</option><option value='DC'>DC</option><option value='DE'>DE</option><option value='FL'>FL</option><option value='GA'>GA</option><option value='HI'>HI</option><option value='IA'>IA</option><option value='ID'>ID</option><option value='IL'>IL</option><option value='IN'>IN</option><option value='KS'>KS</option><option value='LA'>LA</option><option value='MA'>MA</option><option value='MD'>MD</option><option value='ME'>ME</option><option value='MI'>MI</option><option value='MN'>MN</option><option value='MO'>MO</option><option value='MS'>MS</option><option value='MT'>MT</option><option value='NC'>NC</option><option value='ND'>ND</option><option value='NE'>NE</option><option value='NH'>NH</option><option value='NJ'>NJ</option><option value='NM'>NM</option><option value='NY'>NY</option><option value='NV'>NV</option><option value='OH'>OH</option><option value='OK'>OK</option><option value='OR'>OR</option><option value='PA'>PA</option><option value='RI'>RI</option><option value='SC'>SC</option><option value='SD'>SD</option><option value='TN'>TN</option><option value='TX'>TX</option><option value='UT'>UT</option><option value='VA'>VA</option><option value='VT'>VT</option><option value='WA'>WA</option><option value='WI'>WI</option><option value='WV'>WV</option><option value='WY'>WY</option>").appendTo("select#idx-q-States");
				jQuery("select#idx-q-Countries option[value='US']").attr("selected", "selected");	
				jQuery("#homesearch").attr("action", "../idx");
				jQuery("#homesearch").attr("method", "get");					
		}		
    });		


	//STATES		
	jQuery('select#idx-q-States').bind('change', function(e) {
		var ss = jQuery(this).val();
		jQuery.ajax({
			type: "POST",
    		url: "http://realtyexecutives.com/wp-content/themes/exec1/functions_custom.php?action=cities&state="+ss+"",			
    		success: function(data){
				jQuery("select#idx-q-Cities").html("");
				jQuery(data).appendTo("select#idx-q-Cities");
			} 
		});
	});				
		

	//CITIES		
	jQuery('select#idx-q-Cities').bind('change', function(e) {
		//alert('Change City');
	});	



	//RENTALS		
	jQuery('select#idx-q-PropertyTypes').bind('change', function(e) {	   
		//alert('Property Types');
		var pt = jQuery("select#idx-q-PropertyTypes").val();
		if (pt=="1229") {
			//alert(pt);
			jQuery("select#idx-q-PriceMin").html("");
			jQuery("select#idx-q-PriceMax").html("");			
			var data = "<option value='500'>$500</option><option value='750'>$750</option><option value='1000'>$1,000</option><option value='1500'>$1,500</option><option value='2000'>$2,000</option><option value='2500'>$2,500</option><option value='3000'>$3,000</option><option value='3500'>$3,500</option><option value='4000'>$4,000</option><option value='4500'>$4,500</option><option value='5000'>$5,000</option>";
			jQuery("<option value=''>No Min</option>"+data).appendTo("select#idx-q-PriceMin");
			jQuery("<option value=''>No Max</option>"+data).appendTo("select#idx-q-PriceMax");				
		}		
	});
	
	
	


	//SUBMIT FORM		
	jQuery('input#submitproperty').bind('click', function(e) {

		var mls = jQuery("input#idx-q-MlsNumbers").val();
		if (mls != "") {
			e.preventDefault();
			window.location = "http://realtyexecutives.com/idx/mls-"+mls+"-";
			return;
		}
		
		var zipcodes = jQuery("input#idx-q-ZipCodes").val();
		if (zipcodes != "") {
			e.preventDefault();
			var pn = jQuery("select#idx-q-PriceMin").val();				
			var px = jQuery("select#idx-q-PriceMax").val();
			var bm = jQuery("select#idx-q-BedsMin").val();				
			var bn = jQuery("select#idx-q-BathsMin").val();			
			window.location = "http://realtyexecutives.com/idx/zip/"+zipcodes+"?idx-q-PriceMin="+pn+"&idx-q-PriceMax="+px+"&idx-q-BedsMin="+bm+"&idx-q-BathsMin="+bn+"";
			return;
		}
		
		var addressmask = jQuery("input#idx-q-AddressMasks").val();
		if (addressmask != "") {
			e.preventDefault();
			window.location = "http://realtyexecutives.com/idx/?idx-q-AddressMasks="+addressmask+"";
			return;			
		}			

		var ctry = jQuery("select#idx-q-Country").val();
		jQuery.cookie('Country', ctry);

		var ss = jQuery("select#idx-q-States").val();
 		jQuery.cookie('State', ss);

		var cty = jQuery("select#idx-q-Cities").val();
		jQuery.cookie('City', cty);		
		
		if (ctry == "") {						// NO COUNTRY
			e.preventDefault();
			window.location = "http://realtyexecutives.com/listings/";
			return;
		}
		


		if (ctry == "CA") {						//CANADA
			if (ss == '' || ss == null) {
				e.preventDefault();				
				window.location = "http://realtyexecutives.com/listings/ca/";
				return;			
			}			
	
			var pn = jQuery("select#idx-q-PriceMin").val();				
			var px = jQuery("select#idx-q-PriceMax").val();				
			var bm = jQuery("select#idx-q-BedsMin").val();				
			var bn = jQuery("select#idx-q-BathsMin").val();
			var pt = jQuery("select#idx-q-PropertyTypes").val();
			var dm = jQuery("select#idx-q-DaysOnMarketMin").val();
			var dx = jQuery("select#idx-q-DaysOnMarketMax").val();
			var dd = jQuery("select#idx-q-PriceDropDays").val();
			var dp = jQuery("select#idx-q-PriceDropPercent").val();
			var ym = jQuery("select#idx-q-YearBuiltMin").val();
			var yx = jQuery("select#idx-q-YearBuiltMax").val();
			var sq = jQuery("select#idx-q-ImprovedSqFtMin").val();
			var ws = jQuery("select#idx-q-WalkScore").val();		

			e.preventDefault();	
			jQuery.ajax({
				type: "POST",
 				url: "http://realtyexecutives.com/wp-content/themes/exec1/functions_custom.php?action=citylink&city="+cty+"&state="+ss+"",
	   			success: function(data){
				alert("Data = "+data);
					if (data != '') {
						window.location = data; // GO TO EXTERNAL URL OK
						return;
					} else {
						window.location = "http://realtyexecutives.com/idx/city/"+cty+"/?idx-q-Country="+ctry+"&idx-q-States="+ss+"&idx-q-PriceMin="+pn+"&idx-q-PriceMax="+px+"&idx-q-BedsMin="+bm+"&idx-q-BathsMin="+bn+"&idx-q-PropertyTypes="+pt+"&idx-q-DaysOnMarketMin="+dm+"&idx-q-DaysOnMarketMax="+dx+"&idx-q-PriceDropDays="+dd+"&idx-q-PriceDropPercent="+dp+"&idx-q-YearBuiltMin="+ym+"&idx-q-YearBuiltMax="+yx+"&idx-q-ImprovedSqFtMin="+sq+"&idx-q-WalkScore="+ws+"";
						return;
					}
				} 
			});
		}



		if (ctry == "US") {
		//UNITED STATES
			var cty = jQuery("select#idx-q-Cities").val();
			var pn = jQuery("select#idx-q-PriceMin").val();				
			var px = jQuery("select#idx-q-PriceMax").val();				
			var bm = jQuery("select#idx-q-BedsMin").val();				
			var bn = jQuery("select#idx-q-BathsMin").val();
			var pt = jQuery("select#idx-q-PropertyTypes").val();
			var dm = jQuery("select#idx-q-DaysOnMarketMin").val();
			var dx = jQuery("select#idx-q-DaysOnMarketMax").val();
			var dd = jQuery("select#idx-q-PriceDropDays").val();
			var dp = jQuery("select#idx-q-PriceDropPercent").val();
			var ym = jQuery("select#idx-q-YearBuiltMin").val();
			var yx = jQuery("select#idx-q-YearBuiltMax").val();
			var sq = jQuery("select#idx-q-ImprovedSqFtMin").val();
			var ws = jQuery("select#idx-q-WalkScore").val();	
			
			e.preventDefault();	
			jQuery.ajax({
				type: "POST",
 				url: "http://realtyexecutives.com/wp-content/themes/exec1/functions_custom.php?action=citylink&city="+cty+"&state="+ss+"",
	   			success: function(data){
				//alert("Data = "+data);
					if (data != '') {
						window.location = data; // GO TO EXTERNAL URL OK
						return;
					} else {
						window.location = "http://realtyexecutives.com/idx/city/"+cty+"/?idx-q-Country="+ctry+"&idx-q-States="+ss+"&idx-q-PriceMin="+pn+"&idx-q-PriceMax="+px+"&idx-q-BedsMin="+bm+"&idx-q-BathsMin="+bn+"&idx-q-PropertyTypes="+pt+"&idx-q-DaysOnMarketMin="+dm+"&idx-q-DaysOnMarketMax="+dx+"&idx-q-PriceDropDays="+dd+"&idx-q-PriceDropPercent="+dp+"&idx-q-YearBuiltMin="+ym+"&idx-q-YearBuiltMax="+yx+"&idx-q-ImprovedSqFtMin="+sq+"&idx-q-WalkScore="+ws+"";
						return;
					}
				} 
			});
		}
	});			


	//CLEAR FORM VALUES	
	jQuery('input#idx-q-MlsNumbers').bind('click', function(e) {
		//alert('MLS Clicked!');
		jQuery("input#idx-q-ZipCodes").val("");	
		jQuery("input#idx-q-MlsNumbers").val("");
		jQuery("input#idx-q-AddressMasks").val("");		
	});
	
	jQuery('input#idx-q-ZipCodes').bind('click', function(e) {
		//alert('Zip Code clicked');
		jQuery("input#idx-q-ZipCodes").val("");	
		jQuery("input#idx-q-MlsNumbers").val("");
		jQuery("input#idx-q-AddressMasks").val("");			
	});
	
	jQuery('input#idx-q-AddressMasks').bind('click', function(e) {
		//alert('Address Clicked!');
		jQuery("input#idx-q-ZipCodes").val("");	
		jQuery("input#idx-q-MlsNumbers").val("");
		jQuery("input#idx-q-AddressMasks").val("");			
	});	




	//EXPAND SIDEBAR SEARCH IF COOKIE SET
	//alert('Search Cookie'+jQuery.cookie("Search_Expand") );
	if (jQuery.cookie("Search_Expand") == '1') {
		jQuery('div#property_searchside').height(465);
		jQuery("div#moreopts").show();
		jQuery("span#advancedtext").html("&#171; Less Search Options");			
	}	

	
	//SET SELECTED CITIES PROPERTY SEARCH ON DOCUMENT READY
	var ss = jQuery("select#idx-q-States").val();	
	jQuery.ajax({
		type: "POST",
   	 	url: "http://realtyexecutives.com/wp-content/themes/exec1/functions_custom.php?action=cities&state="+ss+"",
   	 	success: function(data){
			//alert(data);
			jQuery("select#idx-q-Cities").html("");
			jQuery(data).appendTo("select#idx-q-Cities");
		} 
	});
		

}); // end Document Ready





jQuery.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        // CAUTION: Needed to parenthesize options.path and options.domain
        // in the following expressions, otherwise they evaluate to undefined
        // in the packed version for some reason...
        var path = options.path ? '; path=' + (options.path) : '';
        var domain = options.domain ? '; domain=' + (options.domain) : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = jQuery.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};

