﻿/// <reference name="MicrosoftAjax.js" />
/// <reference path="jquery-1.3.2-vsdoc2.js" />
/// <reference path="common.js" />
/// <reference path="EICv3.js" />



jQuery.validator.addMethod("time", function(value, element) {
	
	var validTime = (this.optional(element) || /^([0-1]?[0-9]|[2][0-3]):([0-5][0-9])$/.test(value));

	if (validTime) {	
		return true;
	}
	else {
		return false;
	}
}, "Please enter a valid time.");


function IsValidDateBR(optional, value, element) {
    var validDate = (optional || /^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[1-2][0-9]\d{2})$/.test(value));

    if (validDate) {
        var dia = value.substring(0, 2);
        var mes = value.substring(3, 5);
        var ano = value.substring(6, 10);

        if ((mes == 4 || mes == 6 || mes == 9 || mes == 11) && dia > 30) return false;
        if (ano % 4 != 0 && mes == 2 && dia > 28) return false;
        if (ano % 4 == 0 && mes == 2 && dia > 29) return false;

        return true;
    }
    else {
        return false;
    }
}

function IsRadioButtonSelected(element) {
    var parent = $(element).parent();

    if (parent.find('input').is(':checked')) {
        parent.removeClass('error');
        return false;
    }
    else {
        parent.addClass('error');
        return true;
    }
}

jQuery.validator.addMethod("date_ptBR", function(value, element) {
    return IsValidDateBR(this.optional(element), value, element);
}, "Por favor e informe uma data valida.");


jQuery.validator.addMethod("date_es-ES", function(value, element) {
    return IsValidDateBR(this.optional(element), value, element);
}, "Por favor e informe uma data valida.");


jQuery.validator.addMethod("date_en-US", function(value, element) {
	
	var validDate = (this.optional(element) || /^(([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/[1-2][0-9]\d{2})$/.test(value));
	
	if (validDate) {
		var mes = value.substring(0, 2);
		var dia = value.substring(3, 5);
		var ano = value.substring(6, 10);
		
		if ((mes == 4 || mes == 6 || mes == 9 || mes == 11) && dia > 30)return false;
		if (ano % 4 != 0 && mes == 2 && dia > 28) return false;
		if (ano % 4 == 0 && mes == 2 && dia > 29) return false;
		
		return true;
	}
	else {
		return false;
	}
}, "Please enter a valid date.");


$('#txtOutroEquipamento,#txtNecessidadesEspeciais').maxlength();
$('#txtInicioHora,#txtTerminoHora').mask('99:99');
$('#txtParticipantes').onlyNumbers();
$('.tel').onlyPhoneNumbers();


$('.data').datepicker({
    changeMonth: true,
    changeYear: true,
    minDate: 0,
    showOn: 'both',
    buttonImageOnly: true,
    buttonImage: RootUrl + 'layout/img/datepicker.gif'
}).mask('99/99/9999');


function IsValidBebidasAlcool(element, value) {
    if ($('#chbServicos' + value).is(':checked') && undefined === $("input[name='rbl" + value + "BebAlco']:checked").val()) {
        $(element).parent().addClass('error');
        return true;
    }
    else {
        $(element).parent().removeClass('error');
        return false;
    }
}



function SelectOther(selectList, inputBox, value) {
    inputBox.attr('disabled', selectList.val() != value);

    selectList.change(function() {
        inputBox.removeClass('error');
        inputBox.attr('disabled', $(this).val() != value);
    });
}



function CheckSpecial(checkBox, element) {

    var inputs = element.find('input').attr('disabled', !checkBox.is(':checked'));

    element[checkBox.is(':checked') ? 'show' : 'hide']();

    checkBox.click(function() {
        element[this.checked ? 'show' : 'hide']();
        inputs.attr('disabled', !this.checked);
    });
}

