Использование метода getUser() в Joomla.


Метод getUser() в Joomla позволяет получить информацию о конкрентном пользователе, либо о текущем.

Синтаксис метода:

1
$user =& JFactory::getUser($id);

где $id — уникальный id пользователя (целое число). В качестве параметра может быть также строковое значение — user name, которое будет автоматически преобразовано в id. Если в скобках параметр $id опущен, то возвращается информация о текущем пользователе. Метод возвращает объект типа JUser.

Рассмотрим, как можно определить, залогинен пользователь или нет:

1
2
3
4
5
6
7
8
$user =& JFactory::getUser();
 
if (!$user->guest) {
  echo 'Вы залогинены как:<br />';
  echo 'Username: ' . $user->username . '<br />';
  echo 'Настоящее имя: ' . $user->name . '<br />';
  echo 'ID пользователя: ' . $user->id . '<br />';
}

Пример запроса информации по username:

1
2
3
4
5
6
7
8
9
$user =& JFactory::getUser( 'andrew' );
 
if ($user->id == 0) {
  echo 'На сайте не зарегистрирован пользователем с таким username.<br />';
} else {
  echo 'Username: ' . $user->username . '<br />';
  echo 'Настоящее имя: ' . $user->name . '<br />';
  echo 'ID  пользователя: ' . $user->id . '<br />';
}

Проверка прав на выполнение действия:

1
2
3
4
5
6
7
$user =& JFactory::getUser();
 
if ($user->authorize( 'com_content', 'edit', 'content', 'all' )) {
  echo 'Редактирование разрешено для данного пользователя';
} else {
  echo 'Редактирование запрещено для данного пользователя';
}




Другие посты

Категория: Joomla

Комментарии (1)

 

  1. hels:

    Отличная статья! долго искал как можно отобразить имя пользователя в шаблоне и именно часть с вашей статьи очень помогла, спасибо!

Оставить комментарий