var isAlreadySubmitted = false;
var xmlhttp; // Global variable to hold the XmlHttpRequest object for AJAX calls
var xmlinterval; // Global variable to hold the interval reference for repeated XmlHttpRequest reqeusts.


/*function changePedigreeStatusList(){
	removePedigreeStatus();
	if (document.getElementById("pedigreeType").value=="ShippingPedigree"){
		statusforShippedPedigree();
	}
	if (document.getElementById("pedigreeType").value=="ReceivedPedigree"){
		statusforReceivedPedigree();
	}
	 if (document.getElementById("pedigreeType").value=="All"){
		statusforAllPedigree();
	}
	 if (document.getElementById("pedigreeType").value=="select"){
			resetPedigreeStatus();
	}
	document.getElementById("pedigreeStatus").focus();


}
function removePedigreeStatus(){
var i;
	var selectbox=document.getElementById("pedigreeStatus");

	for(i=selectbox.options.length-1;i>=0;i--)
	{

		selectbox.remove(i);
	}
}
function resetPedigreeStatus(){
var selectObject=document.getElementById("pedigreeStatus");
	var optn = document.createElement("OPTION");
	var optn1 = document.createElement("OPTION");
	var optn2 = document.createElement("OPTION");
	optn.text ="Active"
	optn.value="Active";
	selectObject.options.add(optn);
	optn1.text ="Cancelled"
	optn1.value="Cancelled";
	selectObject.options.add(optn1);
	optn2.text ="All"
	optn2.value="All";
	selectObject.options.add(optn2);
}
function statusforShippedPedigree(){
	var selectObject=document.getElementById("pedigreeStatus");
	var optn = document.createElement("OPTION");
	var optn1 = document.createElement("OPTION");
	var optn2 = document.createElement("OPTION");
	optn.text ="Active"
	optn.value="Active";
	selectObject.options.add(optn);
	optn1.text ="Cancelled"
	optn1.value="Cancelled";
	selectObject.options.add(optn1);
	optn2.text ="All"
	optn2.value="All";
	selectObject.options.add(optn2);

}
function statusforReceivedPedigree(){
	var selectObject=document.getElementById("pedigreeStatus");
	var optn = document.createElement("OPTION");
	optn.text ="Active"
	optn.value="Active";
	selectObject.options.add(optn);
}
function statusforAllPedigree(){
	var selectObject=document.getElementById("pedigreeStatus");
	var optn = document.createElement("OPTION");
	var optn1 = document.createElement("OPTION");
	optn.text ="Active"
	optn.value="Active";
	selectObject.options.add(optn);
	optn1.text ="All"
	optn1.value="All";
	selectObject.options.add(optn1);
}
*/
function submit_bulksearchResultForm(){
    document.forms.searchResultForm.action = 'bulkOperation';
    document.forms.searchResultForm.submit();
}
function submit_backFromConfirmBulkOperation(){
    var fromCofirmation = document.getElementById('from_confirmation_screen');
    fromCofirmation.value = "back";
    document.bulkoperationconfirmationform.submit();
}

function submit_confirmBulkOperation()
{
    var errorMsg = '';

    var bulkOperationType = document.getElementById('bulkOperationType');
    var bulkReasonCode = document.getElementById('bulkReasonCode');
    var bulkReasonDescription = document.getElementById('bulkReasonDescr');

    if (bulkReasonCode != null && bulkReasonCode.selectedIndex > 0)
    {
        bulkReasonCode = bulkReasonCode.options[bulkReasonCode.selectedIndex].value;
    }
    else
        bulkReasonCode = '';

    if (bulkReasonDescription != null)
    {
        bulkReasonDescription = bulkReasonDescription.value;
    }
    else
        bulkReasonDescription = '';

    if (bulkOperationType != null)
    {
        bulkOperationType = bulkOperationType.value;
    }
    else
        bulkOperationType = '';

    if ((bulkOperationType == 'cancelPedigree' || bulkOperationType == 'invalidatePedigree')
        && (bulkReasonCode == ''))
    {
        if (bulkReasonCode == '')
            errorMsg += 'Select the reason\n';

    }
    else
    {
        document.forms.bulkForm.submit();
    }

    if (errorMsg != '')
        alert(errorMsg);
}

function submit_searchResultForm(){

    var bulkOperDiv = document.getElementById('bulkOperationDiv');
    var errorMsg = '';


    if (bulkOperDiv && bulkOperDiv.style.display != 'none')
    {
        var certificates = document.getElementsByName('certificateID');
        var bulkOperationType = document.getElementById('bulkOperationType');
        var bulkReasonCode = document.getElementById('bulkReasonCode');
        var bulkReasonDescription = document.getElementById('bulkReasonDescr');

        var certificateSelected = false;

        if (certificates != null)
        {
            for (var i=0; i<certificates.length; i++)
            {
                if (certificates[i].checked)
                {
                    certificateSelected = true;
                    break;
                }
            }
        }

        if (bulkReasonCode != null && bulkReasonCode.selectedIndex > 0)
        {
            bulkReasonCode = bulkReasonCode.options[bulkReasonCode.selectedIndex].value;
        }
        else
            bulkReasonCode = '';

        if (bulkReasonDescription != null)
        {
            bulkReasonDescription = bulkReasonDescription.value;
        }
        else
            bulkReasonDescription = '';

        if (bulkOperationType != null)
        {
            bulkOperationType = bulkOperationType.value;
        }
        else
            bulkOperationType = '';

        if (bulkOperationType == 'signPedigree' && !certificateSelected)
        {
            errorMsg += 'Select a certificate to sign the bulk\n';
        }
        else
        if ((bulkOperationType == 'cancelPedigree' || bulkOperationType == 'invalidatePedigree')
            && (bulkReasonCode == '' || bulkReasonDescription == ''))
        {
            if (bulkReasonCode == '')
                errorMsg += 'Please select a reason code\n';

            if (bulkReasonDescription == '')
                errorMsg += 'Please add a description for the reason code\n';
        }
        else
        {
            document.forms.searchResultForm.action = 'bulkOperation';
            document.forms.searchResultForm.submit();
        }

        if (errorMsg != '')
            alert(errorMsg);
    }
    else if (document.forms.searchResultForm.pedigreeSerialNumbers)
	{
		var checkboxlength = document.forms.searchResultForm.pedigreeSerialNumbers.length;
		var pedigreeChecked = false;
		var pedigreeNum = null;

		if(parseInt(checkboxlength) > 0)
		{
			for (var index = 0; index < checkboxlength; index++) {
				pedigreeNum = document.forms.searchResultForm.pedigreeSerialNumbers[index];
				if (pedigreeNum.checked) {
					pedigreeChecked = true;
					break;
				}
			}
		}
		else if(document.forms.searchResultForm.pedigreeSerialNumbers.checked)
		{
			pedigreeChecked = true;
		}
		if(pedigreeChecked)
		{
			document.searchResultForm.submit();
		}
		else
		{
			alert("Select atleast one pedigree");
		}
	}

}

function submit_searchResultFormForReturn(){
	if (document.forms.searchResultForm.pedigreeSerialNumbers)
	{
		var checkboxlength = document.forms.searchResultForm.pedigreeSerialNumbers.length;
		var pedigreeChecked = false;
		var pedigreeNum = null;

		if(parseInt(checkboxlength) > 0)
		{
			for (var index = 0; index < checkboxlength; index++) {
				pedigreeNum = document.forms.searchResultForm.pedigreeSerialNumbers[index];
				if (pedigreeNum.checked) {
					pedigreeChecked = true;
					break;
				}
			}
		}
		else if(document.forms.searchResultForm.pedigreeSerialNumbers.checked)
		{
			pedigreeChecked = true;
		}
		if(pedigreeChecked)
		{
			document.searchResultForm.submit();
		}
		else
		{
			alert("Select a pedigree");
		}
	}
}

var canSubmitForm = true;
function addEmailToListOnEnter(e)
{
	var keynum;

	keynum = e.keyCode;
	if (keynum == 13)
	{
		canSubmitForm = false;
		if(document.getElementById("email").value != "")
		{
			if(!eMailIDcheck(document.getElementById("email").value))
			{
				document.getElementById("email").value = "";
				document.getElementById("email").focus();
				return;
			}
			else
				addEmailID('email', 'emailList');
		}
	}
}

function submit_searchResultFormForEmail(){
	if (document.forms.searchResultForm.pedigreeSerialNumbers)
	{
		var checkboxlength = document.forms.searchResultForm.pedigreeSerialNumbers.length;
		var pedigreeChecked = false;
		var pedigreeNum = null;

		if(parseInt(checkboxlength) > 0)
		{
			for (var index = 0; index < checkboxlength; index++) {
				pedigreeNum = document.forms.searchResultForm.pedigreeSerialNumbers[index];
				if (pedigreeNum.checked) {
					pedigreeChecked = true;
					break;
				}
			}
		}
		else if(document.forms.searchResultForm.pedigreeSerialNumbers.checked)
		{
			pedigreeChecked = true;
		}
		if(!pedigreeChecked)
		{
			alert("Select at least one shipped pedigree");
			return;
		}
	}

	if(document.getElementById("email").value != "")
	{
		addEmailID('email', 'emailList');
	}

	if (document.getElementById("emailList").length == 0){
		alert("Enter atleast one email ID");
			return;
	}

	if (document.getElementById("emailList").length > 0)
	{
		for(var i = 0;i < document.getElementById("emailList").length;i++){
			document.getElementById("emailList").options[i].selected = true;
		}
	}

	document.searchResultForm.submit();
}

function submit_searchResultFormForRelatedPage()
{
    if (document.forms.searchResultForm.pedigreeSerialNumbersForRelated)
	{
		var checkboxlength = document.forms.searchResultForm.pedigreeSerialNumbersForRelated.length;
		var pedigreeChecked = false;
		var pedigreeNum = null;

		if(parseInt(checkboxlength) > 0)
		{
			for (var index = 0; index < checkboxlength; index++) {
				pedigreeNum = document.forms.searchResultForm.pedigreeSerialNumbersForRelated[index];
				if (pedigreeNum.checked) {
					pedigreeChecked = true;
					break;
				}
			}
		}
		else if(document.forms.searchResultForm.pedigreeSerialNumbersForRelated.checked)
		{
			pedigreeChecked = true;
		}

        if(!pedigreeChecked)
		{
			alert("Select atleast one pedigree to view related pedigrees.");
			return;
		}

        document.forms.searchResultForm.method = 'post';

        document.forms[0].action = 'retrievepedigree';

        document.forms.searchResultForm.submit();
    }

}

function showOrHideEmailWidget(){
  if (document.forms.searchResultForm.pedigreeSerialNumbers)
	{
		var checkboxlength = document.forms.searchResultForm.pedigreeSerialNumbers.length;
		var pedigreeChecked = false;
		var pedigreeNum = null;

		if(parseInt(checkboxlength) > 0)
		{
			for (var index = 0; index < checkboxlength; index++) {
				pedigreeNum = document.forms.searchResultForm.pedigreeSerialNumbers[index];
				if (pedigreeNum.checked) {
					pedigreeChecked = true;
					break;
				}
			}
		}
		else if(document.forms.searchResultForm.pedigreeSerialNumbers.checked)
		{
			pedigreeChecked = true;
		}
		if(pedigreeChecked)
		{
			if(document.getElementById("emailWidget")){
   				document.getElementById("emailWidget").style.display = "block";
 			 }
		}
		else
		{
			if(document.getElementById("emailWidget")){
   				document.getElementById("emailWidget").style.display = "none";
 			 }
		}

		selectIndividual("pedigreeSerialNumbers", "checkForEmail");
	}
}


function submit_confirmBulkOperationForm(numberOfPedigreesToSign)
{
    var uniqueIdentifier = new Date().getTime(); // used as a unique identifier for the job
    document.getElementById("uniqueIdentifier").value = uniqueIdentifier;

	if (!isAlreadySubmitted)
	{
		document.bulkoperationconfirmationform.submit();
		isAlreadySubmitted = true;
		var anchorTags = document.getElementsByTagName("a") ;
		for (var i = 0; i < anchorTags.length ; i++){
			if(anchorTags[i].href=="javascript:submit_confirmBulkOperationForm();")
			{
				anchorTags[i].href="#";
				document.body.style.cursor= 'wait';
			}
		}


        /* Only display progress bar if bulk signing is performed for more than 150 pedigress */
        if (document.getElementById("bulkOperationType").value == "signPedigree" && numberOfPedigreesToSign > 150)
        {
            document.getElementById("back_button").style.display = "none";
            document.getElementById("update_confirmation").style.display = "none";
            document.getElementById("home_button").style.display = "inline";

            document.getElementById("progressBorder").style.display = "block"; // display the progress bar
            ajax_getSigningProgress();
            xmlinterval = setInterval("ajax_getSigningProgress()", 8000);
        }
        return isAlreadySubmitted;
	}
}

function createXMLHttpRequest() {
    // For standards-complient browsers: Firefox, Opera, Safari, etc
    try { return new XMLHttpRequest(); } catch(e) {}
    // For Internet Explorer
    try { return new ActiveXObject('MSXML2.XMLHTTP.6.0'); } catch(e)  {}
    try { return new ActiveXObject('MSXML2.XMLHTTP.3.0'); } catch(e)  {}
    try { return new ActiveXObject('MSXML2.XMLHTTP'); } catch(e)  {}
    try { return new ActiveXObject('Microsoft.XMLHTTP'); } catch(e)  {}
    return null; // ajax isn't gonna happen
 }

 function ajax_getSigningProgress() {
     xmlhttp = createXMLHttpRequest();
     var uniqueIdentifier = document.getElementById("uniqueIdentifier").value;
     if (xmlhttp != null) {
         // add a bogus timestamp to the URL so that IE actually makes the request (after the initial request) and doesn't use the previous copy, cause it will cache it. Basically, all repetitive AJAX requests using IE, need to have a unique URL and the timestamp is a way to do it.
         var timestamp = new Date().getTime();
         var xmlurl = window.location.protocol + "//" + window.location.host + document.getElementById("contextpath").value + "/proxy?" + document.getElementById("urlToBulkSigningPedigreeProgressHandler").value + "?action=getUpdate&uniqueIdentifier=" +  uniqueIdentifier + "&timestamp=" + timestamp;
         xmlhttp.open("GET", xmlurl, true);
         xmlhttp.setRequestHeader("Content-type", "text/xml");
         xmlhttp.onreadystatechange = ajax_getSigningProgress_processXML;
         xmlhttp.send(null);
    }
}

function ajax_getSigningProgress_processXML() {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {

        var response = xmlhttp.responseText;
        var xmlDoc;
        
        if (window.DOMParser) // Standards-compliant browsers
        {
              var parser=new DOMParser();
              xmlDoc = parser.parseFromString(response,"text/xml");
        }
        else // Internet Explorer
        {
              var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
              xmlDoc.async="false";
              xmlDoc.loadXML(response);
        }
        var numberCompleted = xmlDoc.getElementsByTagName('numberCompleted').item(0).firstChild.data;
        var total = xmlDoc.getElementsByTagName('total').item(0).firstChild.data;
        var percentComplete = 0;
        if (numberCompleted > 0 && total > 0)
        {
            percentComplete = Math.floor((numberCompleted / total) * 100);
        }

        var percent = percentComplete + "%";
        document.getElementById("progressBar").style.width = percent;
        document.getElementById("progressInfo").innerHTML = "Pedigree signing process...." + percent + " complete.";

        if (percentComplete == 100)
            clearInterval(xmlinterval);
    }
}

function goBack(field)
{
    document.getElementById("action").value = field;
    document.cancelpedigree.submit();
}

function submit_confirmCancelationForm(){
	
    if (!isAlreadySubmitted)
	{

        document.cancelpedigree.submit();
		isAlreadySubmitted = true;
		var anchorTags = document.getElementsByTagName("a") ;
		for (var i = 0; i < anchorTags.length ; i++){
			if(anchorTags[i].href=="javascript:submit_confirmCancelationForm();")
			{
				anchorTags[i].href="#";
				document.body.style.cursor= 'wait';
			}
		}
		return isAlreadySubmitted;
	}
	return;
}

function submit_confirmInvalidationForm(field){


	document.getElementById("action").value = field;
    
	if (!isAlreadySubmitted)
	{
		document.cancelpedigreeconfirmationform.submit();
		isAlreadySubmitted = true;
		var anchorTags = document.getElementsByTagName("a") ;
		for (var i = 0; i < anchorTags.length ; i++){
			if(anchorTags[i].href=="javascript:submit_confirmCancelationForm();")
			{
				anchorTags[i].href="#";
				document.body.style.cursor= 'wait';
			}
		}
		return isAlreadySubmitted;
	}
	return;
}

function submit_confirmInvalidateForm(field){

	document.getElementById("action").value = field;

	if (document.getElementById("invalidate_reasonCode").value=="select"){
		alert("Select a reason for invalidate");
		document.getElementById("invalidate_reasonCode").focus();
	}

    if (document.getElementById("reasonCode") != null)
    {
        if (document.getElementById("reasonCode").value=="select"){
            alert("Select a reason for cancellation");
            document.getElementById("reasonCode").focus();
        }
    }

    if (document.getElementById("invalidate_reasonCode").value!="select")
    {
        if (document.getElementById("reasonCode") == null)
        {
          document.confirmInvalidateForm.submit();
        }
        else if (document.getElementById("reasonCode").value != "select")
        {
            document.confirmInvalidateForm.submit();
        }
    }
}
function submit_confirmVoidForm(field)
{
	document.getElementById("action").value = field;

    if (document.getElementById("reasonCode").value=="select")
	{
		alert("Select the reason");
		document.getElementById("reasonCode").focus();
	}

	if (document.getElementById("reasonCode").value!="select")
	{
		document.confirmVoidForm.submit();
	}
}


function submit_adjustQuantityFromDetails()
{
	document.forms[0].submit();
}



function submit_confirmAdjust()
{
	if (document.getElementById("lot").size > 0)
	{
		if(!addItemAdjustInformation(true))
        {
            return;
        }
        
	}

	var len = document.getElementById("lotsList").length;

	if (len > 0)
    {
		for(var i = 0;i < document.getElementById("lotsList").length;i++)
        {
			document.getElementById("lotsList").options[i].selected = true;
		}
	}

    var reasonCode = document.getElementById("reasonCode");
    if (reasonCode != null)
    {
        if (reasonCode.value == "select")
        {
            alert("Select the reason");
            document.getElementById("reasonCode").focus();
        }

        if (reasonCode.value != "select")
        {
            document.forms[0].submit();
        }
    }
    else
    {
        document.forms[0].submit();
    }
}

function submit_summaryAdjust(source)
{
	document.getElementById("source").value = source;
	document.forms[0].submit();
}

function submit_toCI()
{
	document.forms[0].submit();
}

function limitComments(comments){
	if (comments.value.length > 1000) {
		comments.value = comments.value.substring(0, 1000);
	}
}

function saveDataForViewAll(reference)
{
    document.getElementById("viewAllRef").value = reference;
    document.forms[0].submit();
}

function asciiToChar(a){
	var i=a*1;
	var h = i . toString (16);
	if (h . length == 1)
	h = "0" + h;
	h = "%" + h;
	h = unescape (h);

	return h;

}

function addAttachmentEvent()
{
	var ni = document.getElementById('myDiv');
	var numi = document.getElementById('theValue');
	var num = (document.getElementById("theValue").value -1)+ 2;
	numi.value = num;
	var divIdName = "my"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
    //newdiv.innerHTML = "Element Number "+num+" has been added! <a href=\"javascript:;\" onclick=\"removeAttachmentEvent(\'"+divIdName+"\')\">Remove the div &quot;"+divIdName+"&quot;</a>";
	newdiv.innerHTML = "<input style='width:350px;' name='alt"+num+"' id='alt"+num+"' type='file' width='20'/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href=\"javascript:;\" onclick=\"removeAttachmentEvent(\'"+divIdName+"\')\" >Remove</a>";
	ni.appendChild(newdiv);
}

function removeAttachmentEvent(divNum)
{
	var d = document.getElementById('myDiv');
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}

function addAttachmentEvent1()
{
	var ni = document.getElementById('inv');
	var numi = document.getElementById('theValue2');
	var num = (document.getElementById("theValue2").value -1)+ 2;
	numi.value = num;
	var divIdName = "inv"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
    //newdiv.innerHTML = "Element Number "+num+" has been added! <a href=\"javascript:;\" onclick=\"removeAttachmentEvent(\'"+divIdName+"\')\">Remove the div &quot;"+divIdName+"&quot;</a>";
	newdiv.innerHTML = "<input style='width:350px;' name='att"+num+"' id='att"+num+"' type='file' width='20'/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href=\"javascript:;\" onclick=\"removeAttachmentEvent2(\'"+divIdName+"\')\" >Remove</a>";
	ni.appendChild(newdiv);
}

function removeAttachmentEvent2(divNum)
{
	var d = document.getElementById('inv');
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}

function resetFileUploadBox2()
{
	document.getElementById("alt").value="";
}

function enableProductDiv()
{
	if(document.getElementById("productID").value == "select"){

		document.getElementById("productInfoDiv").style.display = "none";
		return;
	}else if(document.getElementById("productID").value != "select"){
		document.getElementById("productInfoDiv").style.display = "block";
	}
}

function getProductDetailsByID(field)
{
	document.getElementById("action").value = field;

	if(document.getElementById("productID").value != "select")
	{
		document.productinformationform.submit();
	}else{

		enableProductDiv();
		return;
	}
}

function submit_ProductionInformationform(){

	if(document.getElementById("productID").value == "select")
	{
		alert("Select the product.");
		document.getElementById("productID").focus();
		return;
	}


	if(document.getElementById("productID").value != "select")
	{
		if (!isAlreadySubmitted)
		{	//trim all textfields
			//trimAllTextFeilds(document.productinformationform);
			document.productinformationform.submit();
			isAlreadySubmitted = true;
			var anchorTags = document.getElementsByTagName("a") ;
			for (var i = 0; i < anchorTags.length ; i++){
				if(anchorTags[i].href=="javascript:submit_ProductionInformationform();")
				{
					anchorTags[i].href="#";
					document.body.style.cursor= 'wait';
				}
			}
			return isAlreadySubmitted;
		}
		return;

	}
}

function trim(str)
{
   return str.replace(/^\s*|\s*$/g,"");
}

function setcodetypetextvalue(){
	document.getElementById("pct_m").value="";
}

function setselectvalue(){
	if (trim(document.getElementById("pct_m").value)!="")
	{
		var selectObject=document.getElementById("pcodetype");
		selectObject.value="select";
	}

}

function submit_contactInfo()
{
	document.getElementById("businessName").value = trim(document.getElementById("businessName").value);
	document.getElementById("firstName").value = trim(document.getElementById("firstName").value);
	document.getElementById("lastName").value = trim(document.getElementById("lastName").value);

	if(document.getElementById("businessName").value == "")
	{
		alert("Enter the business name.");
		document.getElementById("businessName").focus();
		return ;
	}

	if(trim(document.getElementById("firstName").value) == "")
	{
		alert("Select the first name.");
		document.getElementById("firstName").focus();
		return ;
	}

	if(trim(document.getElementById("lastName").value) == "")
	{
		alert("Select the last name.");
		document.getElementById("lastName").focus();
		return ;
	}

	document.contactInformation.submit();
}

function submit_BusinessNameAdd()
{
	document.getElementById("businessName").value = trim(document.getElementById("businessName").value);

	if(trim(document.getElementById("businessName").value) == "")
	{
		alert("Enter the business name.");
		document.getElementById("businessName").focus();
		return ;
	}
	document.businessInformationForm.submit();
}

function submit_PartnerInfoAdd()
{

	if(document.getElementById("businessName").value == "select")
	{
		alert("Select the business name.");
		document.getElementById("businessName").focus();
		return ;
	}

	if(document.getElementById("partnerID").value != "" && document.getElementById("partnerType").value != "select")
	{
		addOption('partnerID', 'partnerType', 'altPartnerType', 'partnerIDTypes');
	}
	if(document.getElementById("partnerID").value != "" && document.getElementById("altPartnerType").value != "")
	{
		addOption('partnerID', 'partnerType', 'altPartnerType', 'partnerIDTypes');
	}

	document.partnerInformationForm.submit();

}

function submit_AddressBookEditAddress()
{
	document.getElementById("street1").value = trim(document.getElementById("street1").value);
	document.getElementById("street2").value = trim(document.getElementById("street2").value);
	document.getElementById("city").value = trim(document.getElementById("city").value);
	document.getElementById("stateOrRegion").value = trim(document.getElementById("stateOrRegion").value);
	document.getElementById("postcode").value = trim(document.getElementById("postcode").value);
	document.getElementById("country").value = trim(document.getElementById("country").value);
	document.getElementById("businessName").value = trim(document.getElementById("businessName").value);

	if(document.getElementById("businessName").value == "")
	{
		alert("Select the business name.");
		document.getElementById("businessName").focus();
		return ;
	}
	if(document.getElementById("street1").value == "")
	{
		alert("Enter the street1.");
		document.getElementById("street1").focus();
		return ;
	}
	if(document.getElementById("city").value == "")
	{
		alert("Enter the city.");
		document.getElementById("city").focus();
		return ;
	}
	if(document.getElementById("stateOrRegion").value == "")
	{
		alert("Enter the state Or region.");
		document.getElementById("stateOrRegion").focus();
		return ;
	}
	if(document.getElementById("postcode").value == "")
	{
		alert("Enter the postcode.");
		document.getElementById("postcode").focus();
		return ;
	}
	if(document.getElementById("country").value == "")
	{
		alert("Enter the country.");
		document.getElementById("country").focus();
		return ;
	}

	document.addreesBookForm.submit();
}

function submit_AddressBookAddAddress()
{
	document.getElementById("street1").value = trim(document.getElementById("street1").value);
	document.getElementById("street2").value = trim(document.getElementById("street2").value);
	document.getElementById("city").value = trim(document.getElementById("city").value);
	document.getElementById("stateOrRegion").value = trim(document.getElementById("stateOrRegion").value);
	document.getElementById("postcode").value = trim(document.getElementById("postcode").value);
	document.getElementById("country").value = trim(document.getElementById("country").value);
	document.getElementById("businessName").value = trim(document.getElementById("businessName").value);

	if(document.getElementById("businessName").value == "")
	{
		alert("Select the business name.");
		document.getElementById("businessName").focus();
		return ;
	}


	if(document.getElementById("addressIDTypes").length < 1)
	{
		if(document.getElementById("street1").value == "" || document.getElementById("city").value == ""
			|| document.getElementById("stateOrRegion").value == "" || document.getElementById("postcode").value == ""
			|| document.getElementById("country").value == ""){

	if(document.getElementById("street1").value == "")
	{
		alert("Enter the street1.");
		document.getElementById("street1").focus();
		return ;
	}
	if(document.getElementById("city").value == "")
	{
		alert("Enter the city.");
		document.getElementById("city").focus();
		return ;
	}
	if(document.getElementById("stateOrRegion").value == "")
	{
		alert("Enter the state Or region.");
		document.getElementById("stateOrRegion").focus();
		return ;
	}
	if(document.getElementById("postcode").value == "")
	{
		alert("Enter the postcode.");
		document.getElementById("postcode").focus();
		return ;
	}
	if(document.getElementById("country").value == "")
	{
				alert("Enter the country.");
		document.getElementById("country").focus();
		return ;
	}

		}else{
			addAddressOption('street1', 'street2', 'city', 'stateOrRegion', 'postcode', 'country', 'addressIDTypes')
		}

	}

	document.addreesBookForm.submit();

}


function checkProductCodes(field1, field2, field3, field4){

	document.getElementById(field1).value = trim(document.getElementById(field1).value);

//	if (document.getElementById("productcodes").length==0){
//	if(trim(document.getElementById("pcode").value) == "")
//	{
//		alert("Enter the product code.");
//		document.getElementById("pcode").focus();
//		return 1;
//	}
//	}

	if(trim(document.getElementById(field1).value) == "")
	{
		if(field1 == "pcode"){
			alert("Enter the product code.");
		}else if(field1 == "addressID"){
			alert("Enter the address ID.");
		}else{
			alert("Enter the value.");
		}
		document.getElementById(field1).focus();
		return 1;
	}

	if (document.getElementById(field2).value=="select"){
		if(trim(document.getElementById(field3).value) == "" && trim(document.getElementById(field1).value)=="")
		{
			return 1;
		}
	}
	if ((document.getElementById(field2).value=="select") && (trim(document.getElementById(field1).value)!="")){
		if(trim(document.getElementById(field3).value) == "")
		{
			if(field1 == "pcode"){
				alert("Enter the product code type.");
			}else if(field1 == "addressID"){
				alert("Enter the address type.");
			}else{
				alert("Enter the value.");
			}
			document.getElementById(field3).focus();
			return 1;
		}
	}
	if (document.getElementById(field2).value=="select" && trim(document.getElementById(field3).value)!=""){
		if(trim(document.getElementById(field1).value) == "")
		{
			if(field1 == "pcode"){
				alert("Enter the product code.");
			}else if(field1 == "addressID"){
				alert("Enter the address ID.");
			}
			else{
				alert("Enter the value.");
			}
			document.getElementById(field1).focus();
			return 1;
		}
	}
		if(trim(document.getElementById(field3).value) != "" && trim(document.getElementById(field1).value)=="")
		{
			if(field1 == "pcode"){
				alert("Enter the product code.");
			}else if(field1 == "addressID"){
				alert("Enter the address ID.");
			}
			else{
				alert("Enter the value.");
			}
			document.getElementById(field1).focus();
			return 1;
		}
}

function addAddressOption(field1, field2, field3, field4, field5, field6, field7) {
// TODO ..Need to update the function by passing the parameters
	//if (checkProductCodes(field1, field2, field3, field4)==1){
		//return;
	//}

	var selectObject=document.getElementById(field7);
	var optionText;

	optionText=document.getElementById(field1).value+":"+document.getElementById(field2).value+":"+document.getElementById(field3).value+":"+document.getElementById(field4).value+":"+document.getElementById(field5).value+":"+document.getElementById(field6).value;

	var optn = document.createElement("OPTION");
	optn.text = optionText;
	optn.value = optionText;
	selectObject.options.add(optn);
	document.getElementById(field1).value="";
	document.getElementById(field2).value="";
	document.getElementById(field3).value="";
	document.getElementById(field4).value="";
	document.getElementById(field5).value="";
	document.getElementById(field6).value="";

	document.getElementById(field1).focus();

}

function editAddressOption(field1, field2, field3, field4, field5, field6, field7) {
	var i;
	var j=0;
	var selectbox=document.getElementById(field7);
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		if(selectbox.options[i].selected){
			j=j+1;
		}
	}
	if (j>1){
		alert("Select only one value at a time and click on edit.");
	}
	if (selectbox.selectedIndex==-1){
		alert("Select the value and click on edit.");
	}
	if (j==1){
		var productarray =document.getElementById(field7).value.split(":");
		document.getElementById(field1).value=productarray[0];
		document.getElementById(field2).value=productarray[1];
		document.getElementById(field3).value=productarray[2];
		document.getElementById(field4).value=productarray[3];
		document.getElementById(field5).value=productarray[4];
		document.getElementById(field6).value=productarray[5];

		var selIndex=document.getElementById(field7).selectedIndex;
		document.getElementById(field7).remove(selIndex);
	}
}

function addOption(field1, field2, field3, field4) {
// TODO ..Need to update the function by passing the parameters
	if (checkProductCodes(field1, field2, field3, field4)==1){
		return;
	}

	var selectObject=document.getElementById(field4);
	var optionText;

	if (document.getElementById(field2).value=="select" ){

		optionText=document.getElementById(field3).value+":"+document.getElementById(field1).value;
	}
	if (document.getElementById(field2).value!="select"){
		optionText=document.getElementById(field2).value+":"+document.getElementById(field1).value;
	}

	var optn = document.createElement("OPTION");
	optn.text = optionText;
	optn.value = optionText;
	selectObject.options.add(optn);
	document.getElementById(field1).value="";
	document.getElementById(field3).value="";
	if(field1 == "pcode"){
	document.getElementById(field2).value="NDC";
	}else{
		document.getElementById(field2).value="select";
	}
	document.getElementById(field1).focus();

}

function editOption(field1, field2, field3, field4){
	var i;
	var j=0;
	var selectbox=document.getElementById(field4);
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		if(selectbox.options[i].selected){
			j=j+1;
		}
	}
	if (j>1){
		alert("Select only one value at a time and click on edit.");
	}
	if (selectbox.selectedIndex==-1){
		alert("Select the value and click on edit.");
	}
	if (j==1){
		var productarray =document.getElementById(field4).value.split(":");
		document.getElementById(field1).value=productarray[1];

		var productCodeSelectBox = document.getElementById(field2);
		var productCodeTakenFromDropBox = 0;
		for (i=productCodeSelectBox.options.length-1;i>=0;i--)
		{
			if (productCodeSelectBox.options[i].value == productarray[0])
			{
				productCodeTakenFromDropBox = 1;
			}
		}
		if (productCodeTakenFromDropBox == 1)
		{
			document.getElementById(field2).value=productarray[0];
		} else
		{
			document.getElementById(field3).value=productarray[0];
			document.getElementById(field2).value='select';
		}

		var selIndex=document.getElementById(field4).selectedIndex;
		document.getElementById(field4).remove(selIndex);
	}
}

function unselectProductCodes(){
if (document.getElementById("productcodes").length > 0)
	{
		for(var i = 0;i < document.getElementById("productcodes").length;i++){
			document.getElementById("productcodes").options[i].selected = false;
		}
		}
}
function unselectLotsList(){
if (document.getElementById("lotsList").length > 0)
	{
		for(var i = 0;i < document.getElementById("productcodes").length;i++){
			document.getElementById("productcodes").options[i].selected = false;
		}
		}
}

function suppressBlankSpace(field){
	if (document.getElementById(field).value!=trim(document.getElementById(field).value)){
		alert("Space is not allowed.");
		document.getElementById(field).value=trim(document.getElementById(field).value);
	}
}

function settypetextvalue(field){
	document.getElementById(field).value="";
}

function settypeselectvalue(field1, field2){
	if (trim(document.getElementById(field2).value)!="")
	{
		var selectObject=document.getElementById(field1);
		selectObject.value="select";
	}

}

function unselectOptions(field){
if (document.getElementById(field).length > 0)
	{
		for(var i = 0;i < document.getElementById(field).length;i++){
			document.getElementById(field).options[i].selected = false;
		}
	}
}

function removeOptions(field)
{
	var i;
	var selectbox=document.getElementById(field);

    if (selectbox.selectedIndex==-1){
		alert("Select one or more values to delete.");
	}

	for(i=selectbox.options.length-1;i>=0;i--)
	{
	    if(selectbox.options[i].selected)
		    selectbox.remove(i);
	}
}

function removeProductCodesOptions()
{
	var i;
	var selectbox=document.getElementById("productcodes");

    if (selectbox.selectedIndex==-1){
		alert("Select atleast one value and click on remove.");
	}

	for(i=selectbox.options.length-1;i>=0;i--)
	{
	    if(selectbox.options[i].selected)
		    selectbox.remove(i);
	}
}

function addSerialNumbersEvent()
{
    var ni = document.getElementById('myDiv');
    var numi = document.getElementById('theValue');
    var num = (document.getElementById("theValue").value -1)+ 2;
    numi.value = num;
    var divIdName = "my"+num+"Div";
    var newdiv = document.createElement('div');
    newdiv.setAttribute("id",divIdName);

    //newdiv.innerHTML = "Element Number "+num+" has been added! <a href=\"javascript:;\" onclick=\"removeSerialNumbersEvent(\'"+divIdName+"\')\">Remove the div &quot;"+divIdName+"&quot;</a>";

    newdiv.innerHTML = "<input name='"+num+"' id='"+num+"' type='text' width='20'/><img src='images/spacer.gif' width='5' height='30' align='absmiddle'/><a href=\"javascript:;\" onclick=\"removeSerialNumbersEvent(\'"+divIdName+"\')\" >Remove</a>";
    ni.appendChild(newdiv);
    }

function addItemSerialNumbersEvent()
{
    var ni = document.getElementById('myDiv');
    var numi = document.getElementById('isnValue');
    var num = (document.getElementById("isnValue").value -1)+ 2;
    numi.value = num;
    var divIdName = "my"+num+"Div";
    var newdiv = document.createElement('div');
    newdiv.setAttribute("id",divIdName);

    newdiv.innerHTML = "<input name='"+num+"' id='"+num+"' type='text' width='20'/><img src='images/spacer.gif' width='5' height='30' align='absmiddle'/><a href=\"javascript:;\" onclick=\"removeItemSerialNumbersEvent(\'"+divIdName+"\')\" >Remove</a>";
    ni.appendChild(newdiv);
}

function addReceivedItemSerialNumbersEvent()
{
    var ni = document.getElementById('myRDiv');
    var numi = document.getElementById('risnValue');
    var num = (document.getElementById("risnValue").value -1)+ 2;
    numi.value = num;
    var divIdName = "my"+num+"RDiv";
    var newdiv = document.createElement('div');
    newdiv.setAttribute("id",divIdName);

    newdiv.innerHTML = "<input name='"+num+"' id='"+num+"' type='text' width='20'/><img src='images/spacer.gif' width='5' height='30' align='absmiddle'/><a href=\"javascript:;\" onclick=\"removeReceivedItemSerialNumbersEvent(\'"+divIdName+"\')\" >Remove</a>";
    ni.appendChild(newdiv);
}

function addDiffItemSerialNumbersEvent()
{
    var ni = document.getElementById('myDDiv');
    var numi = document.getElementById('disnValue');
    var num = (document.getElementById("disnValue").value -1)+ 2;
    numi.value = num;
    var divIdName = "my"+num+"DDiv";
    var newdiv = document.createElement('div');
    newdiv.setAttribute("id",divIdName);

    newdiv.innerHTML = "<input name='"+num+"' id='"+num+"' type='text' width='20'/><img src='images/spacer.gif' width='5' height='30' align='absmiddle'/><a href=\"javascript:;\" onclick=\"removeDiffItemSerialNumbersEvent(\'"+divIdName+"\')\" >Remove</a>";
    ni.appendChild(newdiv);
}

function addEnvelopeItemSerialNumbersEvent()
{
    var ni = document.getElementById('myEDiv');
    var numi = document.getElementById('eisnValue');
    var num = (document.getElementById("eisnValue").value -1)+ 2;
    numi.value = num;
    var divIdName = "my"+num+"EDiv";
    var newdiv = document.createElement('div');
    newdiv.setAttribute("id",divIdName);

    newdiv.innerHTML = "<input name='"+num+"' id='"+num+"' type='text' style='width:100px;' /><img src='images/spacer.gif' width='1' height='30' align='absmiddle'/><a href=\"javascript:;\" onclick=\"removeEnvelopeItemSerialNumbersEvent(\'"+divIdName+"\')\" >Remove</a>";
    ni.appendChild(newdiv);
}
function addAnotherEvent()
{
	var ni = document.getElementById('eDiv');
	var numi = document.getElementById('theCount');
	var num = (document.getElementById("theCount").value -1)+ 2;
	numi.value = num;
	var divIdName = "e"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);

	newdiv.innerHTML = "<input name='"+num+"' id='"+num+"' type='text' width='20'/><img src='images/spacer.gif' width='5' height='30' align='absmiddle'/><a href=\"javascript:;\" class='newtxt' onclick=\"removeAdditionalEvent(\'eDiv\', \'"+divIdName+"\')\" >Remove</a>";
	ni.appendChild(newdiv);
}

function removeAdditionalEvent(divName, divNum)
{
	var d = document.getElementById(divName);
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}


function removeSerialNumbersEvent(divNum)
{
	var d = document.getElementById('myDiv');
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}

function removeItemSerialNumbersEvent(divNum)
{
	var d = document.getElementById('myDiv');
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}

function removeReceivedItemSerialNumbersEvent(divNum)
{
	var d = document.getElementById('myRDiv');
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}

function removeDiffItemSerialNumbersEvent(divNum)
{
	var d = document.getElementById('myDDiv');
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}

function removeEnvelopeItemSerialNumbersEvent(divNum)
{
	var d = document.getElementById('myEDiv');
	var olddiv = document.getElementById(divNum);
	d.removeChild(olddiv);
}

function validatemandatory(){
	if (trim(document.getElementById("lot").value)==""){

		alert("Enter the lot number.");
		document.getElementById("lot").focus();
		return 1;
	}

	if (trim(document.getElementById("quantity").value)==""){

		alert("Enter the quantity.");
		document.getElementById("quantity").focus();
		return 1;
	}
	if (getLotNumberfromList()==1){
			document.getElementById("lot").focus();
				alert("The lot number already entered.");
			return 1;

	}
	if (isQuantityNumeric() == 1){
		document.getElementById("quantity").focus();
		return 1;
	}
}
function checkDuplicateLot(){

	if (getLotNumberfromList()==1)
	{
		alert("The lot number already entered.");
		document.getElementById('lot').focus();
			}
}
function submit_ItemInformationform(theMinYear,theMaxYear){
	var selectbox=document.getElementById("lotsList");

	if (selectbox.options.length==0){
		//alert("Enter atleast one Lot");
		//document.getElementById("lot").focus();
		//return;

		if(theMinYear && theMaxYear)
		{
			addLot(theMinYear,theMaxYear);
		}
		else
		{
			addLot();
		}
	}
	if (selectbox.options.length > 0 ){
		if (document.getElementById("quantity").value!="" || document.getElementById("lot").value!=""){
			//alert("Enter atleast one Lot");
			//document.getElementById("lot").focus();
			//return;
			if (validatemandatory()==1){
				return;
			}

			if(theMinYear && theMaxYear)
			{
				addLot(theMinYear,theMaxYear);
			}
			else
			{
				addLot();
			}
		}
	}
	if (selectbox.options.length>0){

		for(var i = 0;i < document.getElementById("lotsList").length;i++){
			document.getElementById("lotsList").options[i].selected = true;
		}



		if (!isAlreadySubmitted)
		{
			document.iteminformation.submit();
			isAlreadySubmitted = true;
			var anchorTags = document.getElementsByTagName("a") ;
			for (var i = 0; i < anchorTags.length ; i++){
				if(anchorTags[i].href=="javascript:submit_ItemInformationform();")
				{
					anchorTags[i].href="#";
					document.body.style.cursor= 'wait';
				}
			}
			return isAlreadySubmitted;
		}
		return;

	}
}

function validatePositiveInteger(domObject)
{
    //positive integer pattern
    var pattern = /^[1-9]+[0-9]*$/;
    var str = domObject.value;
    if(!str.match(pattern))
    {
        //alert if value contains anything other then digits
        if(str != '' && str == 0)
        {
            alert("Value must be grater than zero.");

        }
        else if (str.match(/[^\d]/gi))
        {
            alert("Enter numeric value");
        }
         domObject.value = '';
    }

}

function validateNumeric(t)
{
    var patt = /(\d*)\{1}(\d{0,2})/;
    var donepatt = /^(\d*)\.{1}(\d{2})$/;
    var str = t.value;
    var result;
    if (!str.match(donepatt))
    {
        result = str.match(patt);
        if (result!= null)
        {
                t.value = t.value.replace(/[^\d]/gi,'');
                str = result[1] + '.' + result[2] ;
                t.value = str;
        }
        else
        {
            if (t.value.match(/[^\d]/gi))
                alert("Enter numeric value");
            t.value = t.value.replace(/[^\d]/gi,'');
        }
    }
}

function isQuantityNumeric()
{
	var quantity = trim(document.getElementById("quantity").value);
	for (i = 0 ; i < quantity.length; i++)
	{
		var ch = quantity.charAt(i);

		if ((ch!=0) && (ch!=1) && (ch!=2) && (ch!=3) && (ch!=4) && (ch!=5) && (ch!=6) && (ch!=7) && (ch!=8) && (ch!=9) && (ch==" ") )
		{
			alert("Enter a numeric value for quantity.");
			return 1;
		}
	}
}

function addLot(minYearRequested,maxYearRequested)
{
	trimAllTextFeilds(document.iteminformation);

	if (validatemandatory()==1)
    {
		return;
	}

	var serialnumbers;
	var selectObject=document.getElementById("lotsList");

	if (document.getElementById('theValue').value>0 )
    {
		serialnumbers=document.getElementById('isn').value + asciiToChar(177);

	    for (var i=1;i<= document.getElementById('theValue').value;i++)
	    {
		    if (document.getElementById(i))
            {
			    serialnumbers= serialnumbers+document.getElementById(i).value;
    			serialnumbers=serialnumbers + asciiToChar(177) ;
            }
 	    }
    }
    else
    {
	    serialnumbers=document.getElementById('isn').value;
    }

    var edate;
    if (document.getElementById('expyear').value=='year' || document.getElementById('expmonth').value=='month' || document.getElementById('expday').value=='day')
    {
        edate="";
    }
    if (document.getElementById('expyear').value!='year' && document.getElementById('expmonth').value!='month' && document.getElementById('expday').value!='day')
    {
        if (isDate(document.getElementById('expmonth').value+"/"+document.getElementById('expday').value+"/"+document.getElementById('expyear').value,minYearRequested,maxYearRequested)==false)
        {
            return;
        }
	    edate=document.getElementById('expyear').value+"/"+document.getElementById('expmonth').value+"/"+document.getElementById('expday').value;
    }
    var newlot;

    newlot= document.getElementById('lot').value+asciiToChar(167)+edate+asciiToChar(167)+ document.getElementById('quantity').value +asciiToChar(167)+serialnumbers;


	var optn = document.createElement("OPTION");
	if (edate=="")
    {
		optn.text = 'Lot number:'+document.getElementById('lot').value+' , Quantity:'+ document.getElementById('quantity').value;
	}
	if (edate!="")
    {
	    optn.text = 'Lot number:' + document.getElementById('lot').value+' , Expiration date:'+edate+' , Quantity:'+ document.getElementById('quantity').value;
	}
	optn.value = newlot;
	selectObject.options.add(optn);

	document.getElementById('lot').value="";
	document.getElementById('edate').value="";
	document.getElementById('quantity').value="";
	document.getElementById('isn').value="";
	document.getElementById('lot').focus();
	if (document.getElementById('theValue').value>0)
    {
	    for (var j=1;j<=document.getElementById('theValue').value;j++)
        {
		    var divname="my"+j+"Div";
			if (document.getElementById(divname))
            {
				removeSerialNumbersEvent(divname);
			}
		}
	}
	document.getElementById('theValue').value=0;
	document.getElementById('expyear').value='year';
	document.getElementById('expmonth').value='month';
	document.getElementById('expday').value='day';
}

function showLot(){

	var lotvalues= new Array();
	var datevalues=new Array();
	lotvalues=document.getElementById("lotsList").value.split(asciiToChar(167));


	document.getElementById('lot').value=lotvalues[0];
	if (lotvalues[1]!="")
    {
    	datevalues=lotvalues[1].split("/");
    	document.getElementById('expyear').value=datevalues[0];
    	document.getElementById('expmonth').value=datevalues[1];
    	document.getElementById('expday').value=datevalues[2];
	}

	if (lotvalues[1]=="")
    {
    	document.getElementById('expyear').value="year";
    	document.getElementById('expmonth').value="month";
    	document.getElementById('expday').value="day";
	}

	document.getElementById('quantity').value=lotvalues[2];
	var serialnumbers=new Array();
	serialnumbers=lotvalues[3].split(asciiToChar(177));

	for (var i=0;i<serialnumbers.length;i++)
    {
		if (i==0)
        {
			document.getElementById('isn').value=serialnumbers[0];
		}
		if (i!=0 && serialnumbers[i]!="")
        {
			addSerialNumbersEvent();
			document.getElementById(i).value=serialnumbers[i];
		}
	}
}

function removelotsListOptions()
{
	var i;
	var selectbox=document.getElementById("lotsList");
	if (selectbox.selectedIndex==-1){
		alert("Select one or more values to delete.");
	}
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		if(selectbox.options[i].selected)
			selectbox.remove(i);
	}
	document.getElementById("lot").focus();
}

function editLot()
{
	var i;
	var j=0;
	var selectbox=document.getElementById("lotsList");
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		if(selectbox.options[i].selected){
			j=j+1;

		}
	}

	if (j==0){
		if (selectbox.options.length>0){
		alert("Select the lot");
		selectbox.focus();
		}
		if (selectbox.options.length==0){
			document.getElementById("lot").focus();
		}

	}
	if (j>1){
		alert("Select one lot number.");
		selectbox.focus();
	}
	if (j==1){
		if (document.getElementById('theValue').value>0){
			for (var j=1;j<=document.getElementById('theValue').value;j++){
				var divname="my"+j+"Div";
				if (document.getElementById(divname)){
					removeSerialNumbersEvent(divname);
				}
			}
		}
		document.getElementById('theValue').value=0;
		showLot();
		removelotsListOptions();
	}
}

function getLotNumberfromList(){

	var selectObject=document.getElementById("lotsList");

	if(selectObject)
	{
		var lotvalues= new Array();
		var selectbox=document.getElementById("lotsList");
		for(i=selectbox.options.length-1;i>=0;i--)
		{
			lotvalues=selectbox.options[i].value.split(asciiToChar(167));
			if (trim(lotvalues[0])==trim(document.getElementById("lot").value)){
				return 1;
			}
		}
	}
	return 0;


}

function resetAddPaperPedigreeBox()
{
	document.forms[0].att.value='';
}

function resetFileUploadBox1()
{
	document.getElementById("att").value="";
}

/*
Changed 3 Aug 2006 : For temporarily commenting out
Putting the old method in place. We would revert when Client gives a go ahead for new functionality.*/
function submit_summary(areDocumentInfoFieldsExisting){
 if (areDocumentInfoFieldsExisting){
	if (document.getElementById("transactionType_additional").value!="select" || trim(document.getElementById("transactionId_additional").value)!=''){
		if (document.getElementById("transactionType_additional").value=="select"){
		alert("Select the document type");
		document.getElementById("transactionType_additional").focus();
		return;
		}
		if (trim(document.getElementById("transactionId_additional").value)==""){
		alert("Enter the document number");
		document.getElementById("transactionId_additional").focus();
		return;
		}
		if (check_alternatetransactiondate()==1){
		return;
		}

	}
	if (document.getElementById("transactionType_additional").value!="select"){
	add_summarydocumentnumber();
	}
	selectdocumentNumbers();
	}

	if (document.getElementById("destination_id").value=="select"){
		alert("Select the destination");
		document.getElementById("destination_id").focus();
		return;
	}

	if(areDocumentInfoFieldsExisting == true)
	{
		if (document.getElementById("transactionType").value=="select")
		{
			alert("Select the document type.");
			document.getElementById("transactionType").focus();
			return;
		}
		if(trim(document.getElementById("transactionId").value) =='')
		{
			alert("Provide the document number.");
			document.getElementById("transactionId").focus();
			return;
		}

		//this is an optional field, validate only if user has selected one of the date values.
		if(document.getElementById("transyear").value!='Select'
			|| document.getElementById("transmonth").value!='Select'
			|| document.getElementById("transday").value!='Select')
		{
			if (document.getElementById("transyear").value=='Select' )
			{
				document.getElementById("transactionDate").value="";
				document.getElementById("transyear").focus();
				alert("Provide the transaction year.");
				return;
			}

			if (document.getElementById("transmonth").value=='Select' )
			{
				document.getElementById("transactionDate").value="";
				document.getElementById("transmonth").focus();
				alert("Provide the transaction month.");
				return;
			}

			if (document.getElementById("transday").value=='Select')
			{
				document.getElementById("transactionDate").value="";
				document.getElementById("transday").focus();
				alert("Provide the transaction day.");
				return;
			}

			if (document.getElementById("transyear").value!='Select'
				&& document.getElementById("transmonth").value!='Select'
				&& document.getElementById("transday").value!='Select')
			{
				if (isDate(document.getElementById("transmonth").value+"/"+document.getElementById("transday").value+"/"+document.getElementById("transyear").value)==false)
				{
					return;
				}
			}

			if (document.getElementById("transyear").value!='Select'
				&& document.getElementById("transmonth").value!='Select'
				&& document.getElementById("transday").value!='Select')
			{
				document.getElementById("transactionDate").value=document.getElementById("transyear").value+"-"+document.getElementById("transmonth").value+"-"+document.getElementById("transday").value;
			}
		}
	}

	if (!isAlreadySubmitted)
	{
		document.summary.submit();
		isAlreadySubmitted = true;
		var anchorTags = document.getElementsByTagName("a") ;
		for (var i = 0; i < anchorTags.length ; i++){
			if(anchorTags[i].href=="javascript:submit_summary();")
			{
				anchorTags[i].href="#";
				document.body.style.cursor= 'wait';
			}
		}
		return isAlreadySubmitted;
	}
	return;

}



/*old method placed as client requested to revert back latest functionality for an indefinite period
 till their customer are ready to accept latest functionality. Delete this method later and uncomment
 the method existign above.

function submit_summary(areDocumentInfoFieldsExisting){


	if (document.getElementById("destination_id").value=="select"){
		alert("Select the destination");
		document.getElementById("destination_id").focus();
		return;
	}

	if(areDocumentInfoFieldsExisting == true)
	{
		if (document.getElementById("transactionType").value=="select")
		{
			alert("Select the document type.");
			document.getElementById("transactionType").focus();
			return;
		}
		if(trim(document.getElementById("transactionId").value) =='')
		{
			alert("Provide the document number.");
			document.getElementById("transactionId").focus();
			return;
		}

		//this is an optional field, validate only if user has selected one of the date values.
		if(document.getElementById("transyear").value!='Select'
			|| document.getElementById("transmonth").value!='Select'
			|| document.getElementById("transday").value!='Select')
		{
			if (document.getElementById("transyear").value=='Select' )
			{
				document.getElementById("transactionDate").value="";
				document.getElementById("transyear").focus();
				alert("Provide the transaction year.");
				return;
			}

			if (document.getElementById("transmonth").value=='Select' )
			{
				document.getElementById("transactionDate").value="";
				document.getElementById("transmonth").focus();
				alert("Provide the transaction month.");
				return;
			}

			if (document.getElementById("transday").value=='Select')
			{
				document.getElementById("transactionDate").value="";
				document.getElementById("transday").focus();
				alert("Provide the transaction day.");
				return;
			}

			if (document.getElementById("transyear").value!='Select'
				&& document.getElementById("transmonth").value!='Select'
				&& document.getElementById("transday").value!='Select')
			{
				if (isDate(document.getElementById("transmonth").value+"/"+document.getElementById("transday").value+"/"+document.getElementById("transyear").value)==false)
				{
					return;
				}
			}

			if (document.getElementById("transyear").value!='Select'
				&& document.getElementById("transmonth").value!='Select'
				&& document.getElementById("transday").value!='Select')
			{
				document.getElementById("transactionDate").value=document.getElementById("transyear").value+"-"+document.getElementById("transmonth").value+"-"+document.getElementById("transday").value;
			}
		}
	}

	if ( isAlreadySubmitted == false)
	{
		document.summary.submit();
		isAlreadySubmitted = true;
		var anchorTags = document.getElementsByTagName("a") ;
		for (var i = 0; i < anchorTags.length ; i++){
			if(anchorTags[i].href=="javascript:submit_summary();")
			{
				anchorTags[i].href="#";
				document.body.style.cursor= 'wait';
			}
		}
		return isAlreadySubmitted;
	}
	return;

}

*/
function summary_checkforduplicate(){

	if (document.getElementById("documentNumbers").options.length>0){
	for (var i=0;i<document.getElementById("documentNumbers").options.length;i++){
		var documentvalues=document.getElementById("documentNumbers").options[i].value.split(asciiToChar(167));
		if (documentvalues[0]==document.getElementById("transactionType_additional").value && documentvalues[1]==document.getElementById("transactionId_additional").value){
		 return 1;
		}

		}
	}
}

function check_alternatetransactiondate()
{
	if(document.getElementById("transyear_additional").value!='select'
				|| document.getElementById("transmonth_additional").value!='select'
				|| document.getElementById("transday_additional").value!='select')
			{
				if (document.getElementById("transyear_additional").value=='select' )
				{
					document.getElementById("transactionDate_additional").value="";
					document.getElementById("transyear_additional").focus();
					alert("Provide the transaction year.");
					return 1;
				}

				if (document.getElementById("transmonth_additional").value=='select' )
				{
					document.getElementById("transactionDate_additional").value="";
					document.getElementById("transmonth_additional").focus();
					alert("Provide the transaction month.");
					return 1;
				}

				if (document.getElementById("transday_additional").value=='select')
				{
					document.getElementById("transactionDate_additional").value="";
					document.getElementById("transday_additional").focus();
					alert("Provide the transaction day.");
					return 1;
				}

				if (document.getElementById("transyear_additional").value!='select'
					&& document.getElementById("transmonth_additional").value!='select'
					&& document.getElementById("transday_additional").value!='select')
				{
					if (isDate(document.getElementById("transmonth_additional").value+"/"+document.getElementById("transday_additional").value+"/"+document.getElementById("transyear_additional").value)==false)
					{
						document.getElementById("transday_additional").focus();
						return 1;
					}
				}

				if (document.getElementById("transyear_additional").value!='select'
					&& document.getElementById("transmonth_additional").value!='select'
					&& document.getElementById("transday_additional").value!='select')
				{
					document.getElementById("transactionDate_additional").value=document.getElementById("transyear_additional").value+"-"+document.getElementById("transmonth_additional").value+"-"+document.getElementById("transday_additional").value;
				}
		}

}

function add_summarydocumentnumber()
{
	if (summary_checkforduplicate()==1){
	alert("The Document Number and Type already entered");
	document.getElementById("transactionId_additional").focus();
	return 1;
	}
	if (document.getElementById("transactionType_additional").value=="select" ){
		alert("Select the Document type");
		document.getElementById("transactionType_additional").focus();
		return;
	}
	if (trim(document.getElementById("transactionId_additional").value)==''){
		alert("Provide the Document Number");
		document.getElementById("transactionId_additional").focus();
		return;
	}

	if (check_alternatetransactiondate()==1){
		return;
	}

	var selectObject=document.getElementById("documentNumbers");
	var optionText;
	var optionValue;


	if (document.getElementById("transactionType_additional").value!="select"){

		optionText=document.getElementById("transactionType_additional").value+ ":"+document.getElementById("transactionId_additional").value;

		optionValue=document.getElementById("transactionType_additional").value+asciiToChar(167)+document.getElementById("transactionId_additional").value;
		if (document.getElementById("transyear_additional").value!='select'&&document.getElementById("transmonth_additional").value!='select'&&document.getElementById("transday_additional").value!='select')
		{
			optionValue=optionValue+asciiToChar(167)+document.getElementById("transyear_additional").value+"-"+document.getElementById("transmonth_additional").value+"-"+document.getElementById("transday_additional").value;
			optionText=optionText+":"+document.getElementById("transyear_additional").value+"-"+document.getElementById("transmonth_additional").value+"-"+document.getElementById("transday_additional").value;
		}

	}

	var optn = document.createElement("OPTION");
	optn.text = optionText;
	optn.value = optionValue;
	selectObject.options.add(optn);
	document.getElementById("transactionId_additional").value="";
	document.getElementById("transactionType_additional").value="select";
	document.getElementById("transyear_additional").value="select";
	document.getElementById("transmonth_additional").value="select";
	document.getElementById("transday_additional").value="select";
	document.getElementById("transactionType_additional").focus();


}

function edit_summarydocumentnumber()
{
	var i;
	var j=0;

	var selectbox=document.getElementById("documentNumbers");
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		if(selectbox.options[i].selected){
			j=j+1;

		}
	}


	if (j>1){
		alert("Select only one Document Number at a time and click on edit.");
	}
	if (selectbox.selectedIndex==-1){
		alert("Select the Document Number and click on edit.");
	}
	if (j==1){
		var documentNumberarray =document.getElementById("documentNumbers").value.split(asciiToChar(167));
		document.getElementById("transactionType_additional").value=documentNumberarray[0];
		document.getElementById("transactionId_additional").value=documentNumberarray[1];
		if (documentNumberarray[2]!=null){
		var transdate=documentNumberarray[2].split("-");
		document.getElementById("transyear_additional").value=transdate[0];
		document.getElementById("transmonth_additional").value=transdate[1];
		document.getElementById("transday_additional").value=transdate[2];
		}
		var selIndex=document.getElementById("documentNumbers").selectedIndex;
		document.getElementById("documentNumbers").remove(selIndex);

	}

}

function unselect_summarydocumentnumber()
{
if (document.getElementById("documentNumbers").length > 0)
	{
		for(var i = 0;i < document.getElementById("documentNumbers").length;i++){
			document.getElementById("documentNumbers").options[i].selected = false;
		}
		}
}

function selectdocumentNumbers()
{

if (document.getElementById("documentNumbers").length > 0)
	{
		for(var i = 0;i < document.getElementById("documentNumbers").length;i++){
			document.getElementById("documentNumbers").options[i].selected = true;
		}
		}


}

function remove_summarydocumentnumbers()
{
	var i;
	var j;
		var selectbox=document.getElementById("documentNumbers");


	for(i=selectbox.options.length-1;i>=0;i--)
	{
	if(selectbox.options[i].selected)
		selectbox.remove(i);
	}

}

function submitAttachmentForm()
{
	if (!isAlreadySubmitted)
	{
	   if (trim(document.getElementById("enforceCheck").value)=='true' ){
		   if (trim(document.getElementById("alt").value)==''){
				alert("Add a Paper Pedigree Document");
				document.getElementById("alt").focus();
				return;
			}
	   }

		document.attachmentandaltpedigree.submit();
		isAlreadySubmitted = true;
		var anchorTags = document.getElementsByTagName("a") ;
		for (var i = 0; i < anchorTags.length ; i++){
			if(anchorTags[i].href=="javascript:submitAttachmentForm();")
			{
				anchorTags[i].href="#";
				document.body.style.cursor= 'wait';
			}
		}
		return isAlreadySubmitted;
	}
	return;
}

function openWindow(url)
{
	ref = window.open(url);
	ref.focus();
}

function showDigestValue(id){
	document.getElementById("showDigest"+id).style.display = "none";
	document.getElementById("hideDigestValue"+id).style.display = "block";
	document.getElementById("hideDigest"+id).style.display = "block";
}

function hideDigestValue(id){
	document.getElementById("showDigest"+id).style.display = "block";
	document.getElementById("hideDigestValue"+id).style.display = "none";
	document.getElementById("hideDigest"+id).style.display = "none";
}

function openrepackageprintversion(){
window.open("repackagedpedigreedetails?printerfriendly=yes","","menubar=1,resizable=0,width=700,height=550,addressbar=0,scrollbars=1,left=25,top=25,menubar=0");
}



function openrepackagepdf(){
window.open("repackagedpedigreedetails?pdf=yes","");
}




function openrepackflowprintversion(pedigreeserialnumber){

window.open("pedigreedetailsforrepackaged?pedigreeSerialNumber="+pedigreeserialnumber+"&printerfriendly=yes","","menubar=1,resizable=0,width=700,height=550,addressbar=0,scrollbars=1,left=25,top=25,menubar=0");
}


function openrepackflowpdf(pedigreeserialnumber){

window.open("pedigreedetailsforrepackaged?pedigreeSerialNumber="+pedigreeserialnumber+"&pdf=yes","");
}

function opencsvhelp()
{
	window.open("csvhelp.jsp","","menubar=1,resizable=0,width=700,height=350,addressbar=0,scrollbars=1,left=275,top=275,menubar=0");
}

function openpedigreedetailsprintversion(queryString){

window.open("pedigreedetails"+queryString+"&printerfriendly=yes","","menubar=1,resizable=0,width=700,height=550,addressbar=0,scrollbars=1,left=25,top=25,menubar=0");
}

function openpedigreedetailspdf(queryString){

window.open("pedigreedetails"+queryString+"&pdf=yes","");
}

//added by Rambabu.
//This method will trim all the textfields in the form.
function trimAllTextFeilds(form)
{
	var totalfields = form.length;

	for (i = 0; i < totalfields; i++)
	{
		if(form[i].type == "text")
		{
			form[i].value = trim(form[i].value);
		}
	}
}

function submitLoginForm()
{
	trimAllTextFeilds(document.loginform);
	//added by rambabu
	if (document.loginform.rememberMe.checked) {
      setCookie('userID', document.loginform.login.value, '30'); // expires in 30 days
    }
    else
    {
    	setCookie('userID', '', '-10');
    }
	document.loginform.submit();
}

//added by rambabu
function setCookie(name, value, daysExpire) {
 if(daysExpire) {
   var expires = new Date();
   expires.setTime(expires.getTime() + 1000*60*60*24*daysExpire);
 }
 document.cookie = name + "=" + escape(value) + (daysExpire == null ? "" : (";expires=" + expires.toGMTString())) + ";path=/";
}

//added by rambabu
function getCookie(Name)
{
 var search = Name + "=";
 if (document.cookie.length > 0)
 { // if there are any cookies
   offset = document.cookie.indexOf(search);
   if (offset != -1) { // if cookie exists
     offset += search.length;
     // set index of beginning of value
     end = document.cookie.indexOf(";", offset);
     // set index of end of cookie value
     if (end == -1)
       end = document.cookie.length;
     return unescape(document.cookie.substring(offset, end));
   }
 }
}

function checkloginEnter(e)
{
	var characterCode;

	if(e && e.which)
    {
		//if which property of event object is supported (NN4)
		e = e;
		characterCode = e.which; //character code is contained in NN4's which property
	}
    else
    {
		e = event;
		characterCode = e.keyCode; //character code is contained in IE's keyCode property
	}

	if(characterCode == 13)
    {
        //if generated character code is equal to ascii 13 (if enter key)
	    submitLoginForm();
	    return false;
	}
	else
    {
    	return true;
	}
}


function submit_restricteduserform(){

//05/20/2006 modified for adding customer account number validation
if (trim(document.getElementById("customerAccountNumber").value)==''){
alert("Enter the Customer Account Number");
document.getElementById("customerAccountNumber").focus();
return;
}
//05/20/2006 modified for adding document number validation
if (trim(document.getElementById("transactionType").value) !='select' && trim(document.getElementById("transactionId").value) =='' ){
alert("Enter the Document Number");
document.getElementById("transactionId").focus();
return;

}


document.getElementById("customerAccountNumber").value=trim(document.getElementById("customerAccountNumber").value);

document.getElementById("transactionId").value=trim(document.getElementById("transactionId").value);
document.forms[0].submit();
}



function checkrestrictedEnter(e)
{
	var characterCode;

	if(e && e.which)
    {
		//if which property of event object is supported (NN4)
		e = e;
		characterCode = e.which; //character code is contained in NN4's which property
	}
    else
    {
		e = event;
		characterCode = e.keyCode; //character code is contained in IE's keyCode property
	}

	if(characterCode == 13)
    {
        //if generated character code is equal to ascii 13 (if enter key)
	    submit_restricteduserform();
	    return false;
	}
	else
    {
	    return true;
	}

}




function checknorestrictionEnter(e)
{
	var characterCode;

	if(e && e.which)
    {
		//if which property of event object is supported (NN4)
		e = e;
		characterCode = e.which; //character code is contained in NN4's which property
	}
    else
    {
		e = event;
		characterCode = e.keyCode; //character code is contained in IE's keyCode property
	}

	if(characterCode == 13)
    {
        //if generated character code is equal to ascii 13 (if enter key)
	    submit_norestrictionform();
	    return false;
	}
	else
    {
    	return true;
	}

}
function checknorestrictionEnter_forRestricted(e)
{
	var characterCode;

	if(e && e.which)
    {
		//if which property of event object is supported (NN4)
		e = e;
		characterCode = e.which; //character code is contained in NN4's which property
	}
    else
    {
		e = event;
		characterCode = e.keyCode; //character code is contained in IE's keyCode property
	}

	if(characterCode == 13)
    {
        //if generated character code is equal to ascii 13 (if enter key)
	    submit_restricteduserform();
	    return false;
	}
	else
    {
	    return true;
	}
}


function checkPPSummaryPageEnter(e,areDocumentInfoFieldsExisting)
{
	var characterCode;

	if(e && e.which)
    {
		//if which property of event object is supported (NN4)
		e = e;
		characterCode = e.which; //character code is contained in NN4's which property
	}
    else
    {
		e = event;
		characterCode = e.keyCode; //character code is contained in IE's keyCode property
	}

	if(characterCode == 13)
    {
        //if generated character code is equal to ascii 13 (if enter key)
	    submit_summary(areDocumentInfoFieldsExisting);
	    return false;
	}
	else
    {
	    return true;
	}
}

function displayAdvancedSearchOptions()
{
    if(document.getElementById("basicSearchOptions") != null)
    {
        document.getElementById("basicSearchOptions").style.display = "none";
        clearPedigreeTypeCheck();
    }
    document.getElementById("advancedSearchOptionsLink").style.display = "none";
    clearNewSearchParametersFields();
    clearUserReferenceLabelsFields();

    document.getElementById("searchOptions").value = "advanced";
    document.getElementById("newSearchParameters").style.display = "block";
    document.getElementById("userReferenceLabels").style.display = "block";
    if(document.getElementById("advancedSearchOptions") != null)
    {
        document.getElementById("advancedSearchOptions").style.display = "block";
    }
    document.getElementById("basicSearchOptionsLink").style.display = "block";
}

function displayBasicSearchOptions()
{
    document.getElementById("newSearchParameters").style.display = "none";
	document.getElementById("userReferenceLabels").style.display = "none";
	if(document.getElementById("advancedSearchOptions") != null)
    {
        document.getElementById("advancedSearchOptions").style.display = "none";
        clearPedigreeTypeCheck();
    }
    document.getElementById("basicSearchOptionsLink").style.display = "none";

    clearNewSearchParametersFields();
	clearUserReferenceLabelsFields();

    document.getElementById("searchOptions").value = "basic";
    if(document.getElementById("basicSearchOptions") != null)
    {
        document.getElementById("basicSearchOptions").style.display = "block";
    }
    document.getElementById("advancedSearchOptionsLink").style.display = "block";
}

function clearNewSearchParametersFields()
{
    document.getElementById("pedigreeSenderZipCode").value="";
    document.getElementById("pedigreeReceiverZipCode").value="";
    document.getElementById("pedigreeSenderPartnerID").value="";
    document.getElementById("pedigreeReceiverPartnerID").value="";
    document.getElementById("pedigreeSenderAddressID").value="";
    document.getElementById("pedigreeReceiverAddressID").value="";
    document.getElementById("pedigreeEnvelopeSerialNumber").value="";
    document.getElementById("pedigreeSourceRoutingID").value="";
    document.getElementById("pedigreeDestinationRoutingID").value="";
    document.getElementById("isPedigreeRepackaged").value="select";
}

function clearUserReferenceLabelsFields()
{
    if (document.getElementById("userReferenceLabel1") != null)
    {
        document.getElementById("userReferenceLabel1").value="";
    }
    if (document.getElementById("userReferenceLabel2") != null)
    {
        document.getElementById("userReferenceLabel2").value="";
    }
    if (document.getElementById("userReferenceLabel3") != null)
    {
        document.getElementById("userReferenceLabel3").value="";
    }
    if (document.getElementById("userReferenceLabel4") != null)
    {
        document.getElementById("userReferenceLabel4").value="";
    }
    if (document.getElementById("userReferenceLabel5") != null)
    {
        document.getElementById("userReferenceLabel5").value="";
    }
    if (document.getElementById("userReferenceLabel6") != null)
    {
        document.getElementById("userReferenceLabel6").value="";
    }
    if (document.getElementById("userReferenceLabel7") != null)
    {
        document.getElementById("userReferenceLabel7").value="";
    }
    if (document.getElementById("userReferenceLabel8") != null)
    {
        document.getElementById("userReferenceLabel8").value="";
    }
    if (document.getElementById("userReferenceLabel9") != null)
    {
        document.getElementById("userReferenceLabel9").value="";
    }
    if (document.getElementById("userReferenceLabel10") != null)
    {
        document.getElementById("userReferenceLabel10").value="";
    }
}

function clearPedigreeTypeCheck()
{
    for (var iter = 0; iter < document.getElementsByName("pedigreeTypeCheck").length; iter ++)
    {
        document.getElementsByName("pedigreeTypeCheck")[iter].checked = false;
    }
}

function searchOptionsIndividual() {
    var checkAll = false;
	var checks = document.forms[0].pedigreeTypeCheck;
	for (var iter = 0; iter < checks.length; iter ++) {

        if (!checks[iter].checked)
        {
            document.getElementById("selectAllOfTheAbove").checked = false;
            checkAll = true;
        }
        if (!checkAll)
        {
            document.getElementById("selectAllOfTheAbove").checked = true;
        }
    }
}

function searchOptionsAll() {
	var checks = document.forms[0].pedigreeTypeCheck;
	if (document.getElementById("selectAllOfTheAbove").checked)
    {
        for (var iter = 0; iter < checks.length; iter ++) {
            checks[iter].checked = true;
        }
    }
    else
    {
        for (var iter = 0; iter < checks.length; iter ++) {
            checks[iter].checked = false;
        }
    }
}

var prevSearchAction;
var savedPedigreeList = new Array();
var prevLinkValue = null;
var nextLinkValue = null;

function updateNavigationLinks()
{
    resetNavigationLinks();

    var prevLink = document.getElementById('prevLink');
    var nextLink = document.getElementById('nextLink');

    var cert = document.getElementsByName('certificateID');
    var reasonCode = document.getElementById('bulkReasonCode');
    var reasonDescr = document.getElementById('bulkReasonDescr');

    var certId = null;
    if (cert != null)
    {
        for (var i=0; i<cert.length; i++)
        {
            if (cert[i].checked)
            {
                certId = cert[i].value;
                break;
            }
        }
    }

    if (prevLink != null)
    {
        prevLinkValue = prevLink.href;
        prevLink.href += "&bulkOperation=true";

        if (certId != null)
        {
            prevLink.href += "&certificateId="+certId;
        }

        if (reasonCode != null && reasonCode.selectedIndex > 0)
        {
            prevLink.href += "&bulkReasonCode=" + reasonCode.options[reasonCode.selectedIndex].value;
        }

        if (reasonDescr != null)
        {
            prevLink.href += "&bulkReasonDescr=" + reasonDescr.value;
        }
    }

    if (nextLink != null)
    {
        nextLinkValue = nextLink.href;
        nextLink.href += "&bulkOperation=true";

        if (certId != null)
        {
            nextLink.href += "&certificateId="+certId;
        }

        if (reasonCode != null && reasonCode.selectedIndex > 0)
        {
            nextLink.href += "&bulkReasonCode=" + reasonCode.options[reasonCode.selectedIndex].value;
        }

        if (reasonDescr != null)
        {
            nextLink.href += "&bulkReasonDescr=" + reasonDescr.value;
        }
    }
}

function resetNavigationLinks()
{
    var prevLink = document.getElementById('prevLink');
    var nextLink = document.getElementById('nextLink');

    if (prevLink != null && prevLinkValue != null)
    {
        prevLink.href = prevLinkValue;
    }

    if (nextLink != null && nextLinkValue != null)
    {
        nextLink.href = nextLinkValue;
    }
}

function displayBulkOperations()
{
    var bulkOperDiv = document.getElementById('bulkOperationDiv');
    var pedigreeList = document.getElementsByName("pedigreeSerialNumbers");
    var bulkOper = document.getElementById('bulkOperation');

    if (bulkOperDiv.style.display != '')
    {
        bulkOperDiv.style.display='';
        bulkOper.value = true;

        updateNavigationLinks();

        prevSearchAction = document.forms.searchResultForm.action;
        document.forms.searchResultForm.action = 'bulkOperation';

        // make pedigree checkboxes readonly
        savedPedigreeList = new Array();
        for (var i=0; i<pedigreeList.length; i++)
        {
            var pedigreeCheck = pedigreeList[i];
            savedPedigreeList[i] = pedigreeCheck.disabled;

            pedigreeCheck.disabled = 'disabled';
        }
    }
    else
    {
        bulkOperDiv.style.display = 'none';
        document.forms.searchResultForm.action = prevSearchAction;
        bulkOper.value = "false";

        resetNavigationLinks();

        for (var i=0; i<pedigreeList.length; i++)
        {
            var pedigreeCheck = pedigreeList[i];

            if (!savedPedigreeList[i])
                pedigreeCheck.disabled = '';
        }
    }
}

function advancedSearchOptionsAll(){

		if(document.getElementById("advancedSelectAll").checked)
		{
			for (var iter = 3; iter < document.forms[0].pedigreeTypeCheck.length; iter ++){
				document.forms[0].pedigreeTypeCheck[iter].checked = true;
			}
			//document.forms[0].pedigreeStatusType.checked = true;
		}
		else
		{
			for (var iter = 3; iter < document.forms[0].pedigreeTypeCheck.length; iter ++){
				document.forms[0].pedigreeTypeCheck[iter].checked = false;
			}
			//document.forms[0].pedigreeStatusType.checked = false;
		}
}

function basicSearchOptionsAll(){
		if(document.getElementById("basicSelectAll").checked)
		{
			for (var iter = 0; iter < 3; iter ++){
					document.forms[0].pedigreeTypeCheck[iter].checked = true;
			}
		}
		else
		{
			for (var iter = 0; iter < 3; iter ++){
					document.forms[0].pedigreeTypeCheck[iter].checked = false;
			}
		}
}

function basicSearchOptionsIndividual(){
	var checkAll = false;
	for (var iter = 0; iter < 2; iter ++){

		if(!document.forms[0].pedigreeTypeCheck[iter].checked)
		{
			document.getElementById("basicSelectAll").checked = false;
			checkAll = true;
		}
		if(!checkAll)
		{
			document.getElementById("basicSelectAll").checked = true;
		}
	}
}

function advancedSearchOptionsIndividual(){
	var checkAll = false;
	for (var iter = 3; iter < document.forms[0].pedigreeTypeCheck.length; iter ++){

		if((!document.forms[0].pedigreeTypeCheck[iter].checked))
		{
			document.getElementById("advancedSelectAll").checked = false;
			checkAll = true;
		}
		if(!checkAll)
		{
			document.getElementById("advancedSelectAll").checked = true;
		}
	}
}

function submit_norestrictionform(){

	if (!isAlreadySubmitted)
	{
		trimAllTextFeilds(document.forms[0]);

		//05/20/2006 modified for adding document number validation
		if (trim(document.getElementById("transactionType").value) !='select' && trim(document.getElementById("transactionId").value) =='' ){
		alert("Enter the Document Number");
		document.getElementById("transactionId").focus();
		return;

		}
		//07/13/2006 modified for adding customer account number validation
		if (document.getElementById("custAccReqd") && document.getElementById("custAccReqd").value=="true"){
			if (trim(document.getElementById("customerAccountNumber").value)==''){
			alert("Enter the Customer Account Number");
			document.getElementById("customerAccountNumber").focus();
			return;
			}
		}

		if (document.getElementById("transyear").value=='Select' || document.getElementById("transmonth").value=='Select' || document.getElementById("transday").value=='Select'){
			document.getElementById("transactionDate").value="";
		}

		if (document.getElementById("transyear").value!='Select' && document.getElementById("transmonth").value!='Select' && document.getElementById("transday").value!='Select'){
			if (isDate(document.getElementById("transmonth").value+"/"+document.getElementById("transday").value+"/"+document.getElementById("transyear").value)==false){
			return;
			}

		}

		if (document.getElementById("transyear").value!='Select' && document.getElementById("transmonth").value!='Select' && document.getElementById("transday").value!='Select'){

			document.getElementById("transactionDate").value=document.getElementById("transyear").value+"-"+document.getElementById("transmonth").value+"-"+document.getElementById("transday").value;
		}


		if (document.getElementById("expyear").value=='Select' || document.getElementById("expmonth").value=='Select' || document.getElementById("expday").value=='Select'){
			document.getElementById("expirationDate").value="";
		}
		if (document.getElementById("expyear").value!='Select' && document.getElementById("expmonth").value!='Select' && document.getElementById("expday").value!='Select'){
			if (isDate(document.getElementById("expmonth").value+"/"+document.getElementById("expday").value+"/"+document.getElementById("expyear").value)==false){
			return;
			}

			document.getElementById("expirationDate").value=document.getElementById("expyear").value+"-"+document.getElementById("expmonth").value+"-"+document.getElementById("expday").value;
		}

		if (document.getElementById("createdafteryear").value=='Select' || document.getElementById("createdaftermonth").value=='Select' || document.getElementById("createdafterday").value=='Select'){
		document.getElementById("pedigreeCreatedDateStart").value="";
		}
		if (document.getElementById("createdafteryear").value!='Select' && document.getElementById("createdaftermonth").value!='Select' && document.getElementById("createdafterday").value!='Select'){

		if (isDate(document.getElementById("createdaftermonth").value+"/"+document.getElementById("createdafterday").value+"/"+document.getElementById("createdafteryear").value)==false){
		return;
		}

		document.getElementById("pedigreeCreatedDateStart").value=document.getElementById("createdafteryear").value+"-"+document.getElementById("createdaftermonth").value+"-"+document.getElementById("createdafterday").value;
		}

		if (document.getElementById("createdbeforeyear").value=='Select' || document.getElementById("createdbeforemonth").value =='Select' || document.getElementById("createdbeforeday").value=='Select'){
		document.getElementById("pedigreeCreatedDateEnd").value="";
		}
		if (document.getElementById("createdbeforeyear").value!='Select' && document.getElementById("createdbeforemonth").value !='Select' && document.getElementById("createdbeforeday").value!='Select'){

		if (isDate(document.getElementById("createdbeforemonth").value+"/"+document.getElementById("createdbeforeday").value+"/"+document.getElementById("createdbeforeyear").value)==false){
		return;
		}

		document.getElementById("pedigreeCreatedDateEnd").value=document.getElementById("createdbeforeyear").value+"-"+document.getElementById("createdbeforemonth").value+"-"+document.getElementById("createdbeforeday").value;
		}
		document.getElementById("customerAccountNumber").value=trim(document.getElementById("customerAccountNumber").value);
		document.getElementById("pedigreeSerialNumber").value=trim(document.getElementById("pedigreeSerialNumber").value);
		document.getElementById("transactionId").value=trim(document.getElementById("transactionId").value);
		document.getElementById("ndcNumber").value=trim(document.getElementById("ndcNumber").value);
		document.getElementById("lotNumber").value=trim(document.getElementById("lotNumber").value);
		document.getElementById("itemNumber").value=trim(document.getElementById("itemNumber").value);
		document.getElementById("shippedToCustomerName").value=trim(document.getElementById("shippedToCustomerName").value);
		document.getElementById("itemSerialNumber").value=trim(document.getElementById("itemSerialNumber").value);
		document.getElementById("containerCode").value=trim(document.getElementById("containerCode").value);
		document.getElementById("uniqueId").value=trim(document.getElementById("uniqueId").value);
		document.getElementById("pedigreeBarCode").value=trim(document.getElementById("pedigreeBarCode").value);
		document.getElementById("distributionCenter").value=trim(document.getElementById("distributionCenter").value);
		document.getElementById("sentFrom").value=trim(document.getElementById("sentFrom").value);
		document.getElementById("pedigreeSenderZipCode").value=trim(document.getElementById("pedigreeSenderZipCode").value);
		document.getElementById("pedigreeReceiverZipCode").value=trim(document.getElementById("pedigreeReceiverZipCode").value);
		document.getElementById("pedigreeSenderPartnerID").value=trim(document.getElementById("pedigreeSenderPartnerID").value);
		document.getElementById("pedigreeReceiverPartnerID").value=trim(document.getElementById("pedigreeReceiverPartnerID").value);
		document.getElementById("pedigreeSenderAddressID").value=trim(document.getElementById("pedigreeSenderAddressID").value);
		document.getElementById("pedigreeReceiverAddressID").value=trim(document.getElementById("pedigreeReceiverAddressID").value);
		document.getElementById("pedigreeEnvelopeSerialNumber").value=trim(document.getElementById("pedigreeEnvelopeSerialNumber").value);
		document.getElementById("pedigreeSourceRoutingID").value=trim(document.getElementById("pedigreeSourceRoutingID").value);
		document.getElementById("pedigreeDestinationRoutingID").value=trim(document.getElementById("pedigreeDestinationRoutingID").value);
		document.getElementById("isPedigreeRepackaged").value=trim(document.getElementById("isPedigreeRepackaged").value);
        if (document.getElementById("userReferenceLabel1") != null)
        {
            document.getElementById("userReferenceLabel1").value=trim(document.getElementById("userReferenceLabel1").value);
        }
        if (document.getElementById("userReferenceLabel2") != null)
        {
            document.getElementById("userReferenceLabel2").value=trim(document.getElementById("userReferenceLabel2").value);
        }
        if (document.getElementById("userReferenceLabel3") != null)
        {
            document.getElementById("userReferenceLabel3").value=trim(document.getElementById("userReferenceLabel3").value);
        }
        if (document.getElementById("userReferenceLabel4") != null)
        {
            document.getElementById("userReferenceLabel4").value=trim(document.getElementById("userReferenceLabel4").value);
        }
        if (document.getElementById("userReferenceLabel5") != null)
        {
            document.getElementById("userReferenceLabel5").value=trim(document.getElementById("userReferenceLabel5").value);
        }
        if (document.getElementById("userReferenceLabel6") != null)
        {
            document.getElementById("userReferenceLabel6").value=trim(document.getElementById("userReferenceLabel6").value);
        }
        if (document.getElementById("userReferenceLabel7") != null)
        {
            document.getElementById("userReferenceLabel7").value=trim(document.getElementById("userReferenceLabel7").value);
        }
        if (document.getElementById("userReferenceLabel8") != null)
        {
            document.getElementById("userReferenceLabel8").value=trim(document.getElementById("userReferenceLabel8").value);
        }
        if (document.getElementById("userReferenceLabel9") != null)
        {
            document.getElementById("userReferenceLabel9").value=trim(document.getElementById("userReferenceLabel9").value);
        }
        if (document.getElementById("userReferenceLabel10") != null)
        {
            document.getElementById("userReferenceLabel10").value=trim(document.getElementById("userReferenceLabel10").value);
        }

        if((document.getElementById("customerAccountNumber").value.length < 1)
		&& (document.getElementById("pedigreeSerialNumber").value.length < 1)
		&& (document.getElementById("transactionId").value.length < 1)
		&& (document.getElementById("ndcNumber").value.length < 1)
		&& (document.getElementById("lotNumber").value.length < 1)
		&& (document.getElementById("itemNumber").value.length < 1)
		&& (document.getElementById("shippedToCustomerName").value.length < 1)
		&& (document.getElementById("pedigreeBarCode").value.length < 1)
		&& (document.getElementById("distributionCenter").value.length < 1)
		&& (document.getElementById("sentFrom").value.length < 1)
		&& (document.getElementById("itemSerialNumber").value.length < 1)
		&& (document.getElementById("containerCode").value.length < 1)
		&& (document.getElementById("uniqueId").value.length < 1)
		&& (document.getElementById("transactionDate").value.length < 1)
		&& (document.getElementById("expirationDate").value.length < 1)
		&& (document.getElementById("pedigreeCreatedDateStart").value.length < 1)
		&& (document.getElementById("pedigreeCreatedDateEnd").value.length < 1)
		&& (document.getElementById("pedigreeSenderZipCode").value.length < 1)
		&& (document.getElementById("pedigreeReceiverZipCode").value.length < 1)
		&& (document.getElementById("pedigreeSenderPartnerID").value.length < 1)
		&& (document.getElementById("pedigreeReceiverPartnerID").value.length < 1)
		&& (document.getElementById("pedigreeSenderAddressID").value.length < 1)
		&& (document.getElementById("pedigreeReceiverAddressID").value.length < 1)
		&& (document.getElementById("pedigreeEnvelopeSerialNumber").value.length < 1)
		&& (document.getElementById("pedigreeSourceRoutingID").value.length < 1)
		&& (document.getElementById("pedigreeDestinationRoutingID").value.length < 1)
		&& (document.getElementById("isPedigreeRepackaged").value == "select"))
		{
            if (validateUserReferenceFields()==1)
            {
                alert("Enter at least one search option.");
			    //At least one of the filter parameters is required
			    return;
	        }
        }

		//New pedigree viewer flow.
		if(document.forms[0].normalSearch)
		{
			var ped = "";
			var pedStatus = false;
			var pedAll = false;
			var pedType = false;
			/*if(document.forms[0].pedigreeStatusType)
			{
				if(document.forms[0].pedigreeStatusType.checked)
				{
					pedStatus = true;
				}
			}*/

			//concatinate the pedigree types
			for (var iter = 0; iter < document.forms[0].pedigreeTypeCheck.length; iter ++){
				if(document.forms[0].pedigreeTypeCheck[iter].checked)
				{
					if(pedType)
					{
						ped = ped+"|"+document.forms[0].pedigreeTypeCheck[iter].value;
					}
					else
					{
						ped = document.forms[0].pedigreeTypeCheck[iter].value;
					}
					pedType = true;
				}
			}
			//ped contains all the pedigree types selected as the search criteria.
			document.forms[0].pedigreeType.value = ped;

			//Condition ..pedigree type selection is NOT mandatory if user provides pedigree serial number OR unique ID.
			if((!pedStatus) && (!pedType))
			{

                if (document.getElementById("pedigreeSerialNumber").value.length < 1 &&
                    document.getElementById("uniqueId").value.length < 1) {
                    //None of the pedigrees selected.
                    alert("Select the Pedigree Type.");
                    return;
                } else {
                    document.forms[0].pedigreeType.value = "All";
                    document.forms[0].pedigreeStatus.value = "All";
                }
			}

			//Set the pedigree status as cancelled when the pedigree type selected is only cancelled pedigrees.
			if(document.forms[0].pedigreeType.value == "CancelledShippedPedigree")
			{
				document.forms[0].pedigreeStatus.value = "Cancelled";
			}
			else{
				//set the pedigree status as active when the pedigree types selected doesn't contain cancelled pedigrees
				var pedTypes = document.forms[0].pedigreeType.value;
				if(!(pedTypes.indexOf("CancelledShippedPedigree")>=0))
				{
					document.forms[0].pedigreeStatus.value = "Active";
				}
			}

			if(pedStatus && !(pedType))
			{
				document.forms[0].pedigreeType.value = "ShippingPedigree";
			}
			//Set pedigree type and pedigree status when select all checkbox is checked in basic search.
			if(document.getElementById("basicSelectAll").checked)
			{
				for (var iter = 0; iter < document.forms[0].pedigreeTypeCheck.length; iter ++){
					document.forms[0].pedigreeTypeCheck[iter].checked = false;
				}
				document.forms[0].pedigreeType.value = "ShippingPedigree|ReceivedPedigree|DropshipShippedPedigree";
				document.forms[0].pedigreeStatus.value = "Active";
			}
			//Set pedigree type and status to All if select all is checked in advanced search.
			if(document.getElementById("advancedSelectAll").checked)
			{
					document.forms[0].pedigreeType.value = "All"
				document.forms[0].pedigreeStatus.value = "All";
			}
		}
         if (document.forms[0].invalidSearch)
        {
            var ped = "";
			var pedStatus = false;
			var pedAll = false;
			var pedType = false;

            //concatinate the pedigree types
            if(document.getElementById("selectAllOfTheAbove").checked)
            {
                ped = document.getElementById("selectAllOfTheAbove").value;
                pedType = true;
            }
            else
            {
                for (var iter = 0; iter < document.forms[0].pedigreeTypeCheck.length; iter ++){
                    if(document.forms[0].pedigreeTypeCheck[iter].checked)
                    {
                        if(pedType)
                        {
                            ped = ped+"|"+document.forms[0].pedigreeTypeCheck[iter].value;
                        }
                        else
                        {
                            ped = document.forms[0].pedigreeTypeCheck[iter].value;
                        }
                        pedType = true;
                    }
                }
            }
            //ped contains all the pedigree types selected as the search criteria.
			document.forms[0].pedigreeType.value = ped;
             if((!pedStatus) && (!pedType))
			{

                if (document.getElementById("pedigreeSerialNumber").value.length < 1 &&
                    document.getElementById("uniqueId").value.length < 1) {
                    //None of the pedigrees selected.
                    alert("Select the Pedigree Type.")
                    return;
                } else {
                    document.forms[0].pedigreeType.value = "All";
                    document.forms[0].pedigreeStatus.value = "All";
                }
            }

        }
		document.forms[0].submit();
		isAlreadySubmitted = true;
	}
}

function validateUserReferenceFields()
{
        var return_value = 1;
        if (document.getElementById("userReferenceLabel1") != null)
        {
            if (!document.getElementById("userReferenceLabel1").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel2") != null)
        {
            if (!document.getElementById("userReferenceLabel2").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel3") != null)
        {
            if (!document.getElementById("userReferenceLabel3").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel4") != null)
        {
            if (!document.getElementById("userReferenceLabel4").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel5") != null)
        {
            if (!document.getElementById("userReferenceLabel5").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel6") != null)
        {
            if (!document.getElementById("userReferenceLabel6").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel7") != null)
        {
            if (!document.getElementById("userReferenceLabel7").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel8") != null)
        {
            if (!document.getElementById("userReferenceLabel8").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel9") != null)
        {
            if (!document.getElementById("userReferenceLabel9").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        if (document.getElementById("userReferenceLabel10") != null)
        {
            if (!document.getElementById("userReferenceLabel10").value.length < 1)
            {
                return_value = 0;
                return;
            }
        }
        return return_value;
}

//Script for Master data management.

function addLookUpInfoOption()
{
	document.getElementById("lookUpCode").value = trim(document.getElementById("lookUpCode").value);
	document.getElementById("lookUpName").value = trim(document.getElementById("lookUpName").value);

	if(trim(document.getElementById("lookUpCode").value) == "")
	{
		alert("Enter the Lookup code.");
		document.getElementById("lookUpCode").focus();
		return ;
	}
	if(trim(document.getElementById("lookUpName").value) == "")
	{
		alert("Enter the Lookup name.");
		document.getElementById("lookUpName").focus();
		return ;
	}

	var selectObject=document.getElementById("lookupcodes");
	var optionText;

	optionText=document.getElementById("lookUpCode").value+":"+document.getElementById("lookUpName").value;

	var optn = document.createElement("OPTION");
	optn.text = optionText;
	optn.value = optionText;
	selectObject.options.add(optn);
	document.getElementById("lookUpCode").value="";
	document.getElementById("lookUpName").value="";
	document.getElementById("lookUpCode").focus();

}

function removeLookUpCodeDetailsOptions()
{
	var i;
	var selectbox=document.getElementById("lookupcodes");

    if (selectbox.selectedIndex==-1)
    {
		alert("Select atleast one value and click on remove.");
	}

	for(i=selectbox.options.length-1;i>=0;i--)
	{
	    if(selectbox.options[i].selected)
		    selectbox.remove(i);
	}
}

function editLookUpDetails()
{
	var i;
	var j=0;
	var selectbox=document.getElementById("lookupcodes");
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		if(selectbox.options[i].selected){
			j=j+1;

		}
	}

	if (j>1){
		alert("Select only one lookUp inforamation at a time and click on edit.");
	}
	if (selectbox.selectedIndex==-1){
		alert("Select the lookUp information and click on edit.");
	}
	if (j==1){
		var productarray =document.getElementById("lookupcodes").value.split(":");
		document.getElementById("lookUpCode").value=productarray[0];
		document.getElementById("lookUpName").value=productarray[1];

		var selIndex=document.getElementById("lookupcodes").selectedIndex;
		document.getElementById("lookupcodes").remove(selIndex);

	}

}

function unselectLookUpDetails(){
if (document.getElementById("lookupcodes").length > 0)
	{
		for(var i = 0;i < document.getElementById("lookupcodes").length;i++){
			document.getElementById("lookupcodes").options[i].selected = false;
		}
	}
}

//Script for SSP flow

function addShippingSenderLicenseInformationDiv()
{
	document.getElementById("addShippingSenderLicenceInformation").style.display = "none";
	document.getElementById("shippingSenderLicenceInformation").style.display = "block";
}

function addShippingRecipientLicenseInformationDiv()
{
	document.getElementById("addShippingRecipientLicenceInformation").style.display = "none";
	document.getElementById("shippingRecipientLicenceInformation").style.display = "block";
}

function addShippingAltTransactionInformationDiv()
{
	document.getElementById("addShippingAltTransInformation").style.display = "none";
	document.getElementById("shippingAltTransInformationDiv").style.display = "block";
}

function addTransactionSenderLicenseInformationDiv()
{
	document.getElementById("addTransactionSenderLicenceInformation").style.display = "none";
	document.getElementById("TransactionSenderLicenceInformation").style.display = "block";
}

function addTransactionRecipientLicenseInformationDiv()
{
	document.getElementById("addTransactionRecipientLicenceInformation").style.display = "none";
	document.getElementById("TransactionRecipientLicenceInformation").style.display = "block";
}

function addTransactionAltTransactionInformationDiv()
{
	document.getElementById("addTransactionAltTransInformation").style.display = "none";
	document.getElementById("TransactionAltTransInformationDiv").style.display = "block";
}

function enableSenderShippingAbbress()
{
	if(document.forms[0].shippingSameAsSenderBusinessAddress.checked)
	{
		document.getElementById("sspSenderShippingAddressDiv").style.display = "block";
	}
	else
	{
		document.getElementById("sspSenderShippingAddressDiv").style.display = "none";
	}
}

function enableRecipientShippingAbbress()
{
	if(document.forms[0].shippingSameAsRecipientBusinessAddress.checked)
	{
		document.getElementById("sspRecipientShippingAddressDiv").style.display = "block";
	}
	else
	{
		document.getElementById("sspRecipientShippingAddressDiv").style.display = "none";
	}
}

function enableSspPartialItemInfo()
{
	if(document.forms[0].sspPartialItemInfo.checked)
	{
		document.getElementById("sspPartialItemInfoDiv").style.display = "block";
	}
	else
	{
		document.getElementById("sspPartialItemInfoDiv").style.display = "none";
	}
}

function enableSspDivTag(divName)
{
	if(document.getElementById("shippingSameAsSenderTransBusinessAddress").checked || document.getElementById("shippingSameAsRecipientTransBusinessAddress").checked)
	{
		document.getElementById(divName).style.display = "block";
	}
	else
	{
		document.getElementById(divName).style.display = "none";
	}
}

function enableProductInfoDiv(field, divName)
{
	if(document.getElementById(field).value == "select"){
		document.getElementById(divName).style.display = "none";
	}else{
		document.getElementById(divName).style.display = "block";
	}
}

function enableSSPTransDivTag(checkFiled, divName)
{
	if(document.getElementById(checkFiled).checked)
	{
		document.getElementById(divName).style.display = "block";
	}
	else
	{
		document.getElementById(divName).style.display = "none";
	}
}

function addItemInformationForShipping()
{
	document.getElementById("sspShippingItemInformation").style.display = "block";
}

function soureceProductInfo(field)
{
	top.location.href = field;
}

function changeDisplay(field, divName1, divName2, divName3)
{
	if(document.getElementById(field).value == "select"){
		document.getElementById(divName2).style.display = "none";
		document.getElementById(divName3).style.display = "none";
		document.getElementById(divName1).style.display = "none";

	}else{
		document.getElementById(divName1).style.display = "none";
		document.getElementById(divName3).style.display = "none";
		document.getElementById(divName2).style.display = "block";
	}
}

function enableDivFields(field, divName1, divName2, divName3)
{
	if(document.getElementById(field).value == "select"){
		document.getElementById(divName2).style.display = "none";
		document.getElementById(divName3).style.display = "none";
		document.getElementById(divName1).style.display = "none";
		alert("Select the value.");
		document.getElementById(field).focus();
		return;
	}

	if(document.getElementById(field).value != "select"){
		document.getElementById(divName1).style.display = "none";
		document.getElementById(divName2).style.display = "none";
		document.getElementById(divName3).style.display = "block";
	}
}

function addPBCsEvent()
{
	var ni = document.getElementById('myDiv');
	var numi = document.getElementById('theValue');
	var num = (document.getElementById("theValue").value -1)+ 2;
	numi.value = num;
	var divIdName = "my"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);

	newdiv.innerHTML = "<input name='"+num+"' id='"+num+"' type='text' width='20'/><a href=\"javascript:;\" class='newtxt' onclick=\"removeSerialNumbersEvent(\'"+divIdName+"\')\" >Remove</a>";
	ni.appendChild(newdiv);
}



/**
 *
 */
// Declaring valid date character, minimum year and maximum year
var dtCh= "/";
var nowDate = new Date();
var minYear=2000;
var maxYear=nowDate.getYear()<1900?nowDate.getYear()+1900+20:nowDate.getYear()+20;//Netscape 4 and 6 returns the year starting with 1900
function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31;
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30;}
		if (i==2) {this[i] = 29;}
   }
   return this;
}

function isDate(dtStr,minYearRequested,maxYearRequested){
	var daysInMonth = DaysArray(12);
	var pos1=dtStr.indexOf(dtCh);
	var pos2=dtStr.indexOf(dtCh,pos1+1);
	var strMonth=dtStr.substring(0,pos1);
	var strDay=dtStr.substring(pos1+1,pos2);
	var strYear=dtStr.substring(pos2+1);
	strYr=strYear;
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1);
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1);
	for (var i = 1; i <= 3; i++)
    {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1);
	}
	month=parseInt(strMonth);
	day=parseInt(strDay);
	year=parseInt(strYr);
	if (pos1==-1 || pos2==-1)
    {
		alert("The date format should be : mm/dd/yyyy");
		return false;
	}
	if (strMonth.length<1 || month<1 || month>12)
    {
		alert("Enter a valid month");
		return false;
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month])
    {
		alert("Enter a valid day");
		return false;
	}

	if(minYearRequested && maxYearRequested)
	{
		if (strYear.length != 4 || year==0 || year<minYearRequested || year>maxYearRequested)
        {
			alert("Enter a valid 4 digit year between "+minYearRequested+" and "+maxYearRequested);
			return false;
		}
	}
	else if (strYear.length != 4 || year==0 || year<minYear || year>maxYear)
    {
		alert("Enter a valid 4 digit year between "+minYear+" and "+maxYear);
		return false;
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || !isInteger(stripCharsInBag(dtStr, dtCh)))
    {
		alert("Enter a valid date");
		return false;
	}
    return true;
}

function getDayValue(field)
{
	var day_value = new Array("00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31");
	return day_value[field];
}

function selectIndividual(source, target)
{
	var checkAll = false;
	var checkboxes = document.getElementsByName(source);

	for (var iter = 0; iter < checkboxes.length; iter ++)
	{
        if (!checkboxes[iter].disabled && !checkboxes[iter].checked)
        {
            document.getElementById(target).checked = false;
            checkAll = true;
        }
        if (!checkAll)
        {
            document.getElementById(target).checked = true;
        }

	}
}

function selectAll(currentCheckbox, target)
{
	if ("pedigreeSerialNumbersForRelated" == target)
	{

		if (currentCheckbox.checked)
		{
			checkAll('pedigreeSerialNumbersForRelated');
		}
		else
		{
			clearAll('pedigreeSerialNumbersForRelated');
		}
	}
	else
	{
		if (currentCheckbox.checked)
		{
			checkAllForEmail();
		}
		else
		{
			clearAllForEmail();
		}
	}

}

function checkAll(checkBoxAttribute)
{
	var checkBoxes = document.getElementsByName(checkBoxAttribute);

	if (checkBoxes)
	{
		var checkboxlength = checkBoxes.length;
		var pedigreeNum = null;
		var checkedItems = false;
		if (!checkboxlength)
		{
			if (!checkBoxes.disabled)
			{
				checkBoxes.checked = true;
				checkedItems = true;
			}
		}
		else if (parseInt(checkboxlength) > 0)
		{
			for (var index = 0; index < checkboxlength; index++)
			{
				pedigreeNum = checkBoxes[index];

				if (!pedigreeNum.disabled)
				{
					pedigreeNum.checked = true;
					checkedItems = true;
				}
			}
		}
	}
}

function clearAll(checkBoxAttribute)
{
	var checkBoxes = document.getElementsByName(checkBoxAttribute);

	if (checkBoxes)
	{
		var checkboxlength = checkBoxes.length;

		if (!checkboxlength)
		{
			checkBoxes.checked = false;
		}
		else if (parseInt(checkboxlength) > 0)
		{
			for (var index = 0; index < checkboxlength; index++)
			{
				checkBoxes[index].checked = false;
			}
		}
	}
}

function checkAllForEmail()
{
	if (document.forms.searchResultForm.pedigreeSerialNumbers)
	{
		var checkboxlength = document.forms.searchResultForm.pedigreeSerialNumbers.length;
		var pedigreeNum = null;
		var checkedItems = false;
		if (!checkboxlength)
		{
			if (!document.forms.searchResultForm.pedigreeSerialNumbers.disabled)
			{
				document.forms.searchResultForm.pedigreeSerialNumbers.checked = true;
				checkedItems = true;
			}
		}
		else if (parseInt(checkboxlength) > 0)
		{
			for (var index = 0; index < checkboxlength; index++)
			{
				pedigreeNum = document.forms.searchResultForm.pedigreeSerialNumbers[index];

				if (!pedigreeNum.disabled)
				{
					pedigreeNum.checked = true;
					checkedItems = true;
				}
			}
		}
		if (document.getElementById("emailWidget") && checkedItems)
		{
			document.getElementById("emailWidget").style.display = "block";
		}
	}
}

function clearAllForEmail()
{
	clearAll("pedigreeSerialNumbers");

	var checkBoxes = document.getElementsByName("pedigreeSerialNumbers");

	if (checkBoxes && document.getElementById("emailWidget"))
	{
		document.getElementById("emailWidget").style.display = "none";
	}
}

function toggleVisibility(idElem)
{
    var obj = document.getElementById(idElem);
    if (obj.style.display == "none")
        obj.style.display = "";
    else
        obj.style.display = "none";
}

function changeItemsPerPageCount(exceeded)
{
	var numberOfResultsPerPage = document.getElementById("numberOfResultsPerPage").value;
	window.location = "searchresult.jsp?SEARCH_LIMIT_EXCEEDED=" + exceeded +
		"&current_page_id=1&current_slot_number=0" +
		"&results=" + numberOfResultsPerPage;
}

function submit_confirmVoidResultsForm(field)
{
    document.getElementById("action").value = field;
    document.voidPedigreeResultForm.submit();
}

function partialMatchWarning(obj)
{
    if (obj.checked)
    {
        alert("WARNING:\nEnabling partial-match searching greatly increases the\nload on the server and the time it takes to return results.\n\nExpect delays of several minutes to over an hour for response.");
    }
}

