﻿// JScript File

var blnSubmitted = false;
var Wind;

function mOver(img)
{
    if(document.images)
    {
        document.images[img].src = eval(img + "_over.src");
    }
}

function checkForm()
{
    var thisForm = document.forms[0];
    
    for(i = 0;i<thisForm.elements.length;i++)
    {
        if(thisForm.elements[i].type=="text" || thisForm.elements[i].type=="select-one")
        { 
            if(thisForm.elements[i].style.visibility!="hidden")
            {
                thisForm.elements[i].focus();
                break;
            }
        }
    }
}

function mOut(img)
{
    if(document.images)
    {
        document.images[img].src = eval(img + "_out.src");
    }
}

function getReciept(card)
{
    Wind = window.open('BalanceInquiry.aspx?CardId=' + card,'Wind','width=395,height=350,status=yes,scrollbars=yes,resizable=1');
    Wind.focus();
}

function fixvalue(thisElement)
{
    if(thisElement.value != "")
    {
        var strVal = new String(thisElement.value);
        strVal = strVal.replace(".","");
        
        var val = parseFloat(strVal)/100;
 
        if(!isNaN(val))
        {
            thisElement.value = val.toFixed(2);
        }
    }
}


function GetDecimalDelimiter(countryCode)
{
 
  switch (countryCode)
  {
    case 3:   
           return '#';
    case 2:   
           return ',';
    default:
           return '.';
  }
}

function GetCommaDelimiter(countryCode)
{
 
  switch (countryCode)
  { 
    case 3:          
           return '*';
    case 2:   
           return ',';
    default:
           return '';
  }
 
}

function FormatClean(num)
{
     var sVal='';
     var nVal = num.length;
     var sChar='';
     
   try
   {
      for(c=0;c<nVal;c++)
      {
         sChar = num.charAt(c);
         nChar = sChar.charCodeAt(0);
         if ((nChar >=48) && (nChar <=57))  { sVal += num.charAt(c);   }
      }
   }
    catch (exception) { AlertError("Format Clean",exception); }
    return sVal;
}
  

function FormatNumber(num,countryCode,decimalPlaces)
{       

  var minus='';
  var comma='';
  var dec='';
  var preDecimal='';
  var postDecimal='';
  
  try 
  {
   
    decimalPlaces = parseInt(decimalPlaces);
    comma = GetCommaDelimiter(countryCode);
    dec = GetDecimalDelimiter(countryCode);
    
    if (decimalPlaces < 1) { dec = ''; }
    if (num.lastIndexOf("-") == 0) { minus='-'; }
   
    preDecimal = FormatClean(num);
    
    // preDecimal doesn't contain a number at all.
    // Return formatted zero representation.
    
    if (preDecimal.length < 1)
    {
       return minus + FormatEmptyNumber(dec,decimalPlaces);
    }
    
    // preDecimal is 0 or a series of 0's.
    // Return formatted zero representation.
    
    if (parseInt(preDecimal) < 1)
    {
       return minus + FormatEmptyNumber(dec,decimalPlaces);
    }
    
    // predecimal has no numbers to the left.
    // Return formatted zero representation.
    
    if (preDecimal.length == decimalPlaces)
    {
      return minus + '0' + dec + preDecimal;
    }
    
    // predecimal has fewer characters than the
    // specified number of decimal places.
    // Return formatted leading zero representation.
    
    if (preDecimal.length < decimalPlaces)
    {
       if (decimalPlaces == 2)
       {
        return minus + FormatEmptyNumber(dec,decimalPlaces - 1) + preDecimal;
       }
       return minus + FormatEmptyNumber(dec,decimalPlaces - 2) + preDecimal;
    }
    
    // predecimal contains enough characters to
    // qualify to need decimal points rendered.
    // Parse out the pre and post decimal values
    // for future formatting.
    
    if (preDecimal.length > decimalPlaces)
    {
      postDecimal = dec + preDecimal.substring(preDecimal.length - decimalPlaces,
                                               preDecimal.length);
      preDecimal = preDecimal.substring(0,preDecimal.length - decimalPlaces);
    }

    // Place comma oriented delimiter every 3 characters
    // against the numeric represenation of the "left" side
    // of the decimal representation.  When finished, return
    // both the left side comma formatted value together with
    // the right side decimal formatted value.
    
    var regex  = new RegExp('(-?[0-9]+)([0-9]{3})');
 
    while(regex.test(preDecimal))
    {
       preDecimal = preDecimal.replace(regex, '$1' + comma + '$2');
    }
       
  }
  catch (exception) { AlertError("Format Number",exception); }
  return minus + preDecimal + postDecimal;
}

function maskKeyPress(objEvent) 
{
    var iKeyCode;       
    iKeyCode = objEvent.keyCode;
    //alert(iKeyCode);

    
    if((iKeyCode>=46 && iKeyCode<=57) || (iKeyCode>=96 && iKeyCode<=105) || iKeyCode == 8|| iKeyCode == 9) return true;
    return false;
}