bug en mchat Tema Solucionado
Publicado: 14 Ago 2013, 02:34
				
				Realmente es para alertar de un bug que trae el mchat grave el cual permite a cualquiera sin permisos poder editar y borrar mensajes en el mchat. Su creador a puesto a un parche para acomodar esto. estuve buscando en el foro y no encontré otro post que hablara del asunto. si es así disculpas.  Aquí esta el link https://www.phpbb.com/customise/db/mod/ ... 46#p245646
abrir mchat.php
Encontrar
Reemplazar por 
Encontrar
Reemplazar
			abrir mchat.php
Encontrar
Código: Seleccionar todo
       // Edit function...
       case 'edit':
          // edit and delete auths
          $mchat_edit = $auth->acl_get('u_mchat_edit') ? true : false;
          $mchat_del = $auth->acl_get('u_mchat_delete') ? true : false;   
          // If mChat disabled and not edit
          if (!$config['mchat_enable'] || !$mchat_edit)
          {
             // Forbidden (for jQ AJAX request)
             header('HTTP/1.0 403 Forbidden');
             exit_handler();
          }
          
          // Reguest...
          $message_id = request_var('message_id', 0);Código: Seleccionar todo
       // Edit function...
       case 'edit':
       
          $message_id = request_var('message_id', 0);
          // check for the correct user
          $sql = 'SELECT *
             FROM ' . MCHAT_TABLE . '
             WHERE message_id = ' . (int) $message_id;      
          $result = $db->sql_query($sql);
          $row = $db->sql_fetchrow($result);
          $db->sql_freeresult($result);
          // edit and delete auths
          $mchat_edit = $auth->acl_get('u_mchat_edit')&& ($auth->acl_get('m_') || $user->data['user_id'] == $row['user_id']) ? true : false;
          $mchat_del = $auth->acl_get('u_mchat_delete') && ($auth->acl_get('m_') || $user->data['user_id'] == $row['user_id']) ? true : false;   
          // If mChat disabled and not edit
          if (!$config['mchat_enable'] || !$mchat_edit)
          {
             // Forbidden (for jQ AJAX request)
             header('HTTP/1.0 403 Forbidden');
             exit_handler();
          }
          
          // Reguest...
          Código: Seleccionar todo
       // Delete function...
       case 'delete':
          
          // must have auths to delete
          $mchat_del = ($auth->acl_get('u_mchat_delete')) ? true : false;
          // Reguest...
          $message_id = request_var('message_id', 0);Código: Seleccionar todo
       // Delete function...
       case 'delete':
          
          $message_id = request_var('message_id', 0);
          // check for the correct user
          $sql = 'SELECT *
             FROM ' . MCHAT_TABLE . '
             WHERE message_id = ' . (int) $message_id;      
          $result = $db->sql_query($sql);
          $row = $db->sql_fetchrow($result);
          $db->sql_freeresult($result);
          // edit and delete auths
          $mchat_edit = $auth->acl_get('u_mchat_edit')&& ($auth->acl_get('m_') || $user->data['user_id'] == $row['user_id']) ? true : false;
          $mchat_del = $auth->acl_get('u_mchat_delete') && ($auth->acl_get('m_') || $user->data['user_id'] == $row['user_id']) ? true : false;