<?php
require '../conexao/conexao.php';
//require '../sessao.php';
require '../configuacoes.php';
require '../conexao/acesso.php';

$pageTitle = "Alterar Lançamento Terceiro";


//Declarado as variáveis que serão usadas para edição.
$terceiro = array(
    'id_pedido_terceiro' => '0',
    'id_funcionario' => '',
    'nome' => '',
    'terceiro' => '',
    'valor' => '',
    'data_lancamento' => '',
    'cod_filial' => '',
    // ... outros campos que você pode ter ...
);

//Verificando se é alteração
$ano = $_GET['ano'] ?? null;
$mes = $_GET['mes'] ?? null;
$filial = $_GET['filial'] ?? null;
$cidade = $_GET['cidade'] ?? null;



$id_pedido_terceiro = $_GET['id_pedido_terceiro'];

// Preparando a declaração
$stmt = $connectionmysql->prepare("SELECT t.id_pedido_terceiro,f.id_funcionario ,f.nome,t.terceiro,t.valor,t.data_lancamento,t.cod_filial 
FROM pedido_terceiro AS t
INNER JOIN funcionarios AS f ON t.ID_FUNCIONARIO = f.id_funcionario
WHERE t.id_pedido_terceiro  = ? ");

if ($stmt) {
    // Vinculando parâmetros e executando a declaração
    $stmt->bind_param("i", $id_pedido_terceiro); // 'i' indica que é um inteiro
    $stmt->execute();

    // Obtendo os resultados
    $result = $stmt->get_result();
    if ($result->num_rows > 0) {
        $terceiro = $result->fetch_assoc(); //preenchendo as variáveis com o retorno da query

    } else {
        echo "Nenhum domínio encontrado com o ID especificado.";
    }

    $stmt->close();
} else {
    echo "Erro ao preparar a declaração: " . $connectionmysql->error;
}
if (isset($terceiro['data_lancamento'])) {
    // Cria uma instância de DateTime a partir da string recebida do banco
    $data = new DateTime($terceiro['data_lancamento']);

    // Exibe no formato desejado, aqui por exemplo, mantendo o formato 'YYYY-MM-DD'
    $data_registro = $data->format('Y-m-d');
} else {
    $data_registro = null;
}


?>

<!DOCTYPE html>
<html lang="pt-br">
<?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">
                        <button onclick="goBack()" class="btn btn-light"><i class="mdi mdi-keyboard-backspace"></i> Voltar</button>
                    </div>

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

                    <div class="col-12">
                        <form method="post" action="processa_alteracao_terceiros.php" onsubmit="return validarFormulario();">
                            <div class="form-row mb-3">
                                <div class="form-group col-6 col-md-4 col-lg-2">
                                    <label for="vendedor" class="col-form-label"><?= $nome_para_vendedor ?></label>
                                    <p>
                                        <select name="vendedor" id="vendedor" class="form-control" oninput="validarCampo('vendedor',this.value)">
                                            <option value="" disabled selected>Selecione</option>
                                            <?php
                                            // Realiza a consulta SQL
                                            $sql = "SELECT fun.id_funcionario, fun.nome FROM funcionarios fun";
                                            $result = mysqli_query($connectionmysql, $sql);

                                            // Verifica se a consulta retornou resultados
                                            if ($result && mysqli_num_rows($result) > 0) {
                                                // Loop pelos resultados da consulta
                                                while ($row = mysqli_fetch_assoc($result)) {
                                                    // Exibe as opções no menu suspenso
                                                    echo "<option value=\"" . htmlspecialchars($row['id_funcionario']) . "\"";
                                                    // Verifica se $terceiros está definido e se a chave 'id_funcionario' existe
                                                    if (isset($terceiro['id_funcionario']) && $terceiro['id_funcionario'] == $row['id_funcionario']) {
                                                        echo " selected";
                                                    }
                                                    echo ">" . htmlspecialchars($row['nome']) . "</option>";
                                                }
                                            }

                                            ?>
                                        </select>
                                    </p>
                                </div>


                                <div class="form-group col-6 col-md-4 col-lg-2">
                                    <label for="terceiro" class="col-form-label">Terceiro</label>
                                    <p><input type="text" name="terceiro" id="terceiro" class="form-control" placeholder="Informe o nome" value="<?php echo htmlspecialchars($terceiro['terceiro']); ?>" oninput="validarCampo('terceiro',this.value)"></p>
                                </div>



                                <div class="form-group col-6 col-md-4 col-lg-2">
                                    <label for="valor" class="col-form-label">Valor</label>
                                    <input type="text" name="valor" id="valor" class="form-control money" placeholder="Informe o nome" value="<?php echo number_format($terceiro['valor'], 2, ',', '.'); ?>" oninput="validarCampo('valor',this.value)">
                                </div>



                                <div class="form-group col-6 col-md-4 col-lg-2">
                                    <label for="data_lancamento" class="col-form-label">Data Lançamento</label>
                                    <p><input type="date" name="data_lancamento" id="data_lancamento" class="form-control" placeholder="Data de Venda" value="<?php echo htmlspecialchars($data_registro); ?>" oninput="validarCampo('data_lancamento',this.value)"></p>
                                </div>

                                <div class="form-group col-6 col-md-4 col-lg-2">
                                    <label for="cod_filial" class="col-form-label">Filial</label>
                                    <p> <input type="number" name="cod_filial" id="cod_filial" class="form-control" placeholder="Informe o nome" value="<?php echo htmlspecialchars($terceiro['cod_filial']); ?>" oninput="validarCampo('cod_filial',this.value)"></p>
                                </div>



                                <input type="hidden" name="id_pedido_terceiro" id="id_pedido_terceiro" value="<?php echo htmlspecialchars($terceiro['id_pedido_terceiro']); ?>">
                                <input type="hidden" name="ano" id="ano" value="<?php echo htmlspecialchars($ano); ?>">
                                <input type="hidden" name="mes" id="mes" value="<?php echo htmlspecialchars($mes); ?>">
                                <input type="hidden" name="filial" id="filial" value="<?php echo htmlspecialchars($filial); ?>">
                                <input type="hidden" name="cidade" id="cidade" value="<?php echo htmlspecialchars($cidade); ?>">

                                <div class="col-6 col-md-4 col-lg-2 mt-4 text-right">

                                    <button type="submit" class="btn btn-primary"><i class="mdi mdi-magnify"></i> Salvar</button>
                                </div>
                        </form>
                    </div>
                </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 goBack() {
            window.history.back();
        }
    </script>

    <!-- Adicione estas linhas para incluir as bibliotecas do jQuery e jQuery UI -->
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jquery-mask-plugin@1.14.15/dist/jquery.mask.min.js"></script>


    <script>
        $('.money').mask('#.##0,00', {
            reverse: true,
            translation: {
                '#': {
                    pattern: /-|\d/,
                    recursive: true
                }
            }
        });

        // $(function() {
        //     // Configura o Datepicker
        //     $("#data_lancamento").datepicker({
        //         dateFormat: 'yy-mm-dd', // Formato da data
        //         showAnim: "slideDown", // Efeito de animação ao mostrar o calendário
        //         onSelect: function(dateText, inst) {
        //             // Ao selecionar uma data, atualiza o valor do campo de texto
        //             $(this).val(dateText);
        //         }
        //     });

        //     // Adiciona um evento de clique no campo de texto para abrir o calendário
        //     $("#data_lancamento").on('click', function() {
        //         $(this).datepicker('show');
        //     });
        // });

        function exibirMensagemErro(mensagem, id) {
            let errorDiv;
            var existingError = document.querySelector('#' + id + ' + .error-message');
            if (existingError) {
                existingError.parentNode.removeChild(existingError);
            }
            // Cria uma nova div de erro e a adiciona à div alvo
            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);
            let valor = campo.value.trim();
            let camposValidos = true;

            if (!valor) {
                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 vendedor = validarCampo("vendedor");
            let terceiro = validarCampo("terceiro");
            let data_lancamento = validarCampo("data_lancamento");
            let cod_filial = validarCampo("cod_filial");
            let valor = validarCampo("valor");


            camposValidos = vendedor && data_lancamento && terceiro && cod_filial && valor;

            return camposValidos;
        }
    </script>
</body>

</html>
<style>
    .is-invalid {
        border: 1px solid red;
    }

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