var form = "";
var submitted = false;
var error = false;
var error_message = "";

function check_input(field_name, field_size, message) {
if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
var field_value = form.elements[field_name].value;

if (field_value == '' || field_value.length < field_size) {
error_message = error_message + "* " + message + "\n";
error = true;
}
}
}

function check_email(field_name, field_size, message) { var str = form.elements[field_name].value; 
var at="@"; var dot="."; var lat=str.indexOf(at); var lstr=str.length; var ldot=str.indexOf(dot);var exr="";
if (str.indexOf(at)==-1){ exr = true; } 
if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){ exr = true; }
if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){ exr = true; }
if (str.indexOf(at,(lat+1))!=-1){ exr = true; } 
if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){  exr = true; } 
if (str.indexOf(dot,(lat+2))==-1){ exr = true; } 
if (str.indexOf(" ")!=-1){ exr = true; } 
if (exr == true){ error_message = error_message + "* " + message + "\n";error = true; }
form="";
}


function check_radio(field_name, message) {
var isChecked = false;

if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
var radio = form.elements[field_name];

for (var i=0; i<radio.length; i++) {
if (radio[i].checked == true) {
isChecked = true;
break;
}
}

if (isChecked == false) {
error_message = error_message + "* " + message + "\n";
error = true;
}
}
}

function check_select(field_name, field_default, message) {
if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
var field_value = form.elements[field_name].value;

if (field_value == field_default) {
error_message = error_message + "* " + message + "\n";
error = true;
}
}
}

function check_password(field_name_1, field_name_2, field_size, message_1, message_2) {
if (form.elements[field_name_1] && (form.elements[field_name_1].type != "hidden")) {
var password = form.elements[field_name_1].value;
var confirmation = form.elements[field_name_2].value;

if (password == '' || password.length < field_size) {
error_message = error_message + "* " + message_1 + "\n";
error = true;
} else if (password != confirmation) {
error_message = error_message + "* " + message_2 + "\n";
error = true;
}
}
}

function check_password_new(field_name_1, field_name_2, field_name_3, field_size, message_1, message_2, message_3) {
if (form.elements[field_name_1] && (form.elements[field_name_1].type != "hidden")) {
var password_current = form.elements[field_name_1].value;
var password_new = form.elements[field_name_2].value;
var password_confirmation = form.elements[field_name_3].value;

if (password_current == '' || password_current.length < field_size) {
error_message = error_message + "* " + message_1 + "\n";
error = true;
} else if (password_new == '' || password_new.length < field_size) {
error_message = error_message + "* " + message_2 + "\n";
error = true;
} else if (password_new != password_confirmation) {
error_message = error_message + "* " + message_3 + "\n";
error = true;
}
}
}

function check_form(form_name) {
if (submitted == true) {
alert("Ya ha enviado el formulario. Pulse Aceptar y espere a que termine el proceso.");
return false;
}

error = false;
form = form_name;
error_message = 'Hay errores en tu formulario!\nPor favor, haga las siguientes correciones:\n\n';


check_input('fc_name', 2, 'Escriba correctamente su nombre');
check_input('fc_company', 2, 'Escriba correctamente el nombre de su empresa');
check_input('fc_country', 2, 'Escriba correctamente su país');
check_input('fc_email', 6, 'Escriba correctamente su mail');
check_input('fc_city', 2, 'Escriba correctamente su ciudad');
check_input('fc_comments', 1, 'Ingrese sus comentarios');
check_input('fc_confirmation', 7, 'Debe ingresar su código de seguridad correctamente');
check_select('fc_referer', '', 'Debe ingresar como se enteró de nosotros');

check_input('cus_shipping_email', 6, 'Escriba correctamente su mail');
check_password("cus_shipping_password", "cus_shipping_password_confirmation", 5, "Su contraseña debe tener al menos 5 letras.", "La confirmación de la contraseña debe ser igual a la contraseña.");
check_input('cus_shipping_contact_first_name', 2, 'Escriba correctamente su nombre de contacto para el envio');
check_input('cus_shipping_contact_last_name', 2, 'Escriba correctamente su apellido de contacto para el envio');
check_input('cus_shipping_country', 2, 'Escriba su país de envio');
check_input('cus_shipping_state', 2, 'Escriba su estado de envio');
check_input('cus_shipping_city', 2, 'Seleccione su delegación, municipio o ciudad de envio');
check_select('cus_shipping_suburb', '', 'Seleccione su colonia o suburbio de envio');
check_input('cus_shipping_zip', 5, 'Escriba su código postal de envio');
check_input('cus_shipping_street', 2, 'Escriba correctamente su calle de envio');
check_input('cus_shipping_number', 1, 'Escriba su numero exterior de envio');
check_input('cus_shipping_telephone', 5, 'Escriba su teléfono de envio');
check_input('fc_confirmation_registry', 5, 'Escriba el código de seguridad');

check_input('cus_email', 6, 'Escriba correctamente su mail al que llegará su factura');
check_input('cus_country', 2, 'Escriba el país de su dirección fiscal correctamente');
check_input('cus_state', 2, 'Escriba el estado de su dirección fiscal correctamente');
check_input('cus_city', 2, 'Escriba la delegación, municipio o ciudad de su dirección fiscal correctamente');
check_input('cus_suburb', 2, 'Escriba la colonia o suburbio de su dirección fiscal correctamente');
check_input('cus_zip', 5, 'Escriba el código de su dirección fiscal correctamente');
check_input('cus_street', 2, 'Escriba la calle de su dirección fiscal correctamente');
check_input('cus_number', 1, 'Escriba el numero exterior de su dirección fiscal correctamente');
check_input('cus_telephone', 5, 'Escriba el teléfono de su empresa correctamente');

check_input('Card', 16, 'Escriba correctamente su tarjeta');
check_input('Expires', 5, 'Escriba correctamente su expiración MM/AA');
if (error == true) {
alert(error_message);
return false;
} else {
}
}
