¡Bienvenido! ¿Aún no estás registrado?, deberás registrarte antes de poder usar el Chat, Comentar y Descargar en el Foro. Usa un email válido para la activación.
Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

COMPLEMENTOS Baneos por acumulación de denuncias (Act 1.3)
#1

0
Cuando llegue a 100 puntos de acumulación de denuncias será baneado automáticamente.
  • Staff Mensaje = 5 Puntos
  • Prohibición = 10 Puntos
  • Gif Mensaje = 15 Puntos


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




Ejecutar esta consulta
ALTER TABLE `u_miembrosADD `user_avlINT11 NOT NULL 
 
 
En c.user.php --> inc --> class --> c.user.php

Buscar:
$this->actualizarPuntos(); 
 
 
Debajo agregar:
$this->getptsBan(); 
 
 
Buscar:
function actualizarPuntos()
    {
        
// HORA EN LA CUAL RECARGAR PUNTOS 0 = MEDIA NOCHE DEL SERVIDOR
        
$ultimaRecarga $this->info['user_nextpuntos'];
        
$tiempoActual time();
        
// SI YA SE PASO EL TIEMPO RECARGAMOS...
        
if($ultimaRecarga $tiempoActual){
            
// OPERACION SIG RECARGA A LAS 24 HRS
            
$horaActual date("G",$tiempoActual);
            
$minActuales date("i",$tiempoActual) * 60;
            
$segActuales date("s",$tiempoActual);
            
$sigRecarga 24 $horaActual;
            
$sigRecarga = ($sigRecarga 3600) - ($minActuales $segActuales);
            
$sigRecarga $tiempoActual $sigRecarga;
            
// LA SIGUIENTE RECARGA SE HARA A MEDIA NOCHE DEL SIGUIENTE DIA LA HORA DEPENDE DEL SERVIDOR
            //
            
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_puntosxdar = '.($tsCore->settings['c_keep_points'] == $this->permisos['gopfd'] : 'user_puntosxdar + '.$this->permisos['gopfd']).', user_nextpuntos = '.$sigRecarga.' WHERE user_id = \''.$this->uid.'\'');
            
// VAMONOS
            
return true;
        }
    } 
 
 
Debajo agregar:
function getptsBan() {
        global 
$tsCore;
        
//
        
$query db_exec(array(__FILE____LINE__), 'query''SELECT * FROM u_miembros WHERE user_id = \''.$this->uid.'\' LIMIT 1');
        
$data db_exec('fetch_assoc'$query);
        if(
$data['user_avl'] > 100 AND $data['user_baneado'] == OR $data['user_avl'] == 100) {
        
$b_time 2;
        
$b_cant 24;
        
$b_causa "El sistema te ha baneado por acomulación de denuncias";
        
$vmod 1;
        
$b_times = array(
            
0,
            
1,
            
3600,
            
86400);
                
$ahora time();
                
$termina = ($b_cant $b_times[$b_time]);
                
$termina = ($b_time >= 2) ? ($ahora $termina) : $termina;
                
db_exec(array(__FILE____LINE__), 'query''INSERT INTO `u_suspension` (`user_id`, `susp_causa`, `susp_date`, `susp_termina`, `susp_mod`, `susp_ip`) VALUES (\'' .
                    
$this->uid '\', \'' $b_causa '\', \'' . (int)
                    
$ahora '\',  \'' . (int)$termina '\', \'' $vmod '\', \'' .
                    
$tsCore->setSecure($_SERVER['REMOTE_ADDR']) . '\')');        
                    
db_exec(array(__FILE____LINE__), 'query''UPDATE `u_miembros` SET `user_baneado` = \'1\' WHERE `user_id` = \'' .
                    
$this->uid '\'');
                    
db_exec(array(__FILE____LINE__), 'query''UPDATE `u_miembros` SET `user_avl` = \'0\' WHERE `user_id` = \'' .
                    
$this->uid '\'');
                }
    } 
 
 
En c.monitor.php --> inc --> class --> c.monitor.php

Buscar:
function setAviso($user_id NULL$subject '(sin asunto)'$body NULL$type 0){
    global 
$tsCore;
        
# VERIFICAMOS QUE SE PUEDA ENVIAR EL AVISO
        
$query db_exec(array(__FILE____LINE__), 'query''SELECT user_baneado FROM u_miembros WHERE user_id = \''.(int)$user_id.'\' LIMIT 1');
        
$data db_exec('fetch_assoc'$query);
        
        
# NO PODEMOS ENVIAR A UN USUARIO BANEADO
        
if($data['user_baneado'] == 1) return true;
        
# INSERTAMOS EL AVISO
        
if(db_exec(array(__FILE____LINE__), 'query''INSERT INTO u_avisos (user_id, av_subject, av_body, av_date, av_type) VALUES (\''.(int)$user_id.'\', \''.$tsCore->setSecure($subject).'\', \''.$tsCore->setSecure($body).'\', \''.time().'\', \''.$type.'\' )')) return true;
        else return 
false;
    } 
 
 
Debajo agregar:
function puntosBans($user_id NULL$type 0) {
    if(
$type == 2) {
    if(
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_avl = user_avl + 5 WHERE user_id = \''.(int)$user_id.'\'')) return true;
    else return 
false;
    }
    if(
$type == 3) {
    if(
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_avl = user_avl + 10 WHERE user_id = \''.(int)$user_id.'\'')) return true;
    else return 
false;
    }
    if(
$type == 4) {
    if(
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_avl = user_avl + 15 WHERE user_id = \''.(int)$user_id.'\'')) return true;
    else return 
false;
    }
    } 
 
 
En ajax.moderacion.php --> inc --> php --> ajax --> ajax.moderacion.php

Buscar:
else echo '1: El avioso fue enviado con &eacute;xito a <b>'.$username.'</b>.'
 
 
Reemplazar por:
else echo '1: El aviso fue enviado con &eacute;xito a <b>'.$username.'</b>.';
$bpts $tsMonitor->puntosBans($user_id$_POST['av_type']);
                            if(!
$bpts) echo '<br>0: Error al actualizar puntos de baneos';
                            else echo 
'<br>1: Puntos de baneos actualizados'






Creditos: Debes agradecer para ver el contenido...
Responder


Compartir en:

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)