<?php
require '../conexao/conexao.php';
require '../sessao.php';
require '../configuacoes.php';
require '../configuracao/consulta_banco_dados.php';
require '../configuracao/filtros.php';
require 'consulta_bd.php';
require '../conexao/acesso.php';
$consulta_bb = new ConsultaBancoDeDados();
$consultapcp = new ConsultasMetasPCP();
$filtros = new Filtros();

$etapas = $consulta_bb->get_etapaFirebird();

$id_funcionario = $_GET['id_funcionario'] ?? null;
$cidade = $_GET['cidade'] ?? null;
$ano = $_GET['ano'] ?? null;
$mes = $_GET['mes'] ?? null;
$filial = $_GET['filial'] ?? null;
$etapa = $_GET['etapa'] ?? null;
$nome_etapaetapa = $_GET['nome_etapa'] ?? null;
$cliente = $_GET['cliente'] ?? null;

$url = http_build_query([
    'cidade' => $_GET['cidade'] ?? null,
    'ano' => $_GET['ano'] ?? null,
    'mes' => $_GET['mes'] ?? null,
    'filial' => $_GET['filial'] ?? null,
    'etapa' => $_GET['etapa'] ?? null,
    'nome_etapa' => $_GET['nome_etapa'] ?? null,
    'id_funcionario' => $_GET['id_funcionario'] ?? null,
    'pesquisar' => isset($_GET['pesquisar']) ? $_GET['pesquisar'] : '',
]);


if (isset($_GET['id']) && $_GET['id'] == '1') {
    $pageTitle = "Cadastro Meta do Colaborador";
    $tab = 'meta';
} elseif (isset($_GET['id']) && $_GET['id'] == '2') {
    $pageTitle = "Cadastro Adição do Colaborador";
    $tab = 'adicao';
}

$funcionario = $consultapcp->get_funcionarios($id_funcionario);
//$nome_fun = mb_convert_encoding($funcionario[0]['NOMEFUNCIONARIO'], 'UTF-8', 'ISO-8859-1');
$nome_fun = $funcionario[0]['NOMEFUNCIONARIO'];
$detalhes = $consultapcp->get_detalhes($ano, $mes, $etapa, $id_funcionario, $tab);
if ($tab == 'meta' && isset($_GET['id']) && $_GET['id'] == '1') {
    if (isset($detalhes[0]['dia'], $detalhes[0]['mes'], $detalhes[0]['ano'])) {
        $dia = str_pad($detalhes[0]['dia'], 2, '0', STR_PAD_LEFT);
        $mes = str_pad($detalhes[0]['mes'], 2, '0', STR_PAD_LEFT);
        $ano = $detalhes[0]['ano'];
        $data_registro = "$ano-$mes-$dia";
    } else {
        $data_registro = null;
    }
}

?>

<!DOCTYPE html>
<html lang="pt-br">

<head>
    <link rel="stylesheet" href="../configuracao/modalexcluir.css">
</head>
<?php
include('../geral/header.php');
?>

<body>

    <!-- Navigation Bar-->
    <?php
    include('../geral/menu.php');
    ?>
    <!-- End Navigation Bar-->

    <!-- ============================================================== -->
    <!-- Start Page Content here -->
    <!-- ============================================================== -->

    <div class="wrapper">
        <div class="container-fluid">

            <div class="card-box mt-3">
                <div class="row">
                    <div class="col-6 text-left">
                        <h4 class="page-title"><?php echo $pageTitle ?></h4>
                    </div>

                    <div class="col-6 text-right">
                        <?php if (isset($_GET['id']) && $_GET['id'] == '1') { ?>
                            <a href="formulario_alteracao.php?<?php echo $url; ?>&id=2&id_funcionario=<?php echo $id_funcionario; ?>" class=" btn btn-light" alt="Incluir Cadastro" title="Incluir Cadastro"><i class="mdi mdi-plus"></i> Adicionar Adição</a>
                        <?php } elseif (isset($_GET['id']) && $_GET['id'] == '2') { ?>
                            <a href="formulario_alteracao.php?<?php echo $url; ?>&id=1&id_funcionario=<?php echo $id_funcionario; ?>" class=" btn btn-light" alt="Incluir Cadastro" title="Incluir Cadastro"><i class="mdi mdi-plus"></i> Adicionar Meta</a>
                        <?php }  ?>
                        <a href="index.php?<?= $url ?>" class="btn btn-light"><i class="mdi mdi-keyboard-backspace"></i> Voltar</a>
                    </div>

                    <div class="col-12">
                        <hr>
                    </div>

                    <div class="col-12">
                        <form method="post" action="processa_alteracao.php" onsubmit="return validarFormulario();">
                            <div class="form-row mb-3">
                                <div class="form-group col-6 col-md-4 col-lg-2 pessoa-fisica">
                                    <label for="cdfuncionario" class="col-form-label">Código Manipulador<span class="text-danger">*</span></label>
                                    <p>
                                        <input type="text" name="cdfuncionario" id="cdfuncionario" class="form-control" placeholder="Informe o Código" value="<?php echo htmlspecialchars($funcionario[0]['CODIGO']); ?>" disabled>
                                    </p>
                                </div>
                                <div class="form-group col-6 col-md-4 col-lg-2 pessoa-fisica">
                                    <label for="funcionario" class="col-form-label">Nome<span class="text-danger">*</span></label>
                                    <p>
                                        <input type="text" name="funcionario" id="funcionario" class="form-control" placeholder="Informe o nome" value="<?php echo htmlspecialchars($nome_fun); ?>" disabled>
                                    </p>
                                </div>

                                <?php echo $filtros->filtroEtapa($etapa, $etapas, true, true); ?>
                                <?php if (isset($_GET['id']) && $_GET['id'] == '1') {
                                    echo $filtros->filtroAno($ano);
                                    echo $filtros->filtroMes($mes);
                                } elseif (isset($_GET['id']) && $_GET['id'] == '2') { ?>
                                    <div class="col-6 col-md-4 col-lg-2">
                                        <label for="data" class="col-form-label">Data<span class="text-danger">*</span></label>
                                        <input type="date" id="data" name="data" class="form-control" value="<?php echo isset($data_registro) ? $data_registro : ''; ?>" oninput="validarCampo('data')">
                                    </div>

                                <?php }  ?>


                                <?php if (isset($_GET['id']) && $_GET['id'] == '1') { ?>
                                    <div class="form-group col-6 col-md-4 col-lg-2">
                                        <label for="meta" class="col-form-label">Meta<span class="text-danger">*</span></label>
                                        <p>
                                            <input type="number" name="meta" id="meta" class="form-control" placeholder="Informe a Meta" value="<?php echo isset($detalhes[0]['meta']) ? htmlspecialchars($detalhes[0]['meta']) : '' ?>" oninput="validarCampo('meta')">
                                        </p>
                                    </div>
                                <?php } elseif (isset($_GET['id']) && $_GET['id'] == '2') { ?>
                                    <div class="form-group col-6 col-md-4 col-lg-2">
                                        <label for="adicao" class="col-form-label">Adição<span class="text-danger">*</span></label>
                                        <p>
                                            <input type="number" name="adicao" id="adicao" class="form-control" placeholder="Informe a Adição" oninput="validarCampo('adicao')">
                                        </p>
                                    </div>
                                <?php } ?>


                                <input type="hidden" name="url" id="url" value="<?php echo htmlspecialchars($url); ?>">
                                <input type="hidden" name="etapa" id="etapa" value="<?php echo htmlspecialchars($etapa); ?>">
                                <input type="hidden" name="id_funcionario" id="id_funcionario" value="<?php echo htmlspecialchars($funcionario[0]['CODIGO']); ?>">

                                <?php if (isset($_GET['id']) && $_GET['id'] == '2') { ?>
                                    <div class="col-6 col-md-4 col-lg-2  mt-4 text-right">
                                    <?php } elseif (isset($_GET['id']) && $_GET['id'] == '1') { ?>
                                        <div class="col-12 text-right">
                                        <?php } ?>
                                            <button type="submit" class="btn btn-primary"><i class="mdi mdi-magnify"></i> Salvar</button>
                                        </div>
                                        </div>
                        </form>
                    </div>
                </div>
            </div>

        </div> <!-- end container -->
    </div>



    <!-- end wrapper -->

    <!-- ============================================================== -->
    <!-- End Page content -->
    <!-- ============================================================== -->

    <!-- Footer Start -->
    <?php
    include('../geral/footer.php');
    ?>
    <!-- end Footer -->

    <?php
    include('../geral/mensagens_modais.php');
    ?>

    <!-- Vendor js -->
    <script src="../../assets/js/vendor.min.js"></script>

    <!-- knob plugin -->
    <script src="../../assets/libs/jquery-knob/jquery.knob.min.js"></script>
    <!-- App js-->
    <script src="../../assets/js/app.min.js"></script>


    <script>
        function exibirMensagemErro(mensagem, id) {
            let errorDiv;
            var existingError = document.querySelector('#' + id + ' + .error-message');
            if (existingError) {
                existingError.parentNode.removeChild(existingError);
            }
            errorDiv = document.createElement('div');
            errorDiv.textContent = mensagem;
            errorDiv.classList.add('error-message');
            document.getElementById(id).parentNode.appendChild(errorDiv);
        }

        function removerMensagemErro(id) {
            var existingError = document.querySelector('#' + id + ' + .error-message');
            if (existingError) {
                existingError.parentNode.removeChild(existingError);
            }
        }

        function validarCampo(id) {
            let campo = document.getElementById(id);
            if (!campo) return true; // Se o campo não existir, consideramos como válido
            let valor = campo.value.trim();
            let camposValidos = true;

            if (!valor || valor === "Todos" || valor === "Selecione") {
                camposValidos = false;
                campo.classList.add('is-invalid');
                exibirMensagemErro('Por favor, preencha este campo.', id);
            } else {
                campo.classList.remove('is-invalid');
                removerMensagemErro(id);
            }

            return camposValidos;
        }

        function validarFormulario() {
            let cdfuncionario = validarCampo("cdfuncionario");
            let funcionario = validarCampo("funcionario");
            let data = validarCampo("data");

            // Inicializar ano e mes como true, pois eles podem ser opcionais
            let ano = true;
            let mes = true;

            // Verificar se ano e mes existem antes de validá-los
            if (document.getElementById('ano')) {
                ano = validarCampo("ano");
            }
            if (document.getElementById('mes')) {
                mes = validarCampo("mes");
            }

            // Declarar meta e adicao como true, pois eles podem ser opcionais
            let meta = true;
            let adicao = true;

            // Verificar se meta e adicao existem antes de validá-los
            if (document.getElementById('meta')) {
                meta = validarCampo("meta");
            }
            if (document.getElementById('adicao')) {
                adicao = validarCampo("adicao");
            }

            // Verifica se todos os campos obrigatórios são válidos
            let camposValidos = cdfuncionario && funcionario && data && meta && adicao && ano && mes;

            return camposValidos;
        }
    </script>

    <script>
        function goBack() {
            window.history.back();
        }
    </script>
    <style>
        .is-invalid {
            border: 1px solid red;
        }

        .error-message {
            color: red;
            font-size: 1em;
        }
    </style>
</body>

</html>