﻿// JScript File

//<input type=”text” name=”mytext” onKeyPress=”return disableEnterKey(event)”>
function disableEnterKey(e)
{
     var key;

     if(window.event)
          key = window.event.keyCode;     //IE
     else
          key = e.which;     //firefox

     if(key == 13)
          return false;
     else
          return true;
}

    function SelectAllCheckboxes(chkSelectHeader)
    {                      
           xState = chkSelectHeader.checked;
           elm = chkSelectHeader.form.elements;       
           for(i=0;i<elm.length;i++)
           {                
                 var cbid = elm[i].id;
                 if(elm[i].type=="checkbox" && elm[i].id!=chkSelectHeader.id && cbid.indexOf("chkSelect") >= 0)
                 {             
                    if(elm[i].checked!=xState)
                    {                              
                         if(elm[i].checked)
                            elm[i].checked = false;
                         else                 
                            elm[i].checked = true;
                    }
                 }
           }
    } 
             
     function checkOrUncheckHeaderBox(checkbox,chkCheckAllHeaderID)
     {
        //var chkHeader=document.getElementById("M_CPH_gvPA_ctl01_chkCheckAllHeader");
        var chkHeader=document.getElementById(chkCheckAllHeaderID);
        var bFlag=false;
        elm=chkHeader.form.elements;
        for(i=0;i<elm.length;i++)
        {
            if(elm[i].type=="checkbox" && elm[i].id!=chkHeader.id)
            {
                if(elm[i].checked==false)
                {
                    bFlag=true;
                }
            }
        }
        if(bFlag==true)
        {
            chkHeader.checked=false;
        }
        else
        {
            chkHeader.checked=true;
        }            
     }
   

    function check(btnCaption,chkCheckAllHeaderID,ObjName)
    {
       //var chkHeader=document.getElementById("M_CPH_gvPA_ctl01_chkCheckAllHeader");
     
       var chkHeader=document.getElementById(chkCheckAllHeaderID);
       var bFlag=false;
       elm=chkHeader.form.elements;
       for(i=0;i<elm.length;i++)
        {
            var cbid = elm[i].id;
            if(elm[i].type=="checkbox" && elm[i].id!=chkHeader.id && cbid.indexOf("chkSelect") != -1)
            {
                if(elm[i].checked==true)
                {
                    bFlag=true;
                }
            }
        }
        if(bFlag==false)
        {
            alert("Please select atleast one Record");
            return false;
        }
        else
        { 
             
            if(btnCaption =='edit')
            {                               
                return confirm("Are you sure you want to Edit " + ObjName + "?");
            }  
            else if(btnCaption =='save')
            {                               
                return confirm("Are you sure you want to Save " + ObjName + "?");
            }
            else if(btnCaption =='delete')
            {                               
                return confirm("Are you sure you want to Delete " + ObjName + "?");
            }
            else
            {
                return confirm("Are you sure you want to send mail to " + ObjName + "?");
            }
            
        }
    } 



function nextTbox(tbox, nbox) // function for auto tabing in tele.No and Fax No  
{
    if (tbox.value.length==tbox.maxLength) 
    {
        document.getElementById(nbox).focus();    
    }
}

///////////////////////////////////////////////////////// 
// TabNext()
// Function to auto-tab phone field
// Arguments:
//   obj :  The input object (this)
//   event: Either 'up' or 'down' depending on the keypress event
//   len  : Max length of field - tab when input reaches this length
//   next_field: input object to get focus after this one
// -------------------------------------------------------------------
var phone_field_length=0;
function TabNext(obj,event,len,next_field) {
	if (event == "down") {
		phone_field_length=obj.value.length;
		}
	else if (event == "up") {
		if (obj.value.length != phone_field_length) {
			phone_field_length=obj.value.length;
			if (phone_field_length == len) {
				next_field.focus();
				}
			}
		}
	}

////////////////////////////////////////////////////////




function textCounter(field, countfield, maxlimit) 
{
   /*
   * The input parameters are: the field name;
   * field that holds the number of characters remaining;
   * the max. numb. of characters.
   */
   
   if (field.value.length > maxlimit) // if the current length is more than allowed
        field.value =field.value.substring(0, maxlimit); // don't allow further input
    else
        countfield.value = maxlimit - field.value.length;
 } // set the display field to remaining number



function ValidLength(objField,objMaxLength,nLineCount, evt) 
{
    var sStr = objField.value;
    var nCurCount=0; 
    if (sStr.indexOf("\n") != -1)
    {
        while(sStr.indexOf("\n") != -1)
        {
            sStr = sStr.substr(sStr.indexOf("\n")+1,sStr.length - sStr.indexOf("\n"));
            nCurCount = nCurCount + 1; 
        }
        if (sStr.length >= objMaxLength)
        {
            if (nCurCount<nLineCount-1)
            {
                objField.value = objField.value + "\n";
            }
            else
            {
                return false;
            }
        }        
    }
    else
    {
        if (sStr.length >= objMaxLength)
        {
            objField.value = objField.value + "\n";
        }
    }
    
    if(objField.value.length < objMaxLength*nLineCount)
	{
	    if (CheckLine(objField,nLineCount,evt)==true)
		    return true;
		else
		    return false;
    }
	else
	{
	    var browsername = navigator.appName;
        if (browsername == "Netscape")
        {
            var charCode = evt.which;
        }
        else
        {
            var charCode = (evt.which) ? evt.which : evt.keyCode
        }
        if (charCode==8)
        {
            return true;
        }
        else
        {
		    return false;
		}
    }
}

function CheckLine(objField,nLineCount, evt)
{
    var sStr = objField.value;
    var nCount = 0; 
    while(sStr.indexOf("\n") != -1)
    {
        sStr = sStr.substr(sStr.indexOf("\n")+1,sStr.length - sStr.indexOf("\n"));
        nCount = nCount + 1; 
    }
        
    if (nCount>=nLineCount-1)
    {
        var browsername = navigator.appName;
        if (browsername == "Netscape")
        {
            var charCode = evt.which;
        }
        else
        {
            var charCode = (evt.which) ? evt.which : evt.keyCode
        }
        
        if (charCode == 13)
        {
            return false;
        }
        else
        {
            return true;
        }            
    }      
    else
    {
        return true;
    }  
}
    
function isNumberKey(evt)
    {
         //script to disable enter key   
         ////////////////////////////////
         var key;
         if(evt)
              key = evt.keyCode;     //IE
         else
              key = evt.which;     //firefox
         if(key == 13)
              return false;
        ////////////////////////////////      
      
      // script for number check
        var browsername = navigator.appName;
        if (browsername == "Netscape")
        {
            var charCode = evt.which;
        }
        else
        {
            var charCode = (evt.which) ? evt.which : event.keyCode
        }
        if ((charCode > 31) && (charCode < 48 || charCode > 57))
	        return false;
	    else    
	        return true;
    }
var cnt = 0;
 decFlag=0;
 charCountAfterDecimal=0;


function isNumberKeyWithFloat(evt,object)
{    
    var browsername = navigator.appName;
    if (browsername == "Netscape")
    {
        var charCode = evt.charCode;
    }
    else
    {
        var charCode = (evt.which) ? evt.which : event.keyCode
    }
    if(parseInt(charCode) == 46)
    {
       if(object.value.indexOf('.')>-1) 
       {
           return false; 
        }
     }         
    if (charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 46 && charCode != 45 )
	    return false;

    return true;
}



function isNumberKeyWithFloat1(evt)
{       

        //script to disable enter key   
         ////////////////////////////////
         var key;
         if(evt)
              key = evt.keyCode;     //IE
         else
              key = evt.which;     //firefox
         if(key == 13)
              return false;
        ////////////////////////////////      

     var browsername = navigator.appName;             
    if (browsername == "Netscape")
    {
        var charCode = evt.which;         
        if(decFlag==1)
        {                        
             charCountAfterDecimal=charCountAfterDecimal + 1;
             if(charCountAfterDecimal>2)
             {
                if (charCode==8)
                {
                    charCountAfterDecimal=0;
                    decFlag=0;
                    return true;
                    
                }
                else
                {
		            return false;
		        }                             
             }           
        }
    }
    else
    {                        
        var charCode = (evt.which) ? evt.which : event.keyCode 
                
//        if(decFlag==1)
//        {            
//             charCountAfterDecimal=charCountAfterDecimal + 1;
//             if(charCountAfterDecimal>2)
//             {               
//                if (charCode==8)
//                {
//                    charCountAfterDecimal=0;
//                    decFlag=0;
//                    return true;
//                }
//                else
//                {
//		            return false;
//		        }
//             }           
//        }                     
    }
    if (charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 46 && charCode != 45)
    {
        return false;	    
    }
       
    if (charCode==46)
    {    
        decFlag = 1;                     
     }
    
    
       
    return true;
    
}

var nInner;
nInner = 0;
// JScript File
 
function KeyDownHandler(btn,evt)
{
    nInner = 1;
    if (btn != null) 
    {
        // process only the Enter key
        if (evt.keyCode == 13)
        {
            // cancel the default submit
            evt.returnValue=false;
            evt.cancel = true;
            // submit the form by programmatically clicking the specified button
            btn.click();
        }
    }
    else
    {
        //evt.returnValue=false;
        evt.cancel = true;
    }
}

function KeyDownHandlerBody(evt)
{
    if (nInner == 0)
    {
        // process only the Enter key
        if (evt.keyCode == 13)
        {
            // cancel the default submit
            evt.returnValue=false;
            evt.cancel = true;             
        } 
    }
    else
    {
        return false;
    } 
}

////disabled button when click on that - by pk
function DisableButton(objid)
{
    document.getElementById(objid).disabled=true;
    Page_ClientValidate();
    if (!Page_BlockSubmit)
    {
        __doPostBack(document.getElementById(objid).name,'Click');
    }
    else
    {
        document.getElementById(objid).disabled=false;
        return false;
    }
}

function SetCapitalize(obj,evt)
{
	if (obj.value.length >= 0)
	{	
		if (obj.value.length == 0)
		{
			if (event.keyCode >= 97 && event.keyCode <= 122)
			{	
				event.keyCode = event.keyCode - 32;
			}
		}
		else if (obj.value.length > 0)
		{
			if (obj.value.charAt(obj.value.length - 1) == " " || obj.value.charAt(obj.value.length - 1) == "\n")
			{
				if (event.keyCode >= 97 && event.keyCode <= 122)
				{	
					event.keyCode = event.keyCode - 32;
				}
			}
			else
			{
				if (event.keyCode >= 65 && event.keyCode <= 90)
				{	
					event.keyCode = event.keyCode + 32;
				}
			}
		}
	}
	return true;
}



// LTrim(string) : Returns a copy of a string without leading spaces.
function ltrim(str)
{
   var whitespace = new String(" \t\n\r");
   var s = new String(str);
   if (whitespace.indexOf(s.charAt(0)) != -1) {
      var j=0, i = s.length;
      while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
         j++;
      s = s.substring(j, i);
   }
   return s;
}

//RTrim(string) : Returns a copy of a string without trailing spaces.
function rtrim(str)
{
   var whitespace = new String(" \t\n\r");
   var s = new String(str);
   if (whitespace.indexOf(s.charAt(s.length-1)) != -1) {
      var i = s.length - 1;       // Get length of string
      while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
         i--;
      s = s.substring(0, i+1);
   }
   return s;
}

// Trim(string) : Returns a copy of a string without leading or trailing spaces
function trim(str) {
   return rtrim(ltrim(str));
}



// PopUpBlocker
function PopUpBlocker_Message(Objpopwin)
{
	//alert(Objpopwin);
	if(Objpopwin==null || typeof(Objpopwin)=="undefined") 
	{
		var popupMsg;
		popupMsg = "It appears that popups are being blocked by your browser. This site needs your browser to allow popups for proper operation. Please follow your browser's instructions to allow popups for this site.";
		alert(popupMsg);
	}
	else
	{
		Objpopwin.focus();
	}
}

function SelectAllCheckboxes(chkSelectHeader)
    {                      
    
            //alert(chkSelectHeader.id);
           xState = chkSelectHeader.checked;
           elm = chkSelectHeader.form.elements;       
           for(i=0;i<elm.length;i++)
           {                
                 var cbid = elm[i].id;
                 if(elm[i].type=="checkbox" && elm[i].id!=chkSelectHeader.id && cbid.indexOf("chkSelect") >= 0)
                 {             
                    if(elm[i].checked!=xState)
                    {                              
                         if(elm[i].checked)
                            elm[i].checked = false;
                         else                 
                            elm[i].checked = true;
                    }
                 }
           }
    } 
             
     function checkOrUncheckHeaderBox(checkbox,chkCheckAllHeaderID)
     {
        //var chkHeader=document.getElementById("M_CPH_gvPA_ctl01_chkCheckAllHeader");
        var chkHeader=document.getElementById(chkCheckAllHeaderID);
        var bFlag=false;
        elm=chkHeader.form.elements;
        for(i=0;i<elm.length;i++)
        {
            if(elm[i].type=="checkbox" && elm[i].id!=chkHeader.id)
            {
                if(elm[i].checked==false)
                {
                    bFlag=true;
                }
            }
        }
        if(bFlag==true)
        {
            chkHeader.checked=false;
        }
        else
        {
            chkHeader.checked=true;
        }            
     }
   

    function check(btnCaption,chkCheckAllHeaderID,ObjName)
    {
       //var chkHeader=document.getElementById("M_CPH_gvPA_ctl01_chkCheckAllHeader");
     
       var chkHeader=document.getElementById(chkCheckAllHeaderID);
       var bFlag=false;
       elm=chkHeader.form.elements;
       for(i=0;i<elm.length;i++)
        {
            var cbid = elm[i].id;
            if(elm[i].type=="checkbox" && elm[i].id!=chkHeader.id && cbid.indexOf("chkSelect") != -1)
            {
                if(elm[i].checked==true)
                {
                    bFlag=true;
                }
            }
        }
        if(bFlag==false)
        {
            alert("Please select atleast one Record");
            return false;
        }
        else
        { 
             
            if(btnCaption =='edit')
            {                               
                return confirm("Are you sure you want to Edit " + ObjName + "?");
            }  
            else if(btnCaption =='save')
            {                               
                return confirm("Are you sure you want to Save " + ObjName + "?");
            }
            else if(btnCaption =='delete')
            {                               
                return confirm("Are you sure you want to Delete " + ObjName + "?");
            }
            else
            {
                return confirm("Are you sure you want to send mail to " + ObjName + "?");
            }
            
        }
    } 


//Function to validate date in "dd/mm/yyyy" format 
function check_newdateformat(str_date)
{        
    var date_format = "dd/mm/yyyy";	
	if(str_date=="")
		return true;
	var i,j;		
	var RE_NUM = /^\-?\d+$/;
	var NUM_CENTYEAR = 30;
	var k,l,s;
	var arr_date = str_date.split('/');
	
	if (arr_date.length != 3) 
	{		
		return false;
	}
	else // code added by Maulik khare on 18/7/2008f
	{ 
	    for ( k=0; k<3; k++)
	    {
	        s = arr_date[k];
	  	      if ( s!= '')
	          {
	               for (l=0 ;l< s.length; l++)
	                 {
	                     var c = s.charAt(l);
	                     if ((c < "0") || (c > "9")) 
	                        { 
	                         return false; 
	                        }    
                     }
               }
            else
               {
                 return false;
               }     	      
        }  

	} // code ends here 
	j = date_format!="dd/mm/yyyy" ? 1 : 0;
	i = j > 0 ? 0 : 1;
	if (!arr_date[i]){ args.IsValid=false; return  false;} //;spacer + " - Invalid date format: '" + str_date + "'.\n" + spacer + " - No day of month value can be found.\n";
	if (!RE_NUM.exec(arr_date[j])) { args.IsValid=false;  return  false;} //spacer + " - Invalid day of month value: '" + arr_date[j] + "'.\n" + spacer + " - Allowed values are unsigned integers.\n";
	if (!arr_date[j]) { args.IsValid=false; return  false;} //spacer + " - Invalid date format: '" + str_date + "'.\n" + spacer + " - No month value can be found.\n";
	if (!RE_NUM.exec(arr_date[j])) { args.IsValid=false; return  false;}//spacer + " - Invalid month value: '" + arr_date[i] + "'.\n" + spacer + " - Allowed values are unsigned integers.\n";	
	if (!arr_date[2]) { args.IsValid=false; return  false;} //spacer + " - Invalid date format: '" + str_date + "'.\n" + spacer + " - No year value can be found.\n";
	if (!RE_NUM.exec(arr_date[2])) { args.IsValid=false; return  false;} //spacer + " - Invalid year value: '" + arr_date[2] + "'.\n" + spacer + " - Allowed values are unsigned integers.\n";

	var dt_date = new Date();
	dt_date.setDate(1);

	if (arr_date[i] < 1 || arr_date[i] > 12) 
	{			
		return false;
	} 
	dt_date.setMonth(arr_date[i]-1);
	 
	if (arr_date[2] < 100) arr_date[2] = Number(arr_date[2]) + (arr_date[2] < NUM_CENTYEAR ? 2000 : 1900);
	if(arr_date[2] < 1900 || arr_date[2] > 2100 || arr_date[2].length != 4)  
	{	    
	     return false;	    
	}  
	else
	{	
	    dt_date.setFullYear(arr_date[2]);
	}
	
	var dt_numdays = new Date(arr_date[2], arr_date[i], 0);
	dt_date.setDate(arr_date[j]);
	if (dt_date.getMonth() != (arr_date[i]-1)) 
	{		
	    
		return false;
	}
	return true;
}	
    
    
function checkDecimals(evt,fieldName) 
{
    var charCode = (evt.which) ? evt.which : event.keyCode
    if (charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 46)
	    return false;
   
   var fieldValue=fieldName.value;
   decallowed = 2;  // number of characters allowed after the decimal point.

    if (fieldValue == "") 
    {
        fieldName.select();
        fieldName.focus();
    }
    else 
    {

            var browsername = navigator.appName;
            if (browsername == "Netscape")
            {
                var charCode = evt.charCode;
            }
            else
            {
                var charCode = (evt.which) ? evt.which : event.keyCode
            }
            
            if(parseInt(charCode) == 46)
            {
               if(fieldValue.indexOf('.')>-1) 
               {              
                   return false; 
                }
             }         
           
                if (fieldValue.indexOf('.') == -1) 
                fieldValue += ".";
                dectext = fieldValue.substring(fieldValue.indexOf('.')+1, fieldValue.length);

                    if (dectext.length >= decallowed)
                    {            
                        //alert ("Oops!  Please enter a number with up to " + decallowed + " decimal places.  Please try again.");                
                        if (charCode > 31 && (charCode >= 48 || charCode <= 57) && charCode != 46 && charCode != 45 )
	                    return false;
                    }
                  
                if (charCode > 31 && (charCode < 48 || charCode > 57) && charCode != 46 && charCode != 45 )
	            return false;
            return true;
            
   
}
}

function PopUpBlocker_Message(Objpopwin)
{
	//alert(Objpopwin);
	if(Objpopwin==null || typeof(Objpopwin)=="undefined") 
	{
		var popupMsg;
		popupMsg = "It appears that popups are being blocked by your browser. You need your browser to allow popups for proper operation. Please follow your browser's instructions to allow popups for this site.";
		alert(popupMsg);
	}
	else
	{
		Objpopwin.focus();
	}
}
