<?php
// paneladm.jatpluss.com/admin/admin_guardar.php
session_start();
require_once __DIR__ . '/conexion.php';

/* -------- 1) Sanitizar y validar -------- */
$email      = strtolower(trim($_POST['email']      ?? ''));
$password   = trim($_POST['password']   ?? '');     // ← guardaremos tal cual
$plataforma = trim($_POST['plataforma'] ?? '');

if ($email === '' || $password === '' || $plataforma === '') {
    flash('Todos los campos son obligatorios.', true);  // error
}

if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    flash('Correo inválido.', true);
}

/* (opcional) validar plataforma existente */
$stmt = $pdo->prepare("SELECT 1 FROM email_subjects WHERE platform = ? AND active = 1 LIMIT 1");
$stmt->execute([$plataforma]);
if (!$stmt->fetchColumn()) {
    flash('Plataforma desconocida.', true);
}

/* -------- 2) UPSERT atómico plano -------- */
try {
    $pdo->prepare("
        INSERT INTO usuarios_correos (email, password, plataforma)
        VALUES (:email, :password, :plataforma)
        ON DUPLICATE KEY UPDATE password = VALUES(password)
    ")->execute([
        ':email'      => $email,
        ':password'   => $password,   // sin cifrar
        ':plataforma' => $plataforma
    ]);

    flash("Código guardado para $email ($plataforma).");
} catch (PDOException $e) {
    flash('Error BD: ' . $e->getMessage(), true);
}

/* -------- helper de redirección y mensajes -------- */
function flash($msg, $esError = false) {
    $_SESSION[$esError ? 'error_message' : 'exito_message'] = $msg;
    // Recordar campos si hubo error
    if ($esError) {
        $_SESSION['old_email']      = $_POST['email']      ?? '';
        $_SESSION['old_password']   = $_POST['password']   ?? '';
        $_SESSION['old_plataforma'] = $_POST['plataforma'] ?? '';
    }
    header('Location: admin_list_correo.php');
    exit;
}
