Les traigo una modificación para bloquear la creación de nuevos topics y respuestas según el código del país. Por ejemplo "United States" "US".
Para ello, hacen lo siguiente:
Ve al archivo newthread.php y busca:
Antes de eso agrega:
Luego busca:
Reemplaza toda esa línea por:
Con eso no puede crear temas según el país, le saldrá el típico error de problema de permisos, así que no le das pistas de la IP.
Ahora para que no puedan responder te vas al archivo newreply.php y buscas:
y antes de eso agregas:
Ahora buscas:
Aparecerá dos veces, en los dos casos lo cambias por:
Con eso debería de funcionar.
Por cierto, donde dice:
Cada PX se debe de cambiar por el código del país que desean bloquear.
Lo que me gusta de esta mod es que no le das la pista al spammer de que cambie la IP, que haces que aparezca el típico error de "No tienes permisos para postear en estos foros"
Fuente: Bloquear el posteo de usuarios según código de países
Este obra está bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 3.0 Unported.
Para ello, hacen lo siguiente:
Ve al archivo newthread.php y busca:
Código PHP:
if($mybb->input['action'] == "editdraft" || ($mybb->input['savedraft'] && $mybb->input['tid']) || ($mybb->input['tid'] && $mybb->input['pid']))
Antes de eso agrega:
Código PHP:
$geoPlugin_array = unserialize( file_get_contents('http://www.geoplugin.net/php.gp?ip=' . $_SERVER['REMOTE_ADDR']) );
$paises = array('P1', 'P2', 'P3', 'P4');
Luego busca:
Código PHP:
if($forumpermissions['canview'] == 0 || $forumpermissions['canpostthreads'] == 0 || $mybb->user['suspendposting'] == 1)
Reemplaza toda esa línea por:
Código PHP:
if($forumpermissions['canview'] == 0 || $forumpermissions['canpostthreads'] == 0 || $mybb->user['suspendposting'] == 1||in_array($geoPlugin_array[geoplugin_countryCode], $paises))
Con eso no puede crear temas según el país, le saldrá el típico error de problema de permisos, así que no le das pistas de la IP.
Ahora para que no puedan responder te vas al archivo newreply.php y buscas:
Código PHP:
if(isset($mybb->input['replyto']))
Código PHP:
$geoPlugin_array = unserialize( file_get_contents('http://www.geoplugin.net/php.gp?ip=' . $_SERVER['REMOTE_ADDR']) );
$paises = array('P1', 'P2', 'P3', 'P4');
Ahora buscas:
Código PHP:
if($forumpermissions['canview'] == 0 || $forumpermissions['canpostreplys'] == 0 || $mybb->user['suspendposting'] == 1)
Aparecerá dos veces, en los dos casos lo cambias por:
Código PHP:
if($forumpermissions['canview'] == 0 || $forumpermissions['canpostreplys'] == 0 || $mybb->user['suspendposting'] == 1||in_array($geoPlugin_array[geoplugin_countryCode], $paises))
Con eso debería de funcionar.
Por cierto, donde dice:
Código PHP:
$paises = array('P1', 'P2', 'P3', 'P4');
Cada PX se debe de cambiar por el código del país que desean bloquear.
Lo que me gusta de esta mod es que no le das la pista al spammer de que cambie la IP, que haces que aparezca el típico error de "No tienes permisos para postear en estos foros"
Fuente: Bloquear el posteo de usuarios según código de países
Este obra está bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 3.0 Unported.
Equipo de Desarrollo de Skylium Network