// (C) Copyright 2008-2009 WhereCall.com.  All Rights Reserved.

function CheckInput( id )
{
 var curstate = -1;
 var numstr = "";
 txt = document.getElementById(id).value;

 // Get the numbers out

 for ( i = 0; i < txt.length; i++ )
 {
  if ( ( txt.charAt( i ) >= '0' ) && ( txt.charAt( i ) <= '9' ) )
  {
   numstr = numstr + txt.charAt( i );
  }
 }

 // Remove default country code +1

 if ( numstr.substr(0,1) == '1' )
 {
  numstr = numstr.substr(1);
 }

 dv1 = document.getElementById("format");
 dv2 = document.getElementById("loc");
 dv3 = document.getElementById("type");

 if ( numstr.length < 3 )
 {
  dv1.value = "";
  dv2.value = "";
  dv3.value = "";
  return;
 }

 dv1.style.color="black";
 dv2.style.color="black";
 dv3.style.color="black";

 if ( numstr.length >= 3 )
 {
  dv1.value = "+1 "+numstr.substr(0,3)+"-NXX-XXXX";
  dv2.value = "";
  dv3.value = "";

  for ( i = 0; i < npatostate.length; i++ )
  {
   if ( npatostate[ i ].substr(0,3) == numstr.substr(0,3) )
   {
    loaded = 0;
    eval("if ( typeof npa"+ numstr.substr(0,3) + "tocity != 'undefined' ) { loaded = 1; }" );

    if ( !loaded )
    {
     // Load the NPA data...
     var e = document.createElement("script");
     e.src = "http://www.WhereCall.com/js/NPA"+numstr.substr(0,3)+".js";
     e.type="text/javascript";
     document.getElementsByTagName("head")[0].appendChild(e);
    }

    curstate = i;
    dv2.value += npatostate[i].substr(3);
   }
  }
 }

 if ( numstr.length >= 6 )
 {
  dv1.value = "+1 "+numstr.substr(0,3)+"-"+numstr.substr(3,3)+"-XXXX";
  eval("npatocity=npa"+numstr.substr(0,3)+"tocity;");

  for ( i = 0, j = 0; i < npatocity.length; i++ )
  {
   if ( npatocity[ i ].substr(0,6) == numstr.substr(0,6) )
   {
    if ( curstate >= 0 )
    {
     dv2.value = npatocity[ i ].substr(7) + ", " + npatostate[ curstate ].substr(3,2);
    }
    else
    {
     dv2.value = npatocity[ i ].substr(7) + "[" + curstate + "]";
    }

    if ( npatocity[ i ].substr(6,1) == "W" )
    {
     dv3.value = "Wireless";
    }
    else if ( npatocity[ i ].substr(6,1) == "L" )
    {
     dv3.value = "Landline";
    }
    else
    {
     dv3.value = "Other";
    }

    j = 1;
    i = 9999;
   }
  }

  if ( j == 0 )
  {
   dv2.value += " Appears to be unused";
  }
 }

 return;
}
