prepare("SELECT password FROM users WHERE id = ?"); $stmt->execute([$user_id]); $user = $stmt->fetch(); if ($user && password_verify($current_password, $user['password'])) { $hashedPassword = password_hash($new_password, PASSWORD_DEFAULT); $updateStmt = $pdo->prepare("UPDATE users SET password = ? WHERE id = ?"); $updateStmt->execute([$hashedPassword, $user_id]); log_activity($user_id, 'Password Changed', 'User ' . $_SESSION['username'] . ' changed their own password.'); $success = "Tu contraseña ha sido actualizada con éxito."; } else { $error = "La contraseña actual es incorrecta."; } } catch (PDOException $e) { $error = "Error al actualizar la contraseña."; error_log($e->getMessage()); } } } // Action: Link Telegram Account if (isset($_POST['link_telegram'])) { $telegram_chat_id = trim($_POST['telegram_chat_id']); if (empty($telegram_chat_id)) { // Si el campo está vacío, desvincular la cuenta $stmt = $pdo->prepare("UPDATE users SET telegram_chat_id = NULL WHERE id = ?"); $stmt->execute([$user_id]); log_activity($user_id, 'Telegram Unlinked', 'User ' . $_SESSION['username'] . ' unlinked their Telegram account.'); $success = "Cuenta de Telegram desvinculada con éxito."; } elseif (!is_numeric($telegram_chat_id)) { $error = "El ID de Chat de Telegram debe ser un número."; } else { try { $stmt = $pdo->prepare("UPDATE users SET telegram_chat_id = ? WHERE id = ?"); $stmt->execute([$telegram_chat_id, $user_id]); log_activity($user_id, 'Telegram Linked', 'User ' . $_SESSION['username'] . ' linked Telegram chat ID: ' . $telegram_chat_id); $success = "ID de Chat de Telegram guardado con éxito."; } catch (PDOException $e) { $error = "Error al guardar el ID de Chat de Telegram."; error_log($e->getMessage()); } } } } // Fetch current user data $stmt = $pdo->prepare("SELECT telegram_chat_id FROM users WHERE id = ?"); $stmt->execute([$user_id]); $currentUser = $stmt->fetch(PDO::FETCH_ASSOC); require_once __DIR__ . '/templates/header.php'; ?>
Vincula tu cuenta para poder enviar comandos al bot desde tu chat privado de Telegram.