File: D:/HostingSpaces/SBogers10/shop.komma.nl/app/Users/Kms/SiteUserService.php
<?php
namespace App\Users\Kms;
use App\Users\SiteUser;
use Komma\KMS\Core\Attributes\Models\Traits\HasThumbnailInterface;
use Komma\KMS\Core\Sections\SidebarListItem;
use Komma\KMS\Users\Kms\UserService;
/**
* Class SiteUserService
*
* @package App\Users\Kms
*/
final class SiteUserService extends UserService
{
protected $sortable = false;
function __construct()
{
$this->modelClassName = SiteUser::class;
parent::__construct();
}
/**
* This method will get all the models.
* And add these to the sidebarList.
*
* @return array $sidebarList
*/
public function getModelsForSideBar():array
{
// Get users based upon your user role
$users = $this->modelClassName::all();
$sidebarList = [];
$users = $users->load('documents');
foreach ($users as $user) {
//New SidebarListItem
$sidebarListItem = new SidebarListItem();
$user->title = $user->email; //used in KmsRepository::setThumbnail
/** @var HasThumbnailInterface $user */
$user->generateThumbnail();
//Set the values for the sidebar
$sidebarListItem->setId($user->id);
$sidebarListItem->setStatus(!$user->is_admin);
$sidebarListItem->setName($user->getDisplayName());
$sidebarListItem->setThumbnail($user->getThumbnail());
$sidebarListItem->alsoSearchInAttributesOfModel($user);
$sidebarList[] = $sidebarListItem;
}
return $sidebarList;
}
}