
function clearErrors(aform)
{
  for (var i=0;i<aform.elements.length;i++)
  {
    var elem = dwr.util.byId('error.' + aform.elements[i].name);
    if (elem != null)
    { elem.innerHTML = '';}
  }
}

function createBindMap(aform, npath)
{
  var bindMap = {};
  for (var i=0;i<aform.elements.length;i++)
  {
    bindMap[aform.elements[i].name.replace(npath , '')] = aform.elements[i].value;
  }
  //alert(bindMap);
  //service.getErrorMessages(bindMap, showErrors(npath));
  //service.validate(bindMap, showErrorCodes(npath));
  return bindMap;
}



function constructBindMap(aform, npath, service)
{
  var bindMap = {};
  for (var i=0;i<aform.elements.length;i++)
  {
    var elem = dwr.util.byId('error.' + aform.elements[i].name);
    if (elem != null)
    { elem.innerHTML = '';}
    bindMap[aform.elements[i].name.replace(npath , '')] = aform.elements[i].value;
  }
  //alert(bindMap);
  service.getErrorMessages(bindMap, showErrors(npath));
  //service.validate(bindMap, showErrorCodes(npath));
}

function showErrorCodes(npath)
{
    return function(cback)
    {
  for (var i=0;i<cback.allErrors.length;i++)
  {
    err = cback.allErrors[i];
    //alert('error.' + npath + "." + err.field);
    dwr.util.byId('error.' + err.field).innerHTML = err.codes;

  }
    }
}

function pop()
{
return function(val)
{
alert(val);
}
}

function showErrors(npath)
{
    return function(errors)
    {
      //alert('errors:' + errors.length);
  for (var i=0;i<errors.length;i++)
  {
    err = errors[i];
    //alert('error.' + npath + err[0] + "=" + err[1]);
    dwr.util.byId('error.' + npath + err[0]).innerHTML += '<li>' + err[1] + '</li>';

  }
    }
}

function displayErrors(errors, npath)
{
  for (var i=0;i<errors.length;i++)
  {
    err = errors[i];
    //alert('error.' + npath + err[0] + "=" + err[1]);
    var elem = dwr.util.byId('error.' + npath + err[0]);
    if (elem != null)
    {
      elem.innerHTML += '<li>' + err[1] + '</li>';
    }
    else
    {
      alert("Unable to display error: " + err);
    }


  }
}
