jQuery(function($) {
console.log("WPG: Script de puntos cargado correctamente");
var wpg_points = 0;
var wpg_discount = 0;
// Verificar si existe el enlace
console.log("WPG: Enlaces encontrados:", $(".wpg-showpoints").length);
console.log("WPG: Formulario encontrado:", $("#wpg-points-form").length);
// Toggle para mostrar/ocultar formulario de puntos con validación
$(document).on("click", ".wpg-showpoints", function(e) {
console.log("WPG: Click detectado en enlace de puntos");
e.preventDefault();
e.stopPropagation();
// Obtener valores de los campos
var documento = ($("#billing_document").val() || $("#billing_cedula").val() || "").trim();
var telefono = ($("#billing_phone").val() || "").trim();
var tarjeton = ($("#wpg_tarjeton").val() || "").trim();
console.log("WPG: Documento:", documento);
console.log("WPG: Teléfono:", telefono);
console.log("WPG: Tarjetón:", tarjeton);
// Validar que al menos UN campo esté lleno
if (!documento && !telefono && !tarjeton) {
console.log("WPG: Error - Todos los campos están vacíos");
alert("Debe llenar al menos uno de los siguientes datos para poder consultar tus puntos: Documento, Teléfono o Tarjetón");
return false;
}
console.log("WPG: Validación pasada, iniciando consulta...");
// Proceder directamente a calcular puntos
var $widget = $(".wpg-points-widget");
var $result = $(".wpg-points-result");
var $form = $("#wpg-points-form");
console.log("WPG: Formulario visible:", $form.is(":visible"));
// Si el formulario no está visible, mostrarlo primero
if (!$form.is(":visible")) {
console.log("WPG: Mostrando formulario...");
$form.slideDown(300);
$(this).attr("aria-expanded", "true");
}
// Iniciar cálculo automáticamente
$widget.addClass("wpg-loading");
$result.removeClass("show wpg-error").html("");
console.log("WPG: Enviando petición AJAX...");
console.log("WPG: URL AJAX:", wpg_ajax_data.ajax_url);
$.ajax({
url: wpg_ajax_data.ajax_url,
type: "POST",
data: {
action: "wpg_calculate_points",
documento: documento,
telefono: telefono,
tarjeton: tarjeton
},
success: function(response) {
console.log("WPG: Respuesta recibida:", response);
$widget.removeClass("wpg-loading");
if (response.success && response.data.points > 0) {
console.log("WPG: Puntos encontrados:", response.data.points);
wpg_points = response.data.points;
wpg_discount = response.data.discount;
var html = "
Puntos disponibles: " + response.data.points_formatted + "
";
html += "";
$result.removeClass("wpg-error").html(html).addClass("show");
} else if (response.success && response.data.points === 0) {
console.log("WPG: Sin puntos disponibles");
$result.removeClass("wpg-error").html("
Puntos disponibles: 0
No se encontraron puntos para los datos ingresados.
").addClass("show");
} else {
console.log("WPG: Error en respuesta:", response);
$result.addClass("wpg-error").html("
" + (response.data.message || "No se encontraron puntos disponibles") + "
There are no reviews yet.