function ValidateInputFields(form)
{
    var count = 0;
    var mailFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

    if(form)
    {
        nodes = jQuery("#"+form+" input").get();
    }
    else
    {
        nodes = document.getElementsByTagName('input');
    }
    
    for(var i=0; i<nodes.length; i++)
    {
        if(nodes[i].getAttribute('required') == 'true' && nodes[i].getAttribute('type') == 'text' && nodes[i].value == '')
        {
            nodes[i].style.border = '1px red dotted';
            count++;
        }
        else if(nodes[i].getAttribute('required') == 'true' && (nodes[i].getAttribute('name') == 'mail' || nodes[i].getAttribute('name') == 'email'))
        {
            if(!mailFilter.test(nodes[i].value))
            {
                nodes[i].style.border = '1px red dotted';
                alert('het email adres is niet correct');
                return false;
            }
        }
        else if(nodes[i].getAttribute('required') == 'true' && nodes[i].getAttribute('type') == 'checkbox' && nodes[i].checked == false)
        {
            var els = document.getElementsByName(nodes[i].name);
            var val = '';
            
            for (xcount=0;xcount<els.length;xcount++) 
            { 
                  if (els[xcount].checked) 
                  { 
                    val = els[xcount].value; 
                  } 
            } 
            if(val == '')
            {
                nodes[i].style.border = '1px red dotted';
                count++;
            }
            else
            {
                nodes[i].style.border = '1px #CCCCCC solid';
            }            
        }
        else if(nodes[i].getAttribute('required') == 'true' && nodes[i].getAttribute('type') == 'radio')
        {
            var els = document.getElementsByName(nodes[i].name);
            var val = '';
            
            for (xcount=0;xcount<els.length;xcount++) 
            { 
                  if (els[xcount].checked) 
                  { 
                         val = els[xcount].value; 
                  } 
            } 
            if(val == '')
            {
                nodes[i].style.border = '1px red dotted';
                count++;
            }
            else
            {
                nodes[i].style.border = '1px #CCCCCC solid';
            }
        }        
        else
            nodes[i].style.border = '1px #CCCCCC solid';
    }    
    
    if(form)
    {
        nodes = jQuery("#"+form+" textarea").get();
    }
    else
    {
        nodes = document.getElementsByTagName('textarea');
    }    
    
    for(var i=0; i<nodes.length; i++)
    {
        if(nodes[i].getAttribute('required') == 'true')
        {
            if(jQuery(nodes[i]).hasClass('mce') || jQuery(nodes[i]).hasClass('tinymce'))
            {
                if(tinyMCE.get(nodes[i].id).getContent() == '')
                {
                    nodes[i].style.border = '1px red dotted';
                    count++;
                }
            }
            else
            {
                if(nodes[i].value == '')
                {
                    nodes[i].style.border = '1px red dotted';
                    count++;
                }
            }
        }
        else
            nodes[i].style.border = '1px #CCCCCC solid';
    }
     
    if(form)
    {
        nodes = jQuery("#"+form+" select").get();
    }
    else
    {
        nodes = document.getElementsByTagName('select');
    }
    
    for(var i=0; i<nodes.length; i++)
    {
        if(nodes[i].getAttribute('required') == 'true' && nodes[i][nodes[i].selectedIndex].value == '')
        {
            nodes[i].style.color = 'red';
            count++;
        }
        else
            nodes[i].style.color = '#000';
    }     
        
    if(count > 0)
    {
        window.alert('Vul a.u.b. alle verplichte velden in.');
        count = 0;
        return false;
    }
    return true;
}
