web-next: /transfer-character (transferir personaje por SumUp con todas las condiciones)
- Nueva ruta /transfer-character (10€ SumUp); borra /transfer (Stripe) y actualiza
el link del panel.
- lib/transfer-character.ts: precheck con todas las condiciones — personaje offline,
contraseña, token de seguridad, 2FA activo, cuenta destino válida (≠ propia) y,
para Caballeros de la Muerte, la cuenta destino debe tener un personaje nivel >=55
y no tener ya un DK; + bloqueo de 5s tras transferencia reciente.
- El hook precheck de PaidServiceConfig ahora recibe {accountId,email,character,body}.
- TransferForm: contraseña + token (con ojos), provider sumup, confirm.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -27,9 +27,9 @@ export async function POST(request: Request, { params }: { params: Promise<{ ser
|
||||
return Response.json({ success: false, error: 'invalidCharacter' })
|
||||
}
|
||||
|
||||
// Comprobación previa al pago (condiciones del servicio, p.ej. cambio de facción).
|
||||
// Comprobación previa al pago (condiciones del servicio, p.ej. cambio de facción / transferencia).
|
||||
if (cfg.precheck) {
|
||||
const pc = await cfg.precheck(session.accountId, character)
|
||||
const pc = await cfg.precheck({ accountId: session.accountId, email: session.bnetEmail || '', character, body })
|
||||
if (!pc.ok) return Response.json({ success: false, error: 'ineligible', message: pc.message })
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user