File: D:/HostingSpaces/SBogers10/reiskick.komma.nl/app/MustDos/Kms/MustDoService.php
<?php
namespace App\MustDos\Kms;
use App\MustDos\Models\MustDo;
use Illuminate\Support\Str;
use Komma\KMS\Core\Attributes\Models\SelectOption;
use Komma\KMS\Core\Attributes\Models\SelectOptionInterface;
use Komma\KMS\Core\ModelService;
use Komma\KMS\Core\Sections\SidebarListItem;
class MustDoService extends ModelService
{
public function __construct()
{
parent::__construct();
$this->modelClassName = MustDo::class;
}
public function getComponentSelectOptions()
{
$models = $this->modelClassName::with('country', 'translation')
->where('lft', '!=', 1)
->get();
$options = [];
foreach ($models as $model) {
$title = $model->getSidebarName() . ' | ' . $model->country->name;
$selectOption = (app()->make(SelectOptionInterface::class))
->setContent($model->getSidebarName() . ' | ' . $model->country->name)
->setHtmlContent($model->getSidebarName() . ' | ' . $model->country->name)
->setValue($model->id);
// Make sure there is always a unique key
if(isset($sidebarList[Str::slug($title)])) $key = $title.$model->id;
$options[Str::slug($title)] = $selectOption;
}
ksort($options);
return $options;
}
}