$(document).ready(function() {
	$('.defaultDOMWindow').openDOMWindow({ 
		height:450,
		width:670,
		eventType:'click',
		windowSource:'iframe',
		windowPadding:0,
		loader:1,
		loaderImagePath:'animationProcessing.gif',
		loaderHeight:16,
		loaderWidth:17,
		windowSourceAttrURL:'title'
	}); 
	
	$('.cat_link').toggle(function() {
		$(this).addClass('cat_link_sel');
		$(this).parent().next().hide();
	}, function() {
		$(this).removeClass('cat_link_sel');
		$(this).parent().next().show();
	});
	
	/*dropbox sorting*/
	$('#sorting select').change(function(){
		var values = [];
		$('#sorting select').each(function(i, selected) {
			values[$(this).attr('name')] = $(selected).val();
		});
		
		
		var querystring = '?';
		for(key in values){ 
			if(key == 'community') {
				if(values[key] != 0) {
					var patt = /[*]/g;
					var check = values[key].match(patt);
					if(check) {
						var pieces = values[key].split('*');
						querystring += 'area'+'='+pieces[0]+'&';
						querystring += 'community'+'='+pieces[1]+'&';
					}else{
						querystring += 'area'+'='+values[key]+'&';
					}
				}
			}else if(key == 'style') {
				if(values[key] != 0) {
					var patt = /[*]/g;
					var check = values[key].match(patt);
					if(check) {
						var pieces = values[key].split('*');
						querystring += 'style'+'='+pieces[0]+'&';
						querystring += 'size'+'='+pieces[1]+'&';
					}else{
						querystring += 'style'+'='+values[key]+'&';
					}
				}
			}else if(values[key] != 0) {
				querystring += key+'='+values[key]+'&';
			}
		}
		querystring = querystring.substring(0, querystring.length-1);
		//alert(querystring);
		window.location.search = querystring;
	});
	
	/*dropbox sorting for homes by style landing pages, which just send it to the original search*/
	$('#sorting_hl select').change(function(){
		var values = [];
		$('#sorting_hl select').each(function(i, selected) {
			values[$(this).attr('name')] = $(selected).val();
		});
		
		var city = $(this).attr('id');
		
		var querystring = '/'+city+'/homes-by-style/?';
		for(key in values){ 
			if(key == 'community') {
				if(values[key] != 0) {
					var patt = /[*]/g;
					var check = values[key].match(patt);
					if(check) {
						var pieces = values[key].split('*');
						querystring += 'area'+'='+pieces[0]+'&';
						querystring += 'community'+'='+pieces[1]+'&';
					}else{
						querystring += 'area'+'='+values[key]+'&';
					}
				}
			}else if(key == 'style') {
				if(values[key] != 0) {
					var patt = /[*]/g;
					var check = values[key].match(patt);
					if(check) {
						var pieces = values[key].split('*');
						querystring += 'style'+'='+pieces[0]+'&';
						querystring += 'size'+'='+pieces[1]+'&';
					}else{
						querystring += 'style'+'='+values[key]+'&';
					}
				}
			}else if(values[key] != 0) {
				querystring += key+'='+values[key]+'&';
			}
		}
		querystring = querystring.substring(0, querystring.length-1);
		//alert(querystring);
		window.location = querystring;
	});
	
	$('.dir_btn').click(function() {
		var id = $(this).attr('id');
		var url = window.location;
		var urlArray = url.toString().split('?');
		var querystring = urlArray[1];
		if(querystring == undefined) {
			querystring = '';
		}
		//alert(querystring);
		var urlCatArray = querystring.toString().split('&');
		for(key in urlCatArray) {
			var valueArray = urlCatArray[key].split('=');
			if (valueArray[0] == 'page') {
				var alreadyHas = true;
				var currPage = valueArray[1];
				var qswithoutpage = str_replace(urlCatArray[key].toString(), '', querystring.toString());
				qswithoutpage = str_replace(urlCatArray[key].toString(), '', qswithoutpage.toString());
				var thisvalue = urlCatArray[key];
			}else{
				var alreadyHas = false;
				var currPage = false;
			}
		}
		
		if(id == 'next_btn') {
			if(currPage != false) {
				var newPage = parseInt(currPage) + 1;
			}else{
				var newPage = 2;
			}
		}else if(id == 'prev_btn') {
			if(currPage != false) {
				if(currPage != 2) {
					var newPage = parseInt(currPage) - 1;
				}else{
					var backtostart = true;
				}
			}
		}
		
		//alert(newPage);
		
		if(alreadyHas == true) {
			if(backtostart != undefined) {
				querystring = qswithoutpage.slice(0, -1);
			}else{
				querystring = str_replace(thisvalue, 'page='+newPage, querystring);
			}
		}else{
			if(querystring == '') {
				querystring += '?page='+newPage;
			}else{
				querystring += '&page='+newPage;
			}
			
		}
		//alert(querystring);
		
		window.location.search = querystring;
	});
	
	$('.fp_select').click(function(){
		var id = $(this).attr('id');
		id = id.split('_');
		id = id[2];
		
		$('.fp_select').removeClass('selected');
		$(this).addClass('selected');
		
		$('.fp_thumb').hide();
		$('.fp_desc').hide();
		$('.mag_link').hide();
		
		$('#fp_thumb_'+id).show();
		$('#fp_desc_'+id).show();
		$('#mag_link_'+id).css('display','block');
	});
	
	$('.sm_select').click(function(){
		var id = $(this).attr('id');
		id = id.split('_');
		id = id[2];
		
		$('.fp_thumb').hide();
		$('.fp_desc').hide();
		$('.mag_link').hide();
		
		$('#fp_thumb_'+id).show();
		$('#fp_desc_'+id).show();
		$('#mag_link_'+id).css('display','block');
	});
});

/**** Makes Checkboxes act like radio buttons ****/
function checkBoxValidate(cb) {
for (j = 0; j < 5; j++) {
if (eval("document.myform.ckbox[" + j + "].checked") == true) {
document.myform.ckbox[j].checked = false;
if (j == cb) {
document.myform.ckbox[j].checked = true;
         }
      }
   }
}

/**
* str_replace
*
* This function returns a string or an array with all occurrences of
* [search] in [subject] replaced with the given [replace] value.
* If you don't need fancy replacing rules (like regular expressions), you should always use this function.
*
* @param	string	search
* @param	string	replace
* @param	string	string
*/
function str_replace (search, replace, subject)
{
var result = "";
var  oldi = 0;
for (i = subject.indexOf (search); i > -1; i = subject.indexOf (search, i))
{
result += subject.substring (oldi, i);
result += replace;
i += search.length;
oldi = i;
}
return result + subject.substring (oldi, subject.length);
}
