API16:JUserHelper/addUserToGroup
From Joomla! Documentation
Description
Method to add a user to a group.
Syntax
static addUserToGroup($userId, $groupId)
| Parameter Name | Default Value | Description |
|---|---|---|
| $userId | $userId The id of the user. | |
| $groupId | $groupId The id of the group. |
Returns
mixed Boolean true on success, on error.
Defined in
libraries/joomla/user/helper.php
Importing
jimport( 'joomla.user.helper' );
Source Body
public static function addUserToGroup($userId, $groupId)
{
// Get the user object.
$user = new JUser((int) $userId);
// Add the user to the group if necessary.
if (!array_key_exists($groupId, $user->groups))
{
// Get the title of the group.
$db = &JFactory::getDbo();
$db->setQuery(
'SELECT `title`' .
' FROM `#__usergroups`' .
' WHERE `id` = '. (int) $groupId
);
$title = $db->loadResult();
// Check for a database error.
if ($db->getErrorNum()) {
return new JException($db->getErrorMsg());
}
// If the group does not exist, return an exception.
if (!$title) {
return new JException(JText::_('Access_Usergroup_Invalid'));
}
// Add the group data to the user object.
$user->groups[$groupId] = $title;
// Store the user object.
if (!$user->save()) {
return new JException($user->getError());
}
}
// Set the group data for any preloaded user objects.
$temp = & JFactory::getUser((int) $userId);
$temp->groups = $user->groups;
// Set the group data for the user object in the session.
$temp = & JFactory::getUser();
if ($temp->id == $userId) {
$temp->groups = $user->groups;
}
return true;
}
Examples
Code Examples