﻿    function trim(s) {
	    while (s.substring(0,1) == ' ') {
	    s = s.substring(1,s.length);
	    }
	    while (s.substring(s.length-1,s.length) == ' ') {
	    s = s.substring(0,s.length-1);
	    }
	    return s;
    }

    ///Fill employee information in label w.r.t. EmployeeTextBox Value
    ///EmpTextBoxID - Client ID of Employee Text Box where Emp ERP No is filled
    ///EmpNameLabelID - Client ID of label where Employee name is to be filled
    ///It needs an array of employees arrEmployees containing employees details ... this is generated by server side code by CommonFunctions.StoreEmployeesArrayOnPage(Page)
    function fillEmpDetails(EmpTextBoxID, EmpNameLabelID, EmpDesignationLabelID, EmpAutoIDHiddenFieldID)
    {
        if(EmpTextBoxID == "")  return;
        found=false;
        for(i=0;i<arrEmployees.length;i++)
        {
            if(trim(document.getElementById(EmpTextBoxID).value.toUpperCase())==trim(arrEmployees[i][1].toUpperCase()))
            {
                if(EmpNameLabelID!="")
                    document.getElementById(EmpNameLabelID).innerHTML=arrEmployees[i][2];   //Fill Name
                if(EmpDesignationLabelID != "")
                    document.getElementById(EmpDesignationLabelID).innerHTML=arrEmployees[i][3];   //Fill Designation
                if(EmpAutoIDHiddenFieldID != "")
                    document.getElementById(EmpAutoIDHiddenFieldID).value=arrEmployees[i][0];   //Fill EmpAutoID
                found=true;
            }
        }
        if(!found)
        {
                if(EmpNameLabelID!="")
                    document.getElementById(EmpNameLabelID).innerHTML="Employee Not Found";
                if(EmpDesignationLabelID != "")
                    document.getElementById(EmpDesignationLabelID).innerHTML="Employee Not Found";   //Fill Designation
                if(EmpAutoIDHiddenFieldID != "")
                    document.getElementById(EmpAutoIDHiddenFieldID).value="-1";   //Fill EmpAutoID
        }
        return found;
    }

    ///Returns true if Employee Exists
    ///It needs an array of employees arrEmployees containing employees details ... this is generated by server side code by CommonFunctions.StoreEmployeesArrayOnPage(Page)    
    function IsEmpExists(strEmpIDERP)
    {
        found=false;
        for(i=0;i<arrEmployees.length;i++)
        {
            if(trim(strEmpIDERP.toUpperCase())==trim(arrEmployees[i][1].toUpperCase()))
            {
                found=true;
                break;
            }
        } 
        return found;   
    }    


    function CalculateTimeDifference(strFromTime, strToTime)
    {
        strFromHrs=strFromTime.substring(0,strFromTime.indexOf(':'));
        strFromMin=strFromTime.substring(strFromTime.indexOf(':')+1);
        strToHrs=strToTime.substring(0,strToTime.indexOf(':'));
        strToMin=strToTime.substring(strToTime.indexOf(':')+1);
        //alert(strFromHrs + strFromMin + strToHrs + strToMin);
//        alert(strFromHrs);
//        alert(strFromMin);
//        alert(strToHrs);
//        alert(strToMin);
        intFrom=parseInt(strFromHrs)*60+parseInt(strFromMin);
        intTo=parseInt(strToHrs)*60+parseInt(strToMin);
        //alert(intFrom + intTo);
        intDiff=parseInt(intTo) - parseInt(intFrom);
        var isNeg="";
        if(intDiff<0)   
        {
            isNeg="-";
            intDiff*=-1;
        }
        return(isNeg + parseInt(intDiff/60) + ":" + parseInt(intDiff%60));
    }

function KillEnterEvent(e)
{
    if(e.keyCode==13)
    {   
      return false;
    }
}
    function CalculateTimeDifferenceMinutes(strFromTime, strToTime)
    {

        strFromHrs=strFromTime.substring(0,strFromTime.indexOf(':'));
        strFromMin=strFromTime.substring(strFromTime.indexOf(':')+1);
        strToHrs=strToTime.substring(0,strToTime.indexOf(':'));
        strToMin=strToTime.substring(strToTime.indexOf(':')+1);
        intFrom=parseInt(strFromHrs)*60+parseInt(strFromMin);
        intTo=parseInt(strToHrs)*60+parseInt(strToMin);
        intDiff=parseInt(intTo) - parseInt(intFrom);
        return intDiff;
     }
    
//////////////////////////////Time Check Function  - CheckTime(strTimeToCheck)//////////////////////////
    function CheckHHMMFormat(strVal)
    {        
        if(strVal.indexOf(':') <= 0)    return false;
        return true;
    }

    function IsValidTime(strVal)
    {           
        strHrs=strVal.substring(0,strVal.indexOf(':'));
        if(strHrs.length>2) return false;
        if(isNaN(strHrs))   return false;
        strMin=strVal.substring(strVal.indexOf(':')+1);
        if(strMin.lenfth>2) return false;
        if(isNaN(strMin))   return false;
        return true;
    }
    function IsTimeInRange(strVal)
    {
        strHrs=strVal.substring(0,strVal.indexOf(':'));
        strMin=strVal.substring(strVal.indexOf(':')+1);
        if(parseInt(strHrs)<0 || parseInt(strHrs)>23)
            return false;
        if(parseInt(strMin)<0 || parseInt(strMin)>59)
            return false;
        return true;
    }

    //Returns "" if time is ok else error string    
    function CheckTime(strTimeToCheck)
    {
        if(!CheckHHMMFormat(strTimeToCheck))
        {            
            return "Not in HH:MM Format";
        }
        if(!IsValidTime(strTimeToCheck))
        {            
            return "Invalid Time";
        }
        if(!IsTimeInRange(strTimeToCheck))
        {            
            return "00:00 to 23:59 Only";
        }
        return "";
    }

/////////////////////////////Function To Hide Buttons When Clicked /////////////////////
function toggleBox(szDivID, iState) // 1 visible, 0 hidden
				{
				var obj = document.layers ? document.layers[szDivID] :
				document.getElementById ?  document.getElementById(szDivID).style :
				document.all[szDivID].style;
				obj.visibility = document.layers ? (iState ? "show" : "hide") :
				(iState ? "visible" : "hidden");
				}

		function getStatus()
		{
			toggleBox('btnPayCtrl',0);
			toggleBox('jobRuning',1); 
			
		}			
/////////////////////////////////////////////////////////////////////////////



///////////////////Blink text
<!-- 
var b_timer = null; // blink timer 
var b_on = true; // blink state 
var blnkrs = null; // array of spans 

function blink() { 
var tmp = document.getElementsByTagName("span"); 
if (tmp) { 
blnkrs = new Array(); 
var b_count = 0; 
for (var i = 0; i < tmp.length; ++i) { 
if (tmp[i].className == "blink") { 
blnkrs[b_count] = tmp[i]; 
++b_count; 
} 
} 
// time in m.secs between blinks 
// 500 = 1/2 second 
blinkTimer(500); 
} 
} 

function blinkTimer(ival) { 
if (b_timer) { 
window.clearTimeout(b_timer); 
b_timer = null; 
} 
blinkIt(); 
b_timer = window.setTimeout('blinkTimer(' + ival + ')', ival); 
} 

function blinkIt() { 
for (var i = 0; i < blnkrs.length; ++i) { 
if (b_on == true) { 
blnkrs[i].style.visibility = "hidden"; 
} 
else { 
blnkrs[i].style.visibility = "visible"; 
} 
} 
b_on =!b_on; 
} 
//--> 

///////////



//Fills Information On Page
//Requires SealsArray array variable stored on page
//Evaluates txtSealNo_ID as TextBox in which SealNo is passed
function fillSealsInfo(txtSealNo_ID, hidSealAutoID_ID ,hidCurrencyAutoID_ID, lblCurrencyName_ID, txtAmount_ID, txtWeight_ID, hidUOMAutoID_ID, lblUOMName_ID, hidCustAutoID_ID, lblCustomerName_ID, hidClientSiteAutoID_ID, lblSiteName_ID, lblAddress_ID, hidSealCurrentLocation_ID, hidSealCurrentLocationAutoID_ID)
{
    if(trim(txtSealNo_ID) == "")    return;
    blFound=false;
    for(i=0; i< SealsArray.length ; i++)
    {
        if(trim(document.getElementById(txtSealNo_ID).value.toUpperCase()) == trim(SealsArray[i][1].toUpperCase()))
        {//Found. Fill Info
            blFound=true;
            if(trim(hidSealAutoID_ID) != '')    document.getElementById(hidSealAutoID_ID).value = SealsArray[i][0];
            if(trim(hidCurrencyAutoID_ID)!='')  document.getElementById(hidCurrencyAutoID_ID).value = SealsArray[i][2];
            if(trim(lblCurrencyName_ID)!='')  document.getElementById(lblCurrencyName_ID).innerHTML = SealsArray[i][3];
            if(trim(txtAmount_ID) != '')    document.getElementById(txtAmount_ID).value = SealsArray[i][4];
            if(trim(txtWeight_ID) != '')    document.getElementById(txtWeight_ID).value = SealsArray[i][5];
            if(trim(hidUOMAutoID_ID) != '') document.getElementById(hidUOMAutoID_ID).value = SealsArray[i][6];
            if(trim(lblUOMName_ID) != '')   document.getElementById(lblUOMName_ID).innerHTML = SealsArray[i][7];
            if(trim(hidCustAutoID_ID) != '')    document.getElementById(hidCustAutoID_ID).value = SealsArray[i][8];
            if(trim(lblCustomerName_ID) != '')  document.getElementById(lblCustomerName_ID).innerHTML = SealsArray[i][9];
            if(trim(hidClientSiteAutoID_ID) != '')  document.getElementById(hidClientSiteAutoID_ID).value = SealsArray[i][10];
            if(trim(lblSiteName_ID) != '')  document.getElementById(lblSiteName_ID).innerHTML = SealsArray[i][11];
            if(trim(lblAddress_ID) != '')  document.getElementById(lblAddress_ID).innerHTML = SealsArray[i][12];
            if(trim(hidSealCurrentLocation_ID) != '')   document.getElementById(hidSealCurrentLocation_ID).value = SealsArray[i][14];
            if(trim(hidSealCurrentLocationAutoID_ID) != '') document.getElementById(hidSealCurrentLocationAutoID_ID).value = SealsArray[i][15];
            break;
        }
    }
    if(blFound==false)// && trim(document.getElementById(txtSealNo_ID).value)!='')
    {
        if(trim(hidSealAutoID_ID) != '')    document.getElementById(hidSealAutoID_ID).value = '0';
        if(trim(hidCurrencyAutoID_ID)!='')  document.getElementById(hidCurrencyAutoID_ID).value = '0';
        if(trim(lblCurrencyName_ID)!='')  document.getElementById(lblCurrencyName_ID).innerHTML = 'No Such Seal';
        if(trim(txtAmount_ID) != '')    document.getElementById(txtAmount_ID).value = 'No Such Seal';
        if(trim(txtWeight_ID) != '')    document.getElementById(txtWeight_ID).value = 'No Such Seal';
        if(trim(hidUOMAutoID_ID) != '') document.getElementById(hidUOMAutoID_ID).value = 'No Such Seal';
        if(trim(lblUOMName_ID) != '')   document.getElementById(lblUOMName_ID).innerHTML = 'No Such Seal';
        if(trim(hidCustAutoID_ID) != '')    document.getElementById(hidCustAutoID_ID).value = '0';
        if(trim(lblCustomerName_ID) != '')  document.getElementById(lblCustomerName_ID).innerHTML = 'No Such Seal';
        if(trim(hidClientSiteAutoID_ID) != '')  document.getElementById(hidClientSiteAutoID_ID).value = '0';
        if(trim(lblSiteName_ID) != '')  document.getElementById(lblSiteName_ID).innerHTML = 'No Such Seal';
        if(trim(lblAddress_ID) != '')  document.getElementById(lblAddress_ID).innerHTML = 'No Such Seal';
        if(trim(hidSealCurrentLocation_ID) != '')   document.getElementById(hidSealCurrentLocation_ID).value = '';
        if(trim(hidSealCurrentLocationAutoID_ID) != '') document.getElementById(hidSealCurrentLocationAutoID_ID).value = '';
    }
    return blFound;
    
}



    ///If Enter Is Pressed then presses button containing id=buttonid
    function clickButton(e, buttonid)
    { 
	try
		{
          var bt = document.getElementById(buttonid); 
          if (typeof bt == 'object')
          { 
                if(navigator.appName.indexOf("Netscape")>(-1))
                { 
                      if (e.keyCode == 13)
                      { 
                            bt.click(); 
                            return false; 
                      } 
                } 
                if (navigator.appName.indexOf("Microsoft Internet Explorer")>(-1))
                { 
                      if (event.keyCode == 13)
                      { 
                            bt.click(); 
                            return false; 
                      } 
                } 
          } 
		}
		catch(e)
		{
		}
    } 
    

    ///Used For Adding New third Party Site name to dropdown
    function addOption(dropdownid, newoptiontext, newoptionvalue)
    {   
        var blExists=false;
        for(i=0;i<document.getElementById(dropdownid).options.length;i++)
        {
            if(document.getElementById(dropdownid).options[i].value == newoptionvalue)
            {
                blExists=true;
                break;
            }
        }
        if(!blExists)
        {
            var newOption=new Option(newoptiontext, newoptionvalue);
            document.getElementById(dropdownid).options[document.getElementById(dropdownid).options.length]=newOption;
            document.getElementById(dropdownid).options[document.getElementById(dropdownid).options.length-1].selected=true;
        }
        else
        {
            document.getElementById(dropdownid).options[i].selected=true;
        }        
    }


	function isValidQuantity(strVal)
    {
        if(strVal=="") return false;
        if(isNaN(strVal))    return false;
        if(parseInt(strVal) < 0)    return false;
        //if(strVal.indexOf('.') > -1)    return false;
        //return true;
    }
    function GetKey(e)
    {
    if(String.fromCharCode(e.keyCode) < '0' || String.fromCharCode(e.keyCode) > '9')
        {
              e.keyCode = 0;
        }
    }

    
    //*-*-*-*-*-*_*_*_*_*_*_*_*-*Created By Abdul Wajid on 30-10-2006-*--*-**-*-*-*-*-*-*-**-*-*-**
//Only Time Format
        function GetTimeOnly(e)
        {
            var kc;
            kc=e.keyCode;
            if(kc != 58 && (String.fromCharCode(e.keyCode) < '0' || String.fromCharCode(e.keyCode) > '9'))
            {
            e.keyCode = 0;
            }
        }
/// Only Allow Date Format
        function GetDateOnly(e)
        {
            var kc;
            kc=e.keyCode;
            if((kc != 45 && kc != 47) && (String.fromCharCode(e.keyCode) < '0' || String.fromCharCode(e.keyCode) > '9'))
            {
            e.keyCode = 0;
            }
        }
        
 // Only for Telephine and so on*-*-*-*-* on 31/10/2006
        function GetContactFormat(e)
        {
            var kc;
            kc=e.keyCode;
            if((kc != 32 && kc != 35 && kc != 36 && kc != 40 && kc != 41 && kc != 43 && kc != 45 && kc != 47) && (String.fromCharCode(e.keyCode) < '0' || String.fromCharCode(e.keyCode) > '9'))
            {
           e.keyCode = 0;
            }
        }
        // Only Allow Character Value Alphabets
        
        function GetOnlyAlphabets(e)
        {
            var kc;
            kc=e.keyCode;
            if((kc < '97' || kc > '122') &&(kc < '65' || kc > '90'))
            {
           e.keyCode = 0;
            }
        }
//*-*-*-*-*End Coding Through Abdul Wajid-*-*-**-*-**-***-*-*-*-*-*-*-*-*-***-*-***-*-***-***-*
    
 //*************Changes done by Ajay Chauhan(31st March 2007)********
            var winn;
            function childEmployeeSearch(status1,status2,status3,status4)
			{
				if(winn==null || winn=='undefined')
				{
				    winn=window.open('SearchTemp.aspx?txtID=' + status1 +'&status2=' + status2 +'&status3=' + status3 +'&status4=' + status4 +'','','resizable=0,scrollbars=0,top=20,left=20,width=780,height=610');// left=20,top=20,width=960,height=400,toolbar=0,resizable=0,scrollbars=0
				}
				else
				{
				    winn.close();
				    winn=window.open('SearchTemp.aspx?txtID=' + status1 +'&status2=' + status2 +'&status3=' + status3 +'&status4=' + status4 +'','','resizable=0,scrollbars=0,top=20,left=20,width=780,height=610');
				}
	        //************Changes Complete*******************
			}

//e - Event. 
//Works on pressing Enter
//Returns string prefix and postfix removed.
//Does not Removes last Enter key Pressed.
//Should Attach with onKeyDown event of textbox.
function RemovePrefixPostFixOnBarCode(e)
{
    if(e.keyCode==13)
    {   
        var strVal = e.srcElement.value;
        e.srcElement.value = RemovePrefixPostFixOnBarCodeString(strVal);
    }
}



function AttachAutoTime()
{
    for(var i=0;i < document.getElementsByTagName("input").length; i++)
    {
        if(document.getElementsByTagName("input")[i].className.indexOf('AutoTime') != -1)
        {
            document.getElementsByTagName("input")[i].onkeyup = AutoTime
        }
    }
}

function AutoTime()
{
    var e=event;
    if(e.srcElement.value.length == 2)
    {
        e.srcElement.value = e.srcElement.value + ":";
    }
}

	function FunResetText(id)
	{
		if(id.value=='')
			id.value=id.title;
	}
	function FunSetText(id)
	{
		 if(id.value==id.title)
			id.value='';
	}