var convfact = 6000;    // Default conversion
var roundfact = 0.5;    // Default granularity
var baseweight = "0.5";    // Default minimum weight
var weiName = volweight_msg005;
var alt_image = new Image();
alt_image.src = instance + "/images/general/html/art/volweight/tube.gif";
var image_blank = new Image();
image_blank.src = instance + "/pix.gif";
var strErrMess = "";
var minWeightError = services_msg005 + baseweight + services_msg006;

function startform( form )
{
  if( typeof( form.pak ) != "undefined" && form.pak[1].checked )
  {
    form.height.bvalue = 0;
    form.height.value = blankmark;
    swapImage( "package" );swapHeight( "height" );
  }
}

function checkForBoxVolume(form)
{
  strErrMess = "";

  form.length.value = validateNumber( form.length.value, volweight_msg002 );
  form.width.value  = validateNumber( form.width.value, volweight_msg003 );
  form.height.value = validateNumber( form.height.value, volweight_msg004 );

  if( strErrMess != "" )
  {
    dhlAlert( comm_msg006, strErrMess );
  }
  if(strErrMess == "")
  {
    if( typeof( form.pak ) != "undefined" && !form.pak[1].checked )
    {
        if(!((form.length.value != 0 && form.width.value !=0 && form.height.value != 0) || (form.length.value == 0 && form.width.value ==0 && form.height.value == 0)))
        {
            strErrMess = volweight_msg001 + "<br />";
        }
    }
    else if ( typeof( form.pak ) != "undefined" && form.pak[1].checked) // start added by Manmohan 21/03/2002
    {
        if(!((form.length.value != 0 && form.width.value !=0 ) || (form.length.value == 0 && form.width.value ==0 ) ))
        {
            strErrMess = volweight_msg001 + "<br />";
        }    
     }
    if( strErrMess != "" )
    {
        dhlAlert( comm_msg006, strErrMess );
    }
  }
  doweight(form);
}

function checkForBox(form)
{
    var heightVal;

    if( typeof( form.pak ) != "undefined" )
    {
        if (!form.pak[1].checked)
        {
            if(!((form.length.value != 0 && form.width.value != 0 && form.height.value != 0) || (form.length.value == 0 && form.width.value == 0 && form.height.value == 0)))
            {
                return false;
            }
        }
        else
        {
            if(!((form.length.value != 0 && form.width.value != 0) || (form.length.value == 0 && form.width.value == 0)))
            {
                return false;
            }
        }
    }
    else
    {
        if(!((form.length.value != 0 && form.width.value != 0 && form.height.value != 0) || (form.length.value == 0 && form.width.value == 0 && form.height.value == 0)))
        {
            return false;
        }
    }

    return true;
}

function checkForActualWeightDecimal(form)
{
    strErrMess ="";
    var temp=0;
    var counter=0;
    for(temp=0;temp<form.actualweight.value.length;temp++)
     {
      if(form.actualweight.value.substring(temp,temp+1) ==".")
      counter++;
    }
    
    if(counter>=2)
    {
      form.actualweight.value = 0.5;
      form.actualweight.focus();
      strErrMess = volweight_msg007 + ".<br />";
      if( strErrMess != "" )
      {
        dhlAlert( comm_msg006, strErrMess );
      }
    }
}

function doweight( form, showAlert, correctVal, makeZeroCheck)
{
    
    var flag = true
    if (typeof(showAlert) == "undefined" || showAlert)
    {
        showAlert = true;
        strErrMess = ""
    }
    if (typeof(correctVal) == "undefined")
    {
        correctVal = true;
    }
    if (typeof(makeZeroCheck) == "undefined")
    {
        makeZeroCheck = true;
    }

    var validLen    = validateNumber( form.length.value, volweight_msg002, "0" );
    var validWidth  = validateNumber( form.width.value, volweight_msg003, "0" );
    var validHeight = validateNumber( form.height.value, volweight_msg004, "0" );

    if ( (validLen != form.length.value) || (validWidth != form.width.value) || (validHeight != form.height.value) )
    {
        if (correctVal)
        {
            form.length.value = validLen;
            form.width.value = validWidth;
            form.height.value = validHeight;
        }
        if (showAlert)
        {
            dhlAlert( comm_msg006, strErrMess );
        }
      flag = false;
    }
    else if (makeZeroCheck && !checkForBox(form))
    {
        strErrMess = volweight_msg001 + "<br />";
        if (showAlert)
        {
            dhlAlert( comm_msg006, strErrMess );
        }
      flag = false;
    }
    if( typeof( form.pak ) != "undefined" && form.pak[1].checked )
    {
      if( form.height.value != blankmark )
      {
        form.height.bvalue = form.height.value;
        form.height.value = blankmark;
        swapImage( "package" );swapHeight( "height" );
      }
      vol = form.width.value * form.length.value *form.width.value * 3.14 * 0.25  ;
    }
    else
    {
      if( form.height.value == blankmark )
      {
        form.height.value = form.height.bvalue;
        swapImage( "package" );swapHeight( "height" );
      }
      vol = form.length.value * form.width.value * form.height.value;
     }
	
    fweight = roundfact * Math.ceil( ( vol / convfact ) / roundfact )
    
    // Start change: Mukeshs: 4th Oct'05
    // To consider the 'roundfact' the code below is blocked and above equation is used.
     
    //fweight = vol / convfact;
    //if( isNaN( fweight ) )
    //{
    //  fweight = 0; 
    //}

    //if( fweight > 0  && fweight < 1 && ( fweight + "" ).charAt( 0 ) != "0" )
    //{
    //	fweight = "0" + fweight;
    //}

    //Start adding for S1161981  
    //volw = parseInt( fweight*10 );
    //b = volw % 10;
    //c=b;
    //if( b < 5 && b > 0 )
    //{
    //  c=5;
    //}
    //else if( (b >= 5) && (b <=9 ) )
    //{
    //  c=10;
    //}
    //volw = volw - b + c;
    //fweight = volw / 10;
     
    // End change: Mukeshs: 4th Oct'05

    if( vol != 0 && ( isNaN( fweight ) || fweight < 0.5 ) ) fweight = 0.5;
    form.volweight.value = parseFloat(fweight);
    //End adding for S1161981  
  
    // form.volweight.value = roundToDp(fweight, 2);
    return flag;
}

function swapImage( imgName )
{
  if( typeof( document.images[imgName] ) != "undefined" )
  {
    tmp = document.images[imgName].src;
    document.images[imgName].src = alt_image.src;
    alt_image.src = tmp;
  }
}

function swapHeight( imgName )
{
  if( typeof( document.images[imgName] ) != "undefined" )
  {
    tmp = document.images[imgName].src;
    document.images[imgName].src = image_blank.src;
    image_blank.src = tmp;
  }
}

function selheight( elem, flag )
{
  if (typeof( flag ) != "undefined")
  {
      falg = false;
  }
  if( typeof( elem.form.pak ) != "undefined" && elem.form.pak[1].checked )
  {
     if (flag)
     {
        elem.form.pak.focus()
     }
     else
     {
        elem.form.volweight.focus()
     }
  }
  else
  {
    elem.select();
  }
}

function changeunits( element )
{
	unitType=null;
	if(element[0].checked)
	{ 	
		unitType=element[0].value;
		form=element[0].form;
	}
	else 
	{	
		unitType=element[1].value;
		form=element[1].form;
	}
	
  	if(unitType != null)
	{
  		units = unitType;

  		if( units == "imp" || units == "in" )
  		{
   	 		lenunt = "in.gif";
    		wgtunt = "lb.gif";
    		convfact = 166;
    		roundfact = 1;
    		baseweight = 1;
  		}
  		else
  		{
    		lenunt = "cm.gif";
    		wgtunt = "kg.gif";
    		convfact = 6000;
			roundfact = 0.5;
    		baseweight = 0.5;

			//Start Change: Mukeshs: 8th Sep'05
			//Call the method to change the convfact if required
			changeConvFactor();
			//End  Change: Mukeshs: 8th Sep'05
  		}

  		if( typeof( document.images["lenim"] ) != "undefined" )
  		{
    		document.images["lenim"].src = instance + "/images/general/html/art/volweight/"+lenunt;
    		document.images["higim"].src = instance + "/images/general/html/art/volweight/"+lenunt;
    		document.images["widim"].src = instance + "/images/general/html/art/volweight/"+lenunt;
    		document.images["volim"].src = instance + "/images/general/html/art/volweight/"+wgtunt;
  		}

 
  		doweight(form, false, false, false);
	}
}



function checkImage(form)
{

if( typeof( form ) == "undefined" ) form = document.forms[0];

    form.height.bvalue = form.height.value;
    if( typeof( form.pak ) != "undefined" && form.pak[1].checked )
    {
      form.height.bvalue = 0;
      form.height.value = blankmark;
      swapImage( "package" );swapHeight( "height" );
    }

	if (form.units[0].checked)
	    units="met";
    else 
	    units="imp";
    //units = form.units.value;
    
    if( units == "imp" || units == "in" )
    {
      lenunt = "in.gif";
      wgtunt = "lb.gif";
      convfact = 166;
      roundfact = 1;
      baseweight = 1;
    }
    else
    {
      lenunt = "cm.gif";
      wgtunt = "kg.gif";
      convfact = 6000;
	  roundfact = 0.5;
      baseweight = 0.5;

      //Start Change: Mukeshs: 8th Sep'05
	  //Call the method to change the convfact if required
	  changeConvFactor();
	  //End  Change: Mukeshs: 8th Sep'05
    }

    if( typeof( document.images["lenim"] ) != "undefined" )
    {
      document.images["lenim"].src = instance + "/images/general/html/art/volweight/"+lenunt;
      document.images["higim"].src = instance + "/images/general/html/art/volweight/"+lenunt;
      document.images["widim"].src = instance + "/images/general/html/art/volweight/"+lenunt;
      document.images["volim"].src = instance + "/images/general/html/art/volweight/"+wgtunt;
    }
}

function verifyWeight(form, minKgWeight, allowedWeight, correctVal)
{
  var validWeight = validateNumber( form.actualweight.value, "weight", minKgWeight, 1, 0);
  if (correctVal)
  {
    form.actualweight.value = validWeight;
  }
  
  if(typeof(allowedWeight) != "undefined" && allowedWeight != "" && parseFloat(form.actualweight.value) > parseFloat(allowedWeight))
  {
    if (correctVal)
    {
      form.actualweight.value = minKgWeight;
    }
      strErrMess += "Actual weight can not exceed " +  allowedWeight + " Kg.<br />";
  }
}

function selectWeight(theform)
{
  if (isNaN(parseFloat( theform.actualweight.value )))
  {
    theform.weight.value = roundfact * Math.ceil( ( theform.volweight.value ) / roundfact );
  }
  else
  {
    theform.weight.value = ( ( parseFloat( theform.volweight.value ) > parseFloat( theform.actualweight.value ) ) ? roundfact * Math.ceil( ( theform.volweight.value ) / roundfact ) : theform.actualweight.value );
  }
}


customcountries = new Array (
["tr"]
);

function checkCountry()
{
	for( j = 0 ; j < customcountries.length ; j++ )
    {
        if( customcountries[j] == ctryCode )
        {
			return true;        
		}
    }
	return false;
 
}

function changeConvFactor()
{
	var chkCustomCountry = checkCountry();

	if ( chkCustomCountry )
	{
		convfact = 5000;
	}
}
