Phpost

Versión completa: Detectar Cuentas Duplicadas v1.0
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Detectar Cuentas Duplicadas v1.0
Nuevo módulo para Risus Nova 2.0 — PHPost

Capturas
[img]Registrate o inicia tu sesión para ver este contenido[/img]
 
[img]Registrate o inicia tu sesión para ver este contenido[/img]
 
[img]Registrate o inicia tu sesión para ver este contenido[/img]
 
[img]Registrate o inicia tu sesión para ver este contenido[/img]


Detecta automáticamente cuando alguien se registra desde una IP ya usada por otra cuenta y notifica al admin. Panel en el admin para ver todas las IPs con múltiples cuentas.


🕵️ Características
 
  • Notificación automática al admin cuando se detecta IP duplicada
  • Panel en /admin/duplicados con lista de IPs sospechosas
  • Muestra todas las cuentas de cada IP con estado, posts y puntos
  • Enlace directo a GeoIP para ver la ubicación de la IP
  • Enlace para editar cada usuario directamente
 


📋 Requisitos
 
  • Risus Nova 2.0 instalado y funcionando
  • PHP 8.0+
  • MySQL 5.7+
 


🛠️ Instalación

Paso 1 — Ejecutar el instalador

Sube la carpeta install/ a la raíz y accede a:

 
Código:
Registrate o inicia tu sesión para ver este contenido

⚠️ Elimina la carpeta install/ cuando termine.


Paso 2 — Subir los archivos
 
Código:
inc/class/c.duplicados.php
  →  inc/class/
themes/default/templates/admin_mods/m.admin_duplicados.tpl
  →  themes/default/templates/admin_mods/

Paso 3 — En c.registro.php

Buscar:
 
Código:
$tsData['user_id'] = db_exec('insert_id');

Debajo agregar:
 
Código:
// ── Detectar cuentas duplicadas ──
require_once TS_CLASS . 'c.duplicados.php';
$tsIpReg = !empty($_SERVER['HTTP_X_FORWARDED_FOR'])
    ? trim(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR'])[0])
    : ($_SERVER['REMOTE_ADDR'] ?? '0.0.0.0');
(new tsDuplicados())->comprobarRegistro($tsData['user_id'], $tsIpReg);
// ─────────────────────────────────

Paso 4 — En admin.php

Buscar:
 
Código:
} elseif($action == 'feed'){


Arriba agregar:
 
Código:
} elseif($action == 'duplicados'){
    require_once TS_CLASS . 'c.duplicados.php';
    $tsD = new tsDuplicados();
    $pagina = max(1, (int)($_GET['page'] ?? 1));
    $smarty->assign('tsDuplicados', $tsD->getDuplicados($pagina));

Paso 5 — Añadir en t.admin.tpl

Buscar:
 
Código:
{elseif $tsAction == 'rangos'}
                                {include file='admin_mods/m.admin_rangos.tpl'}

Cambiar por:
 
Código:
{elseif $tsAction == 'rangos'}
                                {include file='admin_mods/m.admin_rangos.tpl'}
                                {elseif $tsAction == 'duplicados'}
                                {include file='admin_mods/m.admin_duplicados.tpl'}

Paso 6 — En m.admin_sidemenu.tpl poner esto donde quieran:
 
Código:
<li><a href="{$tsConfig.url}/admin/duplicados"><i class="fa-solid fa-user-secret"></i> Cuentas duplicadas</a></li>


Paso 7 — Borrar la caché

Borra el contenido de la carpeta /cache/ del sitio.



🗑️ Desinstalar
 
Código:
ALTER TABLE u_miembros DROP COLUMN user_reg_ip;

Elimina los archivos y quita los hooks añadidos.

 
Descarga

Mediafire
http://Registrate o inicia tu sesión par... contenido

Google Drive
http://Registrate o inicia tu sesión par... contenido



¿Tienes dudas o encuentras algún problema? Déjalo en los comentarios.