var myAddressVal =
{
  dataServices:function (error) {
    if(!document.getElementById || !document.createTextNode){return;}
    myAddressVal.outputFC = document.getElementById(error);
    var jstreet = document.getElementById('street').value;
    var japt = document.getElementById('apt').value;
    var jcity = document.getElementById('city').value;
    var f = document.forms[0];
    var selectBox = f.elements['state'];
    var jstate = selectBox.value;
    var jzip = document.getElementById('zip').value;

    //jstreet = escape(jstreet);
    //japt = escape(japt);
    //jcity = escape(jcity);
    //jzip = escape(jzip);

    if ( jstreet != '' && jcity != '' && jstate != '' && jzip != '' ) {
      var xmlhttp;
      try {
        // code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
      } catch (error) {
        try {
          // code for IE6, IE5
          xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (error) {
          return true;
        }
      }

      xmlhttp.open('POST','sm/dataServices.iphtml',true);
      params = 'street='+escape(jstreet)+'&apt='+escape(japt)+'&city='+escape(jcity)+'&state='+escape(jstate)+'&zip='+escape(jzip);
      xmlhttp.send(params);

      xmlhttp.onreadystatechange = function() {
        if(xmlhttp.readyState == 1){
          myAddressVal.outputContainer.innerHTML='loading...';
        }
        if( xmlhttp.readyState == 4 ){
          if ( xmlhttp.status && /200|304/.test(xmlhttp.status) ) {
            myAddressVal.retrieved(xmlhttp);
          //} else {
            //myAddressVal.failed(xmlhttp);
          }
        }
      }
    }
  },
  retrieved:function (requester){
    var data = requester.responseText;
    data = data.replace(/\n/g,'<br />');
    var street = document.getElementById('street');
    var apt = document.getElementById('apt');
    var city = document.getElementById('city');
    var state = document.getElementById('state');
    var zip = document.getElementById('zip');
    var DsArray = data.split('|');
    var fc = DsArray[0];
    var fcDesc = DsArray[1];
    var pre = '<p>Our system shows that there might be an issue with your address.&nbsp;&nbsp;Please confirm and click \'Submit\' to continue.</p><p>Warning - ';
    if ( isNaN(fc) ) {
      //myAddressVal.outputFC.innerHTML = fc+': '+fcDesc;
      myAddressVal.outputFC.innerHTML = pre + fcDesc+'</p>';
    } else {
      myAddressVal.outputFC.innerHTML = '';
    }
    //document.getElementById('street').value = DsArray[2];
    //var reg = /^HASH.*$/;
    //if ( isNaN(DsArray[3]) && !reg.test(DsArray[3]) ) {
    //  document.getElementById('apt').value = DsArray[3];
    //}
    //document.getElementById('city').value = DsArray[4];
    //document.getElementById('state').value = DsArray[5];
    //if ( !reg.test(DsArray[6]) ) {
    //  document.getElementById('zip').value = DsArray[6];
    //}
    return false;
  },
  failed:function (requester,street){
    alert('The XMLHttpRequest failed. Status: ' + requester.status);
    return true;
  }
}

