feat(groups): user_groups lookup, admin assignment UI, public directory with DataTables
This commit is contained in:
@@ -19,7 +19,7 @@ class UserModel
|
||||
{
|
||||
$database = DatabaseFactory::getFactory()->getConnection();
|
||||
|
||||
$sql = "SELECT user_id, user_name, user_email, user_active, user_has_avatar, user_deleted FROM users";
|
||||
$sql = "SELECT user_id, user_name, user_email, user_active, user_has_avatar, user_deleted, user_account_type FROM users";
|
||||
$query = $database->prepare($sql);
|
||||
$query->execute();
|
||||
|
||||
@@ -39,11 +39,46 @@ class UserModel
|
||||
$all_users_profiles[$user->user_id]->user_active = $user->user_active;
|
||||
$all_users_profiles[$user->user_id]->user_deleted = $user->user_deleted;
|
||||
$all_users_profiles[$user->user_id]->user_avatar_link = (Config::get('USE_GRAVATAR') ? AvatarModel::getGravatarLinkByEmail($user->user_email) : AvatarModel::getPublicAvatarFilePathOfUser($user->user_has_avatar, $user->user_id));
|
||||
$all_users_profiles[$user->user_id]->user_account_type = $user->user_account_type;
|
||||
}
|
||||
|
||||
return $all_users_profiles;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets list of users including their group name via user_groups lookup.
|
||||
* @return array
|
||||
*/
|
||||
public static function getUsersWithGroups()
|
||||
{
|
||||
$database = DatabaseFactory::getFactory()->getConnection();
|
||||
|
||||
$sql = "SELECT u.user_id, u.user_name, u.user_email, u.user_active, u.user_has_avatar, u.user_deleted, u.user_account_type,
|
||||
g.group_name
|
||||
FROM users u
|
||||
LEFT JOIN user_groups g ON g.group_id = u.user_account_type";
|
||||
$query = $database->prepare($sql);
|
||||
$query->execute();
|
||||
|
||||
$result = [];
|
||||
foreach ($query->fetchAll() as $user) {
|
||||
array_walk_recursive($user, 'Filter::XSSFilter');
|
||||
|
||||
$obj = new stdClass();
|
||||
$obj->user_id = $user->user_id;
|
||||
$obj->user_name = $user->user_name;
|
||||
$obj->user_email = $user->user_email;
|
||||
$obj->user_active = $user->user_active;
|
||||
$obj->user_deleted = $user->user_deleted;
|
||||
$obj->user_account_type = $user->user_account_type;
|
||||
$obj->group_name = $user->group_name;
|
||||
$obj->user_avatar_link = (Config::get('USE_GRAVATAR') ? AvatarModel::getGravatarLinkByEmail($user->user_email) : AvatarModel::getPublicAvatarFilePathOfUser($user->user_has_avatar, $user->user_id));
|
||||
|
||||
$result[] = $obj;
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets a user's profile data, according to the given $user_id
|
||||
* @param int $user_id The user's id
|
||||
|
||||
Reference in New Issue
Block a user