var req_err = 0;

function check_email(_email)
{
    var reg = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i

    if (_email != '' && !reg.test(_email)) {
        return false;
    } else {
        return true;
    }
}
function check_link(frm, field) {
    var field_str = frm[field].value;
    if (field_str.indexOf('http://') != -1) {
        req_err++;
        document.getElementById('err_'+field).style.display = 'block';
    }
}
function isValid(parm, val) {
    if (parm == "") return true;
    for (i=0; i<parm.length; i++) {
        if (val.indexOf(parm.charAt(i),0) == -1) return false;
    }
    return true;
}
function check_field( frm, field, limit_min, limit_content )
{
    var field_str = frm[field].value;
    if ( limit_content ) {
        if (!field_str || field_str.length < limit_min || !isValid(field_str, limit_content)) {
            req_err++;
            document.getElementById('err_'+field).style.display = 'block';
        }else{
            document.getElementById('err_'+field).style.display = 'none';
        }
    } else {
        if (!field_str || field_str.length < limit_min) {
            req_err++;
            document.getElementById('err_'+field).style.display = 'block';
        }else{
            document.getElementById('err_'+field).style.display = 'none';
        }
    }
}

function checkRequest( _type )
{
    req_err = 0;
    if ( _type == 1 )
    {
        var frm = document.getElementById('contact_info');
    
        check_field(frm, 'c_first_name', 2);
        check_link(frm, 'c_first_name');

        check_field(frm, 'c_last_name', 2);
        check_link(frm, 'c_last_name');
    
        check_field(frm, 'c_phone_day', 3, '0123456789-+ ');
        check_link(frm, 'c_phone_day');
    
        check_field(frm, 'address', 1);
    
        check_field(frm, 'city', 1);
    
        check_field(frm, 'state', 1);
    
        check_field(frm, 'zip_code', 1);
    
        check_field(frm, 'c_email', 7);
        if (!check_email(frm['c_email'].value)) {
            req_err++;
            document.getElementById('err_c_email').style.display = 'block';
        } else {
            document.getElementById('err_c_email').style.display = 'none';
        }

        check_field(frm, 'contact_time', 1);
    
        if (req_err == 0) {
            document.forms['contact_info'].submit();
        } else {
            return false;
        }
    }
    /// Request form
    else if ( _type == 2 )
    {
        var frm = document.getElementById('request_info');
    
        check_field(frm, 'first_name', 2);
        check_link(frm, 'first_name');

        check_field(frm, 'last_name', 2);
        check_link(frm, 'last_name');
    
        check_field(frm, 'phone', 3, '0123456789-+ ');
        check_link(frm, 'phone');
    
        check_field(frm, 'program', 1);
    
        check_field(frm, 'email', 7);
        if (!check_email(frm['email'].value)) {
            req_err++;
            document.getElementById('err_email').style.display = 'block';
        } else {
            document.getElementById('err_email').style.display = 'none';
        }

        if (req_err == 0) {
            document.forms['request_info'].submit();
        } else {
            return false;
        }
    }
    /// Contact w/out address
    else if ( _type == 3 )
    {
        var frm = document.getElementById('contact_info');
    
        check_field(frm, 'c_first_name', 2);
        check_link(frm, 'c_first_name');

        check_field(frm, 'c_last_name', 2);
        check_link(frm, 'c_last_name');
    
        check_field(frm, 'phone_day', 3, '0123456789-+ ');
        check_link(frm, 'phone_day');
    
        check_field(frm, 'city', 1);
    
        check_field(frm, 'state', 1);
    
        check_field(frm, 'zip_code', 1);
    
        check_field(frm, 'c_email', 7);
        if (!check_email(frm['c_email'].value)) {
            req_err++;
            document.getElementById('err_c_email').style.display = 'block';
        } else {
            document.getElementById('err_c_email').style.display = 'none';
        }

        check_field(frm, 'contact_time', 1);
    
        if (req_err == 0) {
            document.forms['contact_info'].submit();
        } else {
            return false;
        }
    } else {
        return false;
    }
}