Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Drupal »

Saber si un usuario se logueo

Estas en el tema de Saber si un usuario se logueo en el foro de Drupal en Foros del Web. Hola quisiera saber como hago para detectar cuando cualquier usuario se ha logueado. Por que he colocado un texto en el theme que dice... Ingresar... ...
  #1 (permalink)  
Antiguo 02/07/2009, 09:53
(Desactivado)
 
Fecha de Ingreso: enero-2008
Ubicación: Mendoza
Mensajes: 458
Antigüedad: 16 años, 3 meses
Puntos: 2
Exclamación Saber si un usuario se logueo

Hola quisiera saber como hago para detectar cuando cualquier usuario se ha logueado.

Por que he colocado un texto en el theme que dice... Ingresar...

Al pinchar ahi va al panel de user de drupal para que se loguee... y una ves logueado me sigue apareciendo el texto ingresar en el theme, lo que yo quiero es cambiar ese texto por uno que diga Salir.

Alguna sugerencia...

Gracias
  #2 (permalink)  
Antiguo 02/07/2009, 16:01
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 6 meses
Puntos: 890
Respuesta: Saber si un usuario se logueo

justo estoy trabajando con un sistema de login similar al que te hace falta, y como compartir no cuesta alla vá:

Agrega esto a tu archivo template.php del theme en cuestión:

Código PHP:
function phptemplate_login() {
    global 
$user;
    if (!
$user->uid) {
      
$logged'<ul>
                     <li>'
.l('Home''').'</li>
                  <li>'
.l('Ingresar','user', array('attributes' => array('rel'=>'nofollow')) ).'</li>
                  <li>'
.l('Nuevo password''user/password', array('attributes' => array('rel'=>'nofollow'))).'</li>
                  <li>'
.l('Registrate''user/register', array('attributes' => array('rel'=>'nofollow')) ).'</li>
                </ul>'
;
    } else {
      
$logged'<ul>
                  <li>Hola : '
.l($user->name'user/'.$user->uid).'</li>
                  <li>'
.l('Editar mi perfil''user/' $user->uid '/edit').'</li>
                  <li>'
.l('Salir''logout').'</li>
                </ul>'
;
    }
    return 
$logged;

Imprime el resultado con
Código PHP:
<?php  print phptemplate_login();?>
PD: Lo deje básico , el sistema que tengo tiene más opciones. ;)
Saludos
__________________
Drupal Argentina
  #3 (permalink)  
Antiguo 06/07/2009, 12:37
(Desactivado)
 
Fecha de Ingreso: enero-2008
Ubicación: Mendoza
Mensajes: 458
Antigüedad: 16 años, 3 meses
Puntos: 2
Exclamación Respuesta: Saber si un usuario se logueo

Asi lo solucione...

Código PHP:
<?php
global $user;
if ( 
$user->uid ) { ?>
<div class="loginTop" onclick="javascript: location='http://www.unbuenvino.com.ar/drupal/logout'">
Terminar sesi&oacute;n
    </div>
<?php }
else { 
?>
<div class="loginTop" onclick="javascript: location='http://www.unbuenvino.com.ar/drupal/user'">
Usuarios Registrados
    </div>
<?php }
?>
Gracias por tu respuesta
  #4 (permalink)  
Antiguo 06/07/2009, 15:48
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 6 meses
Puntos: 890
Respuesta: Saber si un usuario se logueo

En definitiva es lo mismo, tienes que empezar a optimizar codigo, recuerda que no solo existe el page.tpl.php puedes tener infinidad de plantillas, si por a o b motivos necesitas cambiar algo en el menu? O si va creciendo?

Saludetes :)
__________________
Drupal Argentina
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:02.