var vld_Phone =  /^[0-9\(\)\- ]*$/ 

function selectAllBuilding(val)
	{
	  
	  for(i=0;i<document.forms[val].elements['txtBuilding[]'].length;i++)
		{		  
           document.forms[val].elements['txtBuilding[]'][i].checked = document.frm.txtBuildingSelect.checked
		}
	}

 function selectAllFeature(val)
	{	  
	  for(i=0;i<document.forms[val].elements['txtFeature[]'].length;i++)
		{ 
		  if(document.forms[val].elements['txtFeature[]'][i].value!='7'){		  
            document.forms[val].elements['txtFeature[]'][i].checked = document.frm.txtFeatureSelect.checked}
		  else
            document.forms[val].elements['txtFeature[]'][i].checked = !(document.frm.txtFeatureSelect.checked)
		}
	}


 function chkAllFeatures(val)
 {
       for(i=0;i<document.forms[val].elements['txtFeature[]'].length;i++)
		{ 
		   if(document.forms[val].elements['txtFeature[]'][i].value=='7' && document.forms[val].elements['txtFeature[]'][i].checked){
			for(j=0;j<document.forms[val].elements['txtFeature[]'].length;j++)
				if(document.forms[val].elements['txtFeature[]'][i].value!=document.forms[val].elements['txtFeature[]'][j].value)
					document.forms[val].elements['txtFeature[]'][j].checked = false

            document.forms[val].txtFeatureSelect.checked = false
			break;}	
		  /*else	
			if(document.forms[val].elements['txtFeature[]'][i].value!='7' && document.forms[val].elements['txtFeature[]'][i].checked){			  			 
			for(j=0;j<document.forms[val].elements['txtFeature[]'].length;j++)			
			  {    
				  if(document.forms[val].elements['txtFeature[]'][j].value=='7')				 
				  {document.forms[val].elements['txtFeature[]'][j].checked = false
				  break;}
			  }            
			break;}	*/

		} 
 
 }

function isNull(aStr)
	{		 
		var index;		
		for (index=0; index < aStr.length; index++)
			if (aStr.charAt(index) != ' ')
				return false;
		return true;
	}
  function isImageFile(str)	
 {
 
    ext = (str.substr(str.lastIndexOf("."),str.length))
	 if ( ext.toLowerCase()!= ".gif" && ext.toLowerCase()!= ".jpg" &&  ext.toLowerCase()!= ".jpeg" && ext.toLowerCase()!= ".png" && ext.toLowerCase()!= ".jpe")
	  {return false }
     else
		return true
 
 }

  function fileName(str)	
 { 
     //lastloc = str.lastIndexOf(".")
	 //firstloc = str.lastIndexOf("\\")

	 if(str.lastIndexOf("\\") == -1)
		 return  (str.substr(str.lastIndexOf("/")+1,str.length)) 
	 else
		 return  (str.substr(str.lastIndexOf("\\")+1,str.length))

 }

 function validFile(str)
 {
       strFile = str.substr(str.lastIndexOf("\\")+1,str.length)  
       var reisFile=/^[0-9a-zA-Z_. -]+$/;
		if(!reisFile.test(strFile))
		{
			return false;
		}
		return true;
 
 }
	
	function validatePhone(str)
{
	 return vld_Phone.test(str)

}
	
	//For checking Null values
	function trimWhiteSpace(aStr)
	{
	     var ch = aStr.substring(0, 1);
         while (ch == " ")
         { // Check for spaces at the beginning of the string
           aStr = aStr.substring(1, aStr.length);
           ch = aStr.substring(0, 1);
         }
         
    
        
        ch = aStr.substring(aStr.length-1, aStr.length);
        while (ch == " ") 
          { // Check for spaces at the end of the string
           aStr = aStr.substring(0, aStr.length-1);
           ch = aStr.substring(aStr.length-1, aStr.length);
         }       
         
         return aStr ; 
	
	}

	
	
	//For checking invalid E-Mail address

	function isEmail(aStr){
	
	     var ch = aStr.substring(0, 1);
         while (ch == " ")
         { // Check for spaces at the beginning of the string
           aStr = aStr.substring(1, aStr.length);
           ch = aStr.substring(0, 1);
         }
         
    
        
        ch = aStr.substring(aStr.length-1, aStr.length);
        while (ch == " ") 
          { // Check for spaces at the end of the string
           aStr = aStr.substring(0, aStr.length-1);
           ch = aStr.substring(aStr.length-1, aStr.length);
         }

        ch=aStr
        
         
		var reEmail=/^[0-9a-zA-Z_\.-]+\@[0-9a-zA-Z_\.-]+\.[0-9a-zA-Z_\.-]+$/;
		if(!reEmail.test(aStr))
		{
			return false;
		}
		return true;
	}

	
   function isAlphaNumeric(aStr)
   {
        var reAlphanumeric = /^[a-zA-Z0-9]+$/;
        if(!reAlphanumeric.test(aStr))
		{
			return false;
		}
		return true;
   } 

   function isAlpha(aStr)
   {
        var reAlpha = /^[a-zA-Z-. ]+$/;
        if(!reAlpha.test(aStr))
		{
			return false;
		}
		return true;
   }


  /* function isSiteUrl(aStr)
   {
        var reAlphanumeric = /^(file|http):\/\/\S+\.(com|net|org|info|biz|ws|us|tv|cc)$/i;

        if(!reAlphanumeric.test(aStr))
		{
			return false;
		}
		return true;
   } */


//check validity of date
function checkDate(dt)
{
	var reg = new RegExp("[0-9]{1,2}/[0-9]{1,2}/[0-9]{4}$");
	if(reg.test(dt))
	{
		var datepart = dt.split("/");
		for(i=0;i<datepart.length;i++)
			datepart[i] = parseFloat(datepart[i]);
		if(datepart[1] > 31 || datepart[0] > 12)
			return false;
		else if((datepart[0] == 4 || datepart[0] == 6 || datepart[0] == 9 || datepart[0] == 11) && datepart[1] == 31)
			return false;	
		else if(datepart[0] == 2)
		{
			if(datepart[1] > 29)
				return false;
			if(!LeapYear(datepart[2]) && datepart[1] == 29)
				return false;
		}
		return true;						
	}
	return false;			
}


function LeapYear(intYear) {
	if (intYear % 100 == 0) {
		if (intYear % 400 == 0) { return true; }
	}
	else { 
		if ((intYear % 4) == 0) { return true; }
	}
	return false;
}


function compareDates(dt1,dt2)
{
	var datepart1 = dt1.split("/");
	var datepart2 = dt2.split("/");
		
	for(i=0;i<datepart1.length;i++)
	{
		datepart1[i] = parseFloat(datepart1[i]);
		datepart2[i] = parseFloat(datepart2[i]);		
	}	
	
	if(datepart1[2] > datepart2[2])
		return 1;
	else if(datepart1[2] < datepart2[2])	 
		return -1;
	else if(datepart2[2] == datepart1[2])	 	
	{
		if(datepart1[0] > datepart2[0])
			return 1;
		else if(datepart1[0] < datepart2[0])	
			return -1;
		else if(datepart1[0] == datepart2[0])					 
		{
			if(datepart1[1] > datepart2[1])
				return 1;
			else if(datepart1[1] < datepart2[1])	
				return -1;			
		}
	}
	return 0;	
}


/* This script is Copyright (c) Paul McFedries and 
Logophilia Limited (http://www.mcfedries.com/).
Permission is granted to use this script as long as 
this Copyright notice remains in place.*/

function round_decimals(original_number, decimals) {
    var result1 = original_number * Math.pow(10, decimals+1)
    var result2 = Math.round(result1)
    var result3 = result2 / Math.pow(10, decimals+1)
	//alert(result2);
    return pad_with_zeros(result3, decimals)
}

function pad_with_zeros(rounded_value, decimal_places) {

    // Convert the number to a string
    var value_string = rounded_value.toString()
    
    // Locate the decimal point
    var decimal_location = value_string.indexOf(".")

    // Is there a decimal point?
    if (decimal_location == -1) {
        
        // If no, then all decimal places will be padded with 0s
        decimal_part_length = 0
        
        // If decimal_places is greater than zero, tack on a decimal point
        value_string += decimal_places > 0 ? "." : ""
    }
    else {

        // If yes, then only the extra decimal places will be padded with 0s
        decimal_part_length = value_string.length - decimal_location - 1
    }
    
    // Calculate the number of decimal places that need to be padded with 0s
    var pad_total = decimal_places - decimal_part_length
    
    if (pad_total > 0) {
        
        // Pad the string with 0s
        for (var counter = 1; counter <= pad_total; counter++) 
            value_string += "0"
        }

    if(decimal_part_length == 3)
         value_string = value_string.substring(0,value_string.length-1)

    return value_string
}
