// JavaScript Document

// Function Accepts Phone Number xxx-xxx-xxxx format
function formatPhone()
{
	oldtxt = window.event.srcElement.value
	len = oldtxt.length
	if(window.event.keyCode==13 || (window.event.keyCode>47 && window.event.keyCode<58 && len<=11))
	{
		newtxt = oldtxt
		nxt = window.event.keyCode
		nxt = parseInt(nxt) - 48
		if(len<3 || (len>4 && len<7) || len>8)
		newtxt+=nxt
		else
		newtxt+="-"+nxt
		window.event.srcElement.value = newtxt
	}
	window.event.cancelBubble = true
	window.event.returnValue = false
}


//#### Function To Validate Wedding Date(Wedding Date < Current Date ) ####//
	 function check_wedd_date(weM,weD,weY)
	 {	    
	    var dte = new Date();
		//alert(dte);
		var toM = (dte.getMonth()+1);//current Month..
		var toD = dte.getDate(); //current Date.
		var toY = dte.getYear();  //Current Year.
		
		//alert("Month :: "+weM+" Date :: "+weD+" Year :: "+weY);
		
		if(weY < toY)
		{			
           return false;			
		}
		else if(weY == toY)
		{
			if(weM < toM)
			{
               return false;				
			}
			else if(weM == toM)
			{
				if(weD < toD)
				{
                   return false;				
				}
			}
		}
		else
		{
		    return true;
		}
/*		today = (dte.getMonth()+1)+"-";
		today += dte.getDate()+"-";
		today += dte.getYear();
		//alert(today);
		//alert(wedd_date);
		var t = today.toString();
		var w = wedd_date.toString();
	    //w<t?return false:return true;	
		alert("Current Date :: "+t+" Wedding Date :: "+w);*/
		
	 }
	 
//############# Validation for start_date < end_date #######################
function validate_date()
{
	var sd=parseInt(document.frm.cmb_fdate[document.frm.cmb_fdate.selectedIndex].text);
	var sm=parseInt(document.frm.cmb_fmon[document.frm.cmb_fmon.selectedIndex].text);
	var sy=parseInt(document.frm.cmb_fyear[document.frm.cmb_fyear.selectedIndex].text);
	var ed=parseInt(document.frm.cmb_tdate[document.frm.cmb_tdate.selectedIndex].text);
	var em=parseInt(document.frm.cmb_tmon[document.frm.cmb_tmon.selectedIndex].text);
	var ey=parseInt(document.frm.cmb_tyear[document.frm.cmb_tyear.selectedIndex].text);


 if(sy > ey)
	{
		alert("FROM DATE Year cannot be greater than TO DATE Year");
		return false;
	}
 else if(sy==ey)
	{
	   if(em<sm)
		{
			alert("To DATE Month Cannot be smaller then FROM DATE Month");			
			return false;
		}
		else 
		{
			if(em<=sm)
			{
				if(sd>=ed)
				{
				alert("TO DATE day Cannot be smaller or equal to FROM DATE day");
				return false;
				}
			}
			//return false;
		}
	}
	else return true;
}
//##########################################################################
  // -------- validation for phone ( onKeyPress ) ---------------- //
function phone_valid() // onKeyPress..
{
   var key = window.event.keyCode;
	 var str = document.frm.txt_phone.value;
	 var len = document.frm.txt_phone.value.length;
	 
	 if(len==3)
	 {
	   document.frm.txt_phone.value=str+'-';
	   return true;
	 }
	 
	 if( key==13 )  // for 'ENTER' key..
	 {
		  return true;
	 }
	 if(key<48 || key>90)
	 {
	   window.status=" Phone accepts numbers only ";
       return false;		 
	 }
	 
	 if(len>=8)
	    return false;
}

function fax_valid()
{
     var key = window.event.keyCode;
		 var str = document.frm.txt_fax.value;
		 var len = document.frm.txt_fax.value.length;
	 
	 if(len==3)
	 {
	   document.frm.txt_fax.value=str+'-';
	   return true;
	 }
	 if( key==13 ) // for Enter Key....
	 {
 		 return true;
	 }
	 if(key<48 || key>90)
	 {
       window.status=" Fax accepts numbers only ";
		   return false;		 
	 }
	 
	 if(len>=8)
	    return false;
}
	  // ----------------------  used functions ----------------------------
		
//  -----------------Function to check Price-Range------------------- //
function checkPrice(pRange)
{
	var iChars ="!@#%^&*()+={}[]\|':<>?.;";
	for(i=0;i<iChars.length;i++)
	{
		if(pRange.indexOf(iChars.charAt(i))!=-1)
			return false;
	}
	if(i==iChars.length)
		return true;
}

//Function To Check Amount (eg:: 1111.11 )..
function checkAmt(amt)
{
	var iChars ="!@#%^&*()+={}[]\|':<>?;$";
	for(i=0;i<iChars.length;i++)
	{
		if(amt.indexOf(iChars.charAt(i))!=-1)
			return false;
	}
	if(i==iChars.length)
		return true;
}

//----------- function to check user name------------
function checkUName(uname)
{
	var iChars ="@#%^*+={}[]\|:<>?;";
	for(i=0;i<iChars.length;i++)
	{
		if(uname.indexOf(iChars.charAt(i))!=-1)
			return false;
	}
	if(i==iChars.length)
		return true;
}

//------------------------------------------------------------------
function password_valid(pass)
{
	var flag=0;
	if( pass!="" && flag==0 )
		{
			var len = pass.length;
			//var str = pass.value;
			var sc="!@#$%^&*()-?/\|{}[]?><,;:";
			for(var i=0;i<len;i++)
			{
						var c=pass.charAt(i);
						if(c==" ")		
						{ flag=1; break;}
						for(var j=0;j<25;j++)
						{
							var s=sc.charAt(j);
							if(c==s)		
							{ flag=1;break;}
						}
					if(flag==1)	break;
			}
				if(flag==1)		
				{
					return false;
				}
		}	// end if....	
} // end function for password..



//-----------------------function for EMAIL validation----------------
function email_valid(str)  //see
{
     //var str = document.frm.txt_email.value;
	 var len = str.length;
     var arr = new Array("!", "#", "$", "%", "^", "*", "(", ")", "+", "{", "}", "[", "]", "/", "\\","?", ";", " ", ",", "\t", "\n");   
	 var arr_num = new Array("0","1","2","3","4","5","6","7","8","9");//for checking at first place
     var flag=-1;
	 
      var at_index = str.indexOf("@");
	  var dot_index = str.indexOf(".");

	  if(len!=0)
	  {
			
             if( dot_index<0 || at_index<0 )  // at least one '.' or '@'
				    flag=1;
			 if( dot_index==0 || at_index==0 || dot_index==(len-1) || at_index==(len-1) ) //'.' and '@' not at first place
				    flag=1;

             if( str.indexOf("_") == 0 || str.indexOf("_") == (len-1) ) // not at last or first position => '_' 
			   flag=1;
			//------------------------------------------						
/*			 if( at_index > dot_index )  // '@' comes before '.'
			       flag=1;	*/
				   
			//for checking numbers at first and last place(an error)
/*			for(var i=0; i<10; i++)
			{				
				if( (str.indexOf(arr_num[i])==0) || (str.indexOf(arr_num[i])==(len-1)) )
				    flag=1;
                
			}*/


			 for( var i=0; i<len; i++ ) //error:-  '..', '@@', '.@', '@.'
			 {
			    if( (str.charAt(i)+str.charAt(i+1)) == ".." || (str.charAt(i)+str.charAt(i+1)) == "@@" )
				    flag=1;
    			if( (str.charAt(i)+str.charAt(i+1)) == ".@" || (str.charAt(i)+str.charAt(i+1)) == "@." )
   				    flag=1;
			 }
			 			
  			//-------------- special characters checking -----------------			
		    for( var i=0; i<22; i++ )				
			{
				 for( var j=0; j<len; j++)
				 {
					  if( arr[i]==str.charAt(j) )
					  {
						  flag=1;			
					  }
				 }
			}
			//###########################
			 // var last_dot
			//###########################
             //  '.com' checking			 
			 if( dot_index!=len-1 )
			 {
     			 var last_index_dot = str.lastIndexOf(".");
			     var last_str = str.substring(last_index_dot+1, len);
			  	 var last_str_len = last_str.length;//characters after '.'
				 
				 if( last_str_len<2 || last_str_len>3 )
				     flag=1;
			 }			
            //alert(str.substring(last_at+1,len));	
           //------------ for checking of ((  'jhgjh@2343kj.com' i.e. number after '@'  ))
/*			if( at_index!=len-1 )
			{
			   var last_at = str.lastIndexOf("@");
					
			   for( var i=0;i<10;i++ )
			   {
				  if( arr_num[i]==str.charAt(last_at+1) )
				     flag=1;
			   }
			}*/
			//---------------------------------	 
	  }
	  
     	   //check flag=1 if error
			 if(flag==1)
			 {
				 return false; 
			 }
			 else
			    return true;

}


//-----------------------function for website validation----------------


// FUNCTION TO CHECK WEBSITE URL
function web_link_valid(URL)
{
	lPos=URL.length-1;
	fDPos=URL.indexOf(".",0);
	lDPos=URL.lastIndexOf(".",lPos);
	if(URL.substr(0,11)!="http://www.")
		return false;
	else if(lDPos-fDPos<=1)
		return false;
	else if(lPos-lDPos<2)
		return false;
	else
		return true;
}
/*
function web_link_valid()
{  
    var str = document.frm.txt_web_link.value;
	  var len = str.length;
	   var arr = new Array("!", "#", "$", "%", "^", "&", "*", "(", ")", "+", "{", "}", "[", "]", "?", " ", ",", "\t", "\n");   
	   var dot_index = str.indexOf(".");
	   var flag=-1;	   

	  
	  // ' . '  shouldn't come at the first or last position
	  if( dot_index == 0 || dot_index == (len-1))
	     flag=1;			  
	  else if( dot_index<0 )  //atleast one '.' necessary
	     flag=1;		 	  
	 
	 // ' www. ' checking
	 // else if( dot_index!=3 )
	   // flag=1;	      
	  
      // ' .com ' checking
	  else if( str.lastIndexOf(".") != (len-1) )
	  {
      var last_dot_index = str.lastIndexOf(".");
			var last_str = str.substring(last_dot_index+1, len);  //eg:=  saurabh@mca[.com]
			
			var last_len = last_str.length;
			
			if( last_len>3)
			    flag=1;
      }
	  
	  for( var i=0; i<len; i++ )
	  {
           if( (str.charAt(i)+str.charAt(i+1)) == ".." )
		      flag=1;
	  }
	 
	  // special characters checking
	  for( var i=0; i<arr.length; i++)
	  {
         for( var j=0; j<len; j++ )
		 {
              if( arr[i] == str.charAt(j) )
			     flag=1;
         }
	  }
	  
	  //checking if error present
	  if(flag==1)
	  {
          return false;   		  
	  }  
	  else
	      return true;		
}	*/

  //function for image uploading( Preview of Images..)... 
  function check_file(file_name, image_id, chk_id)
	{   
        var str = file_name.value;       
		var len = file_name.value.length;       
		 //for extracting '.jpg...'
		 var dot_str = str.substr( str.lastIndexOf(".")+1, len );     
		 var image_ext = dot_str.toLowerCase();

 		 if( image_ext!='' && (image_ext == "jpg" || image_ext == "jpeg" || image_ext == "png" || image_ext == "gif") )
		 {  //for previewing image..
			 var id_img = document.getElementById(image_id);
	         var id_chk = document.getElementById(chk_id);  //to approve images
			   //######## To display checkboxes for approval ####### 
			   if(id_chk)
			      id_chk.style.display="";
			  //####################################################
			  id_img.src=str;  //set src of image..
			  id_img.style.display="";             
			  return true;
		 }
	}
	
	// Function to check image Extension....
	function check_image(str)
	{         
		var len = str.length; 
		var flag='';
		 //for extracting '.jpg...'
		 var dot_str = str.substr( str.lastIndexOf(".")+1, len );     
		 var image_ext = dot_str.toLowerCase();

		 if( str.indexOf(".") == 0 )
		 {
			 flag=0;
		 }
     else if( image_ext == "jpg" || image_ext == "jpeg" || image_ext == "png" || image_ext == "gif" )
		    flag=1;
			 
		 else if(image_ext != "jpg" && image_ext != "jpeg" && image_ext != "png" && image_ext != "gif" )
		 {		    
		     flag=0;
		 }		
		 
		 if( flag==0 )  //if image is in invalid format..
		    return false;
		 if( flag==1 )
		    return true;
	}
	//###### Function To Check PDF File. ####//
	function check_pdf(str)
	{         
		var len = str.length; 
		var flag='';
		 //for extracting '.pdf...'
		 var dot_str = str.substr( str.lastIndexOf(".")+1, len );     
		 var image_ext = dot_str.toLowerCase();

		 if( str.indexOf(".") == 0 )		
			 flag=0;

         else if( image_ext == "pdf" || image_ext == "PDF" || image_ext == "doc" || image_ext == "DOC" )
		    flag=1;
			 
		 else if(image_ext != "pdf" && image_ext != "PDF" && image_ext == "doc" && image_ext == "DOC")
		     flag=0;
		 
		 if( flag==0 )  //if PDF File is in invalid format..
		    return false;
		 if( flag==1 )
		    return true;
	}
	//########################################//
	
	//Function To Show Pop_Up Window.

		function showPopup(url)
		{
		  window.open(url, '_blank',  'toolbar=no,location=0,direction=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=600,height=700,top=15,left=100');
		}
		function showPopup_med(url)
		{
		  window.open(url, '_blank',  'toolbar=no,location=0,direction=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=620,height=550,top=15,left=100');
		}
		function showPopup_small(url)
		{
           window.open(url, '_blank',  'toolbar=no,location=0,direction=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=450,height=250,top=15,left=100');			
		}
		
		//To Make Popup Window.
		function callWindow(url)
		{
		  window.open(url, '_blank','titlebar=no,toolbar=no,location=0,direction=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=800,height=500,top=15,left=100');
		}
