'; $autenticado = ( isset($_COOKIE['token']) && !empty($_COOKIE['token']) ); if ( ! $autenticado ) { $template_path = plugin_dir_path(__FILE__) . 'templates/XXlogin2.html'; echo '
'; } else { $template_path = plugin_dir_path(__FILE__) . 'templates/XX2.html'; echo '
'; } if ( file_exists($template_path) ) { include $template_path; } else { echo '

Error: No se encontró la plantilla en la carpeta templates.

'; } echo '
'; } add_action('admin_menu', 'afroiabo_add_admin_menu'); function afroiabo_add_admin_menu() { add_menu_page( 'Herramientas Afrodita', 'AfroditaBot', 'manage_options', 'afroiabo_kam_assistant_config', 'afroiabo_config_page', 'dashicons-format-chat', 66 ); } add_action('admin_enqueue_scripts', 'afroiabo_admin_inline_script'); function afroiabo_admin_inline_script($hook) { if ($hook !== 'toplevel_page_afroiabo_kam_assistant_config') return; // Registrar y encolar script vacío wp_register_script('afroiabo-inline', '', [], true, true); wp_enqueue_script('afroiabo-inline'); // Obtener datos del usuario actual $current_user = wp_get_current_user(); $admin_email = get_option('admin_email'); // Localizar variables globales JS wp_localize_script('afroiabo-inline', 'appConfig', [ 'ajaxurl' => admin_url('admin-ajax.php'), 'currentUsername' => $current_user->user_login, 'currentEmail' => $current_user->user_email, 'adminEmail' => $admin_email ]); // Script en línea que guarda email del admin en localStorage $inline_script = 'localStorage.setItem("adminEmail2", "' . esc_js($admin_email) . '");'; wp_add_inline_script('afroiabo-inline', $inline_script); } function afroiabo_enqueue_assets() { wp_enqueue_style( 'afroiabo-style', plugin_dir_url(__FILE__) . 'assets/css/chat-widget2.css', [], '2.3' ); wp_enqueue_script( 'afroiabo-script', plugin_dir_url(__FILE__) . 'assets/js/chat-widget2.js', [], '2.3', true ); $config_data = array( 'SYSTEM_ID' => get_bloginfo('admin_email'), 'CONFIG_URL' => 'https://vmi2585475.contaboserver.net/api/get-config2', 'SSE_ENDPOINT'=> 'https://vmi2585475.contaboserver.net/nuevoEndpointKamelot12WP', 'MAX_HISTORY' => 50, 'ajaxurl' => admin_url('admin-ajax.php'), ); wp_localize_script('afroiabo-script', 'afroiaboChatWidgetConfig', $config_data); } add_action('wp_enqueue_scripts', 'afroiabo_enqueue_assets'); add_action('admin_enqueue_scripts', 'afrodiabo_enqueue_tailwind'); function afrodiabo_enqueue_tailwind() { wp_enqueue_style( 'afrodiabo-tailwind', plugins_url('assets/css/tailwind.css', __FILE__), array(), '2.3' // Versión según tu build ); } add_action('wp_ajax_guardar_usuario_json', 'guardar_usuario_json'); function guardar_usuario_json() { $nuevo = [ 'username' => sanitize_text_field($_POST['username']), 'email' => sanitize_email($_POST['email']), 'primary_color' => sanitize_text_field($_POST['primary_color']), 'button_text' => sanitize_text_field($_POST['button_text']), 'button_size' => sanitize_text_field($_POST['button_size']), 'button_variant' => sanitize_text_field($_POST['button_variant']), 'button_border_radius' => sanitize_text_field($_POST['button_border_radius']), 'button_shadow' => isset($_POST['button_shadow']), 'button_disabled' => isset($_POST['button_disabled']), ]; $ruta = get_template_directory() . '/assets/usuarios.json'; if (!file_exists($ruta)) { echo json_encode(['success' => false, 'message' => 'No se encontró el archivo JSON']); wp_die(); } $usuarios = json_decode(file_get_contents($ruta), true); $usuarios[] = $nuevo; $guardado = file_put_contents($ruta, json_encode($usuarios, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE)); echo json_encode([ 'success' => $guardado !== false, 'message' => $guardado !== false ? 'Usuario guardado correctamente' : 'Error al guardar' ]); wp_die(); } add_action('wp_ajax_obtener_config_usuario', 'obtener_config_usuario'); function obtener_config_usuario() { $ruta = get_template_directory() . '/assets//usuarios.json'; $current_user = wp_get_current_user(); $config = null; if (file_exists($ruta)) { $usuarios = json_decode(file_get_contents($ruta), true); foreach ($usuarios as $usuario) { if ($usuario['username'] === $current_user->user_login) { $config = $usuario; break; } } } echo json_encode([ 'success' => $config !== null, 'config' => $config ]); wp_die(); } function afroiabo_add_widget_html() { echo '

AfroditaBot

'; } add_action('wp_footer', 'afroiabo_add_widget_html');