function ChangePage(page, uri, param, numpages){
	if(page <= numpages)
		window.location = uri + "?page=" + page + "&" + param;
	else
		alert('invalid page');
}
function ChangeSorting(sort, order, page, uri, param){
	window.location = uri + "?sort="+sort+"&order="+order+"&page=" + page + "&" + param;
}
function isNumberKey(evt){
	var charCode = (evt.which) ? evt.which : event.keyCode
	if (charCode > 31 && (charCode < 48 || charCode > 57))
	  return false;
	if ((charCode==null) || (charCode==0) || (charCode==8) || 
    (charCode==9) || (charCode==13) || (charCode==27) )
   return true;
	return true;
}
function ChangeSearch(val){
	var minobj = document.getElementById('min_value');
	var maxobj = document.getElementById('max_value');
	if(val == 'sale'){
		var init = 0;
		var inc = 50000;
		var limit = 1000000;
		var suffix = "";
		var prefix = "£";
	}else{
		var init = 0;
		var inc = 100;
		var limit = 1000;	
		var suffix = " pm";
		var prefix = "£";	
	}
	var i = 0;
	minobj.options.length = 0;
	maxobj.options.length = 0;
	for(var x = init; x <= limit; x+=inc){	
		val = prefix + number_format(x, 0, null, ",") + suffix;
		if(x == limit){
			x = x + '+';
			val = val + '+';
		}
		minobj.options[i] = new Option(val, x);
		maxobj.options[i] = new Option(val, x);
		i++;
	}			
	maxobj.selectedIndex = i-1; 
}
function number_format (number, decimals, dec_point, thousands_sep){
  var exponent = "";
  var numberstr = number.toString ();
  var eindex = numberstr.indexOf ("e");
  if (eindex > -1)
  {
    exponent = numberstr.substring (eindex);
    number = parseFloat (numberstr.substring (0, eindex));
  }
  
  if (decimals != null)
  {
    var temp = Math.pow (10, decimals);
    number = Math.round (number * temp) / temp;
  }
  var sign = number < 0 ? "-" : "";
  var integer = (number > 0 ? 
      Math.floor (number) : Math.abs (Math.ceil (number))).toString ();
  
  var fractional = number.toString ().substring (integer.length + sign.length);
  dec_point = dec_point != null ? dec_point : ".";
  fractional = decimals != null && decimals > 0 || fractional.length > 1 ? 
               (dec_point + fractional.substring (1)) : "";
  if (decimals != null && decimals > 0)
  {
    for (i = fractional.length - 1, z = decimals; i < z; ++i)
      fractional += "0";
  }
  
  thousands_sep = (thousands_sep != dec_point || fractional.length == 0) ? 
                  thousands_sep : null;
  if (thousands_sep != null && thousands_sep != "")
  {
	for (i = integer.length - 3; i > 0; i -= 3)
      integer = integer.substring (0 , i) + thousands_sep + integer.substring (i);
  }
  
  return sign + integer + fractional + exponent;
}
function AddToPortfolio(prop_id){
	var temp = readCookie('portfolio');	
	var pid = prop_id; 
	if(temp != null){			
		var arr = new Array();
		var arr2 = new Array(prop_id); 
		myArray = temp.split(',');	
		var cnt = 0;		
		for(var i=0;i<myArray.length; i++){
			if(myArray[i] != prop_id)	{
				arr[cnt] = myArray[i];
				cnt++;
			}
		}
		arr = arr2.concat(arr);
		pid = arr.join(',');
	}
	createCookie('portfolio', pid, 7);
	var html = "<a href='javascript:void(0)' onclick=\"RemoveFromPortfolio('"+prop_id+"');\" class='more_details'>Remove from portfolio</a>";
	document.getElementById('p_'+prop_id).innerHTML = html;	
}
/*
function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}
function eraseCookie(name) {
	createCookie(name,"",-1);
}
function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}
function RemoveFromPortfolio(prop_id){
	var temp = readCookie('portfolio');
	if(temp != null){			
		var myArray = temp.split(','); 
		var arr = new Array();
		var cnt = 0;		
		for(var i=0;i<myArray.length; i++){
			if(myArray[i] != prop_id){	
				arr[cnt] = myArray[i];
				cnt++;
			}
		}
		var pid = arr.join(',');
	}
	if(pid != ''){
		createCookie('portfolio', pid, 7);	
	}else{
		eraseCookie('portfolio');
	}		
	var html = "<a href='javascript:void(0)' onclick=\"AddToPortfolio('"+prop_id+"');\" class='more_details'>Add to portfolio</a>";
	document.getElementById('p_'+prop_id).innerHTML = html;	
}
*/
function ShowPicture(pic, width, height){	
	var temp = "<img src='"+pic+"' name='slide' class='image' width='"+width+"' height='"+height+"'>";
	eval("document.getElementById('div_image').innerHTML = temp");	
}
function popUp(URL, win, features) {
	window.open(URL, win, features);
}
function MyCheckEnteredValue(element) {	
var lField = ltrim(rtrim(String(element.value)));    
myReg=new RegExp("^[0-9]*\\\\\\\\.?[0-9]*$");         
if (!(myReg.test(lField) && lField!='.')) {			
alert("Please enter valid numerical data in all fields!");			
return false;		
}	
element.value=lField; 	
return true;
}

function rtrim(argvalue) {  while (1) {    
if (argvalue.substring(argvalue.length - 1, argvalue.length) != " ")      
break;    
argvalue = argvalue.substring(0, argvalue.length - 1);  
}  
return argvalue;
}

function ltrim(argvalue) {  while (1) {    
if (argvalue.substring(0, 1) != " ")      
break;    
argvalue = argvalue.substring(1, argvalue.length);  
}    
return argvalue;
}

function trim(str){     
return str.replace(/^\\\\s+/g, '').replace(/\\\\s+$/g, '');
}  

function calculate(form){	
var tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp9, tmp10, tmp11  
if( trim(form.amt.value) != "" &&  trim(form.int.value) != "" &&  trim(form.yrs.value) != ""){		 
tmp1 = parseFloat(form.amt.value);		
if (isNaN(tmp1)) tmp1=0;	    
tmp2 = parseFloat(form.int.value);		
if (isNaN(tmp2)) tmp2=0;	    
tmp3 = parseFloat(form.yrs.value);		
if (isNaN(tmp3)) tmp3=0;				
tmp4 = parseFloat(tmp2 / 1200);     
tmp5 = parseFloat(tmp3 * 12);    
tmp6 = parseFloat(1 + tmp4);    
tmp7 = parseFloat(Math.pow(tmp6, tmp5));    
tmp8 = parseFloat(1 / tmp7);    
tmp9 = parseFloat(1 - tmp8);    
tmp10 = parseFloat(tmp4 / tmp9);    
tmp11 = parseFloat(tmp1 * tmp10);    
form.monthly_payment.value = tmp11;		
}else{		
alert("Please enter valid numerical data in all fields!");		
return false;	
}}

function count(form) {
var tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8, tmp9, tmp10, tmp11  
if ( trim(form.income.value) != "" &&  trim(form.other.value) != "" &&  trim(form.taxes.value) != "" &&  trim(form.insurance.value) != "" &&  trim(form.auto.value) != "" &&  trim(form.cards.value) != "" &&  trim(form.term.value) != "" &&  trim(form.rate.value) != ""){									     
tmp12 = Math.round(eval(form.income.value * .28) + eval(form.other.value * .28) - form.taxes.value - form.insurance.value);    
tmp13 = Math.round(eval(form.income.value * .36) + eval(form.other.value * .36) - form.taxes.value -  form.insurance.value - form.auto.value - form.cards.value);      if (tmp12>tmp13) {      
form.payment.value = tmp13      
} else {      
form.payment.value = tmp12      
}    
tmp1 = parseFloat(form.rate.value);	
if (isNaN(tmp1)) tmp1=0;    
tmp2 = parseFloat(form.term.value);	
if (isNaN(tmp2)) tmp2=0;    
tmp3 = parseFloat(form.payment.value);	
if (isNaN(tmp3)) tmp3=0;    
tmp4 = parseFloat(tmp1 / 1200);     
tmp5 = parseFloat(tmp2 * 12);    
tmp6 = parseFloat(1 + tmp4);    
tmp7 = parseFloat(Math.pow(tmp6, tmp5));    
tmp8 = parseFloat(1 / tmp7);    
tmp9 = parseFloat(1 - tmp8);    
tmp10 = parseFloat(tmp9 / tmp4);    
tmp11 = parseFloat(tmp3 * tmp10);    
form.amount.value = Math.round(tmp11);    
}else	{		
alert("Please enter valid numerical data in all fields!");		
return false;	
}}