// JavaScript Document
function checkform(of)
{
	// Test if DOM is available 
  if(!document.getElementById || !document.createTextNode){return;}
  
// Define error messages and required fields
var errorID='errormsg';
  var errorClass='error'
  var errorMsg=' Please enter valid information in the fields indicated above.';
  var errorImg='http://www.nuemd.com/images/error_button.jpg';
  var errorAlt='Error';
  var errorTitle='This field has an error!';
  var requiredArray= [];
  requiredArray[0]=document.getElementById('FirstName');
  requiredArray[1]=document.getElementById('LastName');
  requiredArray[2]=document.getElementById('Email');
  requiredArray[3]=document.getElementById('Phone');
  requiredArray[4]=document.getElementById('Company');
  requiredArray[5]=document.getElementById('BusinessType_c');

	if (document.getElementById('BusinessType_c').selectedIndex ==2)
		{
			requiredArray[6] = document.getElementById('MedBillClients_c');
		}
// Cleanup old mess
  // if there is an old errormessage field, delete it
  if(document.getElementById(errorID))
  {
    var em=document.getElementById(errorID);
    em.parentNode.removeChild(em);
  }
  // remove old images and classes from the required fields
  for(var i=0;i<requiredArray.length;i++)
  {
    var f=requiredArray[i];
    if(!f){continue;}
    if(f.previousSibling && /img/i.test(f.previousSibling.nodeName))
    {
      f.parentNode.removeChild(f.previousSibling);
    }
    f.className='';
  }
// loop over required fields
  for(var i=0;i<requiredArray.length;i++)
  {
// check if required field is there
    var f=requiredArray[i];
    if(!f){continue;}
// test if the required field has an error, 
// according to its type
    switch(f.type.toLowerCase())
    {
      case 'text':
        if(f.value=='' && f.id!='Email'){cf_adderr(f)}              

// check e-mail separately
        if(f.id=='Email' && 
        !cf_isEmailAddr(f.value)){cf_adderr(f)}              
      break;
      case 'textarea':
        if(f.value==''){cf_adderr(f)}              
      break;
      case 'checkbox':
        if(!f.checked){cf_adderr(f)}              
      break;
      case 'select-one':
        if(!f.selectedIndex && f.selectedIndex==0){cf_adderr(f)}              
      break;
    }
  }
return !document.getElementById(errorID);

/* Tool methods */
			function cf_adderr(o)
			{
// create image, add to and color the error fields
	var errorIndicator=document.createElement('img');
	errorIndicator.alt=errorAlt;
	errorIndicator.src=errorImg;
	errorIndicator.title=errorTitle;
	o.className=errorClass;
	o.parentNode.insertBefore(errorIndicator,o);

// Check if there is no error message
    if(!document.getElementById(errorID))
    {
    // create errormessage and insert before submit button
      var em=document.createElement('div');
      em.id=errorID;
      var newp=document.createElement('p');
	  // clone and insert the error image
	  newp.appendChild(errorIndicator.cloneNode(true));
	  newp.appendChild(document.createTextNode(errorMsg));
       em.appendChild(newp);
	
// find the submit button 
					for(var i=0;i<of.getElementsByTagName('input').length;i++)
					{
						if(/submit/i.test(of.getElementsByTagName('input')[i].id))
						{
							var sb=of.getElementsByTagName('input')[i];
							break;
						}
					}
					if(sb)
					{
						sb.parentNode.insertBefore(em,sb);
					}	
				} 
	}
function cf_isEmailAddr(str) 
  {
      return str.match(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/);
  }
}
function clearDefault(el) {
  if (el.defaultValue==el.value) el.value = ''
}


//display hidden selection box if Medical Billing Company is selected

function extraField()
{
	var tada = document.getElementById('togglefield');
	var lookAtBusType = document.getElementById('BusinessType_c');
	
	if (lookAtBusType.selectedIndex==2)	
	{
	tada.className = 'form_row';
	}
	else tada.className = 'hidden';
}

