Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save dantetesta/5b357439518c467b12eb6ff9e2badabb to your computer and use it in GitHub Desktop.
Save dantetesta/5b357439518c467b12eb6ff9e2badabb to your computer and use it in GitHub Desktop.
Verifique se o dado da coluna de um CCT já existe e não deixa cadastrar novos registros via jetformbuilder
<?php
add_filter( 'jet-form-builder/custom-filter/validar', 'validar_cpf_filter', 10, 3 );
function validar_cpf_filter( $result, $request, $action_handler ) {
global $wpdb;
// Variáveis configuráveis
$nome_coluna = 'doc'; // Nome da coluna a ser consultada
$nome_tabela = 'jet_cct_teste'; // Nome da tabela
$mensagem_erro = 'O usuário já existe.'; // Mensagem de erro personalizável
// Construindo o nome da tabela com prefixo
$tabela_compradores = $wpdb->prefix . $nome_tabela;
// Sanitizando o valor recebido
$valor_coluna = sanitize_text_field( $request[$nome_coluna] );
// Preparando e executando a consulta
$consulta_existente = $wpdb->get_var( $wpdb->prepare(
"SELECT COUNT(*) FROM $tabela_compradores WHERE $nome_coluna = %s", $valor_coluna
) );
$response = array();
if ( $consulta_existente > 0 ) {
// Configurar a resposta JSON em caso de valor existente
$response = array(
'status' => 'failed',
'message' => "<div class='jet-form-builder-message jet-form-builder-message--error'>$mensagem_erro</div>",
);
// Enviar a resposta JSON de volta para o formulário via AJAX
wp_send_json( $response );
}
return $result; // Retorna $result se a validação for bem-sucedida
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment