Sencilla Modificación a usuarios conectados y usuarios nuevos

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
joertru's picture

Bueno acá les dejo un pequeño truco que implemente para mostrar las fotos en el bloque usuarios conectados y nuevos usuarios para drupal 7.

Los cambios se realizan en el archivo user.module.php del modulo user

Primero que todo debemos hacer unos cambios en hook_block_view

buscamos el case new y a la consulta agregamos la imagen del usuario quedando de la siguiente manera:

$items = db_query_range('SELECT uid, name, picture FROM {users} WHERE status <> 0 AND access <> 0 ORDER BY created DESC', 0, variable_get('user_block_whois_new_count', 5))->fetchAll();

como vemos agregamos después de name el campo picture

Posteriormente hacemos lo mismo con el case online

$items = db_query_range('SELECT u.name, u.uid, u.picture, MAX(s.timestamp) AS max_timestamp FROM {users} u INNER JOIN {sessions} s ON u.uid = s.uid WHERE s.timestamp >= :interval AND s.uid > 0 GROUP BY u.uid, u.name ORDER BY max_timestamp DESC', 0, $max_users, array(':interval' => $interval))->fetchAll();

Como vemos agregamos el campo u.picture

Después hacemos un pequeño cambio en la función theme_user_list

buscamos la línea que dice:

$items[] = theme('username', array('account' => $user));

Lo cambiamos por:

$items[] = theme('user_picture', array('account' => $user));

Y listo, después es solo agregar un par de estilos para mejorar la presentación.

Espero les sea de utilidad a todos

Saludos

Comments

Ok

julioxx1's picture

Hola joertru,

Muy bien, pero porque realizaste los cambios en el archivo user.module.php del modulo user? ya que este es un módulo del core...

Saludos!!

Consejo

joertru's picture

Cual es la mejor práctica para hacerlo? cual es el lugar correcto para hacerlo un nuevo módulo o en el template.php del tema.

Saludos julio gracias por el comentario

Hola. Por regla general los

mrubiano's picture

Hola.

Por regla general los archivos del core de Drupal no deberian tocarse, ya que esto puede interferir al momento de realizar alguna actualización de tu sistema.

Las funcionalidades que trae drupal en sus módulos del core o inclusive funcionalidades de los módulos contribuidos se pueden extender creando tus propios módulos y utilizando los hooks.

Puedes empezar aqui:
http://drupal.org/developing/modules

Colombia

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: