11) { return false; } // Pega o DDD e o número principal $ddd = substr($onlyNumbers, 0, 2); $mainNumber = substr($onlyNumbers, 2); // Formata de acordo com o tamanho do número principal if (strlen($mainNumber) == 8) { $formattedPhone = "($ddd) " . preg_replace("/(\d{4})(\d{4})/", "$1-$2", $mainNumber); } else { $formattedPhone = "($ddd) " . preg_replace("/(\d{5})(\d{4})/", "$1-$2", $mainNumber); } return ['ddd' => $ddd, 'phone' => $formattedPhone, 'mainNumber' => $mainNumber]; } function custom_register_form_shortcode() { ob_start(); $utm_source = isset($_GET['utm_source']) ? sanitize_text_field($_GET['utm_source']) : ''; $utm_medium = isset($_GET['utm_medium']) ? sanitize_text_field($_GET['utm_medium']) : ''; $utm_campaign = isset($_GET['utm_campaign']) ? sanitize_text_field($_GET['utm_campaign']) : ''; // Seu código de formulário aqui ?>
Preencha o formulário e faça parte da nossa comunidade de investidores!
'Dados não recebidos.']); return; } $teste = ""; console . log("UTM Source:", $teste); parse_str($_POST['formData'], $formData); // Verifique se o usuário concordou com os termos de uso // if (!isset($formData['agree-terms'])) { // wp_send_json_error(['error_message' => 'Você precisa concordar com os termos de uso para criar uma conta.']); // return; //} if (!isset($formData['password']) || !isset($formData['passwordConfirm'])) { wp_send_json_error(['error_message' => 'Dados de senha ausentes.']); return; } $password = $formData['password']; $passwordConfirm = $formData['passwordConfirm']; $name = $formData['name']; if ($password !== $passwordConfirm) { wp_send_json_error(['error_message' => 'As senhas não coincidem.']); return; } if (!isValidPassword($password)) { wp_send_json_error([ 'error_message' => 'A senha não atende aos requisitos. Pelo menos 1 letra. Pelo menos 1 vogal. Pelo menos um símbolo. Deve possuir 8 ou mais caracteres' ]); } $email = $formData['email']; $phone = $formData['cel']; if (!is_valid_email($email)) { wp_send_json_error(['error_message' => 'Formato de e-mail inválido..']); return; } $phoneComponents = extractPhoneComponents($phone); if (!$phoneComponents) { wp_send_json_error(['error_message' => 'Formato de telefone inválido.']); return; } // Se o checkbox foi marcado, o valor é true (ou "true" como string), caso contrário é false. $termsOfUseAccepted = "true"; // Dados para a chamada da API $email = strtolower($formData['email']); $api_endpoint = "https://ibox6-wordpress.ue.r.appspot.com/api/auth/register/"; //$api_endpoint = "https://django.iainvest.com.br/api/auth/register/"; $api_data = [ "Name" => $name, "username" => $email, // username é o mesmo que o email "email" => $email, "password" => $password, "ddd" => $phoneComponents['ddd'], "telefone" => $phoneComponents['mainNumber'], "utm_medium" => $utm_medium, "utm_campaign" => $utm_campaign, "utm_source" => $utm_source, "step" => '3', "termsofuse" => $termsOfUseAccepted ]; // Fazendo a chamada da API $response = wp_remote_post($api_endpoint, [ 'body' => json_encode($api_data), 'headers' => [ 'Content-Type' => 'application/json' ] ]); // Lidando com a resposta $body = wp_remote_retrieve_body($response); $data = json_decode($body); if (isset($data->token) && !empty(trim($data->token))) { // Se temos um token (e ele não está vazio), redirecionamos para app.ibox6.com.br wp_send_json_success(['redirect_url' => "https://ibox6.com.br/obrigado/?existing_code={$data->token}&utm_source={$utm_source}&utm_medium={$utm_medium}&utm_campaign={$utm_campaign}"]); //wp_send_json_success(['redirect_url' => "https://app.iainvest.com.br/login?existing_code={$data->token}&utm_source={$utm_source}&utm_medium={$utm_medium}&utm_campaign={$utm_campaign}"]); } elseif (isset($data->message)) { // Se temos uma mensagem de erro vinda da API, retornamos ela wp_send_json_error(['error_message' => $data->message]); } else { // Se algo deu errado com a chamada da API ou o formato da resposta foi inesperado wp_send_json_error(['error_message' => 'Erro desconhecido ao processar o registro.']); } // Continuar com sua lógica de validação e chamada da API aqui... // ... // if(isset($data->refresh) && $data->refresh) { // wp_send_json_success(['redirect_url' => "https://app.ibox6.com.br/?existing_token={$data->refresh}"]); // } else { // wp_send_json_error(['error_message' => 'Erro ao processar a solicitação da api.']); // } } add_action('wp_ajax_handle_custom_registration', 'handle_registration'); add_action('wp_ajax_nopriv_handle_custom_registration', 'handle_registration'); function enqueue_custom_register_scripts() { wp_enqueue_script('jquery'); wp_enqueue_script('jquery-mask', 'https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.16/jquery.mask.min.js', array('jquery'), '1.14.16', true); wp_enqueue_script('custom-register-ajax', plugin_dir_url(__FILE__) . 'custom-register-ajax1_03.js', array('jquery'), null, true); wp_localize_script('custom-register-ajax', 'customRegister', array('ajax_url' => admin_url('admin-ajax.php'))); // Enfileirando estilos // wp_enqueue_style('custom-register-style', plugin_dir_url( __FILE__ ) . 'custom-register-style.css'); } add_action('wp_enqueue_scripts', 'enqueue_custom_register_scripts'); function enqueue_mask_scripts() { wp_enqueue_script('mask-script', plugin_dir_url(__FILE__) . 'mask.js', array('jquery'), '1.0.0', true); } add_action('wp_enqueue_scripts', 'enqueue_mask_scripts'); ?>