Deon George 29fb20ca6d
All checks were successful
Create Docker Image / Test Application (x86_64) (push) Successful in 27s
Create Docker Image / Build Docker Image (x86_64) (push) Successful in 1m26s
Create Docker Image / Build Docker Image (arm64) (push) Successful in 4m35s
Create Docker Image / Final Docker Image Manifest (push) Successful in 9s
Start of work to enable creation of new entries
2025-02-25 17:12:46 +11:00

51 lines
961 B
PHP

<?php
namespace App\Classes\LDAP\Attribute;
use Illuminate\Contracts\View\View;
use Illuminate\Support\Collection;
use App\Classes\LDAP\Attribute;
/**
* Represents the RDN for an Entry
*/
final class RDN extends Attribute
{
private string $base;
private Collection $objectclasses;
public function __get(string $key): mixed
{
return match ($key) {
'base' => $this->base,
default => parent::__get($key),
};
}
public function hints(): array
{
return [
'required' => __('RDN is required')
];
}
public function render(bool $edit=FALSE,bool $old=FALSE,bool $new=FALSE): View
{
return view('components.attribute.rdn')
->with('o',$this);
}
public function setBase(string $base): void
{
$this->base = $base;
}
public function setObjectClasses(array $classes): void
{
$this->objectclasses = collect();
foreach ($classes as $class)
$this->objectclasses->push(cofig('server')->schema('objectclasses',$class));
}
}