From c0e6b62ee59236f3ad3f0fd4934b218a41558253 Mon Sep 17 00:00:00 2001 From: Deon George Date: Tue, 4 Feb 2025 20:54:55 +1100 Subject: [PATCH] Fix rendering Add Objectclasses, remove existing OCs from the list and dont rebuild the select list after the first invocation --- app/Http/Controllers/HomeController.php | 5 +- .../attribute/widget/options.blade.php | 78 +++++++++++++------ 2 files changed, 60 insertions(+), 23 deletions(-) diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index c71b829..74cb4a3 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -116,8 +116,9 @@ class HomeController extends Controller { $dn = Crypt::decryptString($id); $o = config('server')->fetch($dn); + $oc = $o->getObject('objectclass'); - $ocs = $o->getObject('objectclass') + $ocs = $oc ->structural ->map(fn($item)=>$item->getParents()) ->flatten() @@ -125,6 +126,8 @@ class HomeController extends Controller config('server')->schema('objectclasses') ->filter(fn($item)=>$item->isAuxiliary()) ) + // Remove the original objectlcasses + ->filter(fn($item)=>(! $oc->values->contains($item))) ->sortBy(fn($item)=>$item->name); return $ocs->groupBy(fn($item)=>$item->isStructural()) diff --git a/resources/views/components/attribute/widget/options.blade.php b/resources/views/components/attribute/widget/options.blade.php index cafc189..4cdde6e 100644 --- a/resources/views/components/attribute/widget/options.blade.php +++ b/resources/views/components/attribute/widget/options.blade.php @@ -39,27 +39,32 @@