<script type="text/javascript">
$(document).ready(function () {
    $( document ).on( "click", "a#link_clone", function () {
        $("#clone0").clone().insertBefore("#link_clone");
        counter = Math.floor((Math.random() * 10000000) + 1);
        $('.clone').last().prop('id', 'clone' + counter);
        $('#clone' + counter + ' .Valor').prop('name', "vencimentos["+counter+"][valor]").prop('id', "Vencimento"+counter+"Valor").val("");
        $('#clone' + counter).append('<a href="#excluirVencimento'+counter+'Data" id="excluirVencimento'+counter+'Data" class="excluirVencimento"><?php echo FaHtml::iconDelete(); ?></a>');
        $('#clone' + counter + ' .data_vencimento')
            .removeAttr('id')
            .removeClass('hasDatepicker')
            .prop('name', "vencimentos["+counter+"][data]")
            .prop('id', "Vencimento"+counter+"Data")
            .datepicker(
                $.extend(
                    { showMonthAfterYear: false },
                    $.datepicker.regional['pt-BR'],
                    { 'showButtonPanel': false, 'changeYear': true, 'dateFormat': 'dd/mm/yy' ,'beforeShowDay': NotBeforeToday}
                )
            ).val("").focus();
        JustificativaObrigatoria();
    });

    $( document ).on( "click", ".excluirVencimento", function (event) {
        event.preventDefault();

        var vencimento = $(this).parent();

        vencimento.fadeOut(400, function() {
            $(this).find(".data_vencimento").datepicker().datepicker('disable');
            $(this).remove();
        });
        SomaValores('Valor');

        return false;
    });

    var i = 0;
    $('.data_vencimento').each(function () {
        $(this).prop("id",'Vencimento'+i+'Data').datepicker(
              $.extend(
                $.datepicker.regional['pt-BR'],
                  {showMonthAfterYear: false ,'showButtonPanel': false, 'changeYear': true, 'dateFormat': 'dd/mm/yy' ,'beforeShowDay': NotBeforeToday}
              )
          );
        i++;
    });

    function NotBeforeToday(date) {
        var now = new Date();//this gets the current date and time
        if (date.getFullYear() == now.getFullYear() && date.getMonth() == now.getMonth() && date.getDate() > now.getDate())
            return [true];
        if (date.getFullYear() >= now.getFullYear() && date.getMonth() > now.getMonth())
           return [true];
         if (date.getFullYear() > now.getFullYear())
           return [true];
        return [false];
    }

    $("#contratos-form").submit(function(e) {
        var error = false;
        $('.data_vencimento').each(function () {

            var partes = this.value.split('/');
            var data = new Date(partes[2], partes[1] -1, partes[0]);
            var hoje = new Date();
            hoje.setDate(hoje.getDate());

            if(data <= hoje) {
                error = true;
                this.focus();
                e.preventDefault();
                alert("A data de vencimento não pode ser inferior a hoje.");
                $("#submit_button").removeAttr('disabled');
                return false;
            }
        });

        if(!error)
            return;
    });
    $("label[for=Contratos_COT_IDPRODUTO]").html('Produto <span class="required">*</span>');
    function reativar(clicked) {
        if($("#Contratos_COT_CRIARNOVOCONTRATO").length > 0){
            if($("#Contratos_COT_CRIARNOVOCONTRATO").val() == 1) {
                $('.visible_novo_contrato').show();
            } else {
                $('.visible_novo_contrato').hide();
            }
        }
    }
    reativar(false);
    SomaValores('Valor');
    $("#Contratos_COT_CRIARNOVOCONTRATO").change(function () {
        reativar(true);
        valorMinimotabela();
        JustificativaObrigatoria();
        moduloMobile();
        <?php if($model->isMatrizFilial()) { ?>
          maximohorasImplantacao();
        <?php }  ?>
    });
    JustificativaObrigatoria();
    valorMinimotabela();
    moduloMobile();
    <?php if($model->isMatrizFilial()) { ?>
        maximohorasImplantacao();
        $("#produtos").change(function () {
            maximohorasImplantacao();
            JustificativaObrigatoria();
            valorMinimotabela();
            documentosFiscais();
            moduloMobile();
        });
        $("#Contratos_COT_IDPRODUTO").change(function () {
            maximohorasImplantacao();
            JustificativaObrigatoria();
            valorMinimotabela();
            documentosFiscais();
            moduloMobile();
        });
        $("#Contratos_COT_HORASIMPLANTACAO").change(function () {
            maximohorasImplantacao();
            JustificativaObrigatoria();
            valorMinimotabela();
        });
    <?php } else { ?>
        $("#produtos").change(function () {
            JustificativaObrigatoria();
            valorMinimotabela();
            documentosFiscais();
            moduloMobile();
        });
        $("#Contratos_COT_IDPRODUTO").change(function () {
            JustificativaObrigatoria();
            valorMinimotabela();
            documentosFiscais();
            moduloMobile();
        });
    <?php }  ?>

    $("#Contratos_COT_NROUSUARIOS").keyup(function() {
        JustificativaObrigatoria();
        valorMinimotabela();
    });
    $("#Contratos_COT_USUARIOS_MOBILE").keyup(function () {
        JustificativaObrigatoria();
        valorMinimotabela();
    });
    $("#Contratos_COT_VLRMENSAL").keyup(function() {
        JustificativaObrigatoria();
        valorMinimotabela();
    });
    $("#Contratos_COT_COBRADAIMPLANTACAO").change(function () {
        ContratoSemValorImplantacao();
    });

    $('#Contratos_COT_NROUSUARIOS').mask('00');
    $('#Contratos_COT_HORASIMPLANTACAO').mask('00');
    $('#Contratos_COT_USUARIOS_MOBILE').mask('00');
});
</script>