Change Attribute/UserCertificate into Syntax/Certificate for any Certificate attributes. Add Syntax/CertificateList.
All checks were successful
Create Docker Image / Test Application (x86_64) (push) Successful in 29s
Create Docker Image / Build Docker Image (x86_64) (push) Successful in 1m30s
Create Docker Image / Build Docker Image (arm64) (push) Successful in 4m34s
Create Docker Image / Final Docker Image Manifest (push) Successful in 8s
All checks were successful
Create Docker Image / Test Application (x86_64) (push) Successful in 29s
Create Docker Image / Build Docker Image (x86_64) (push) Successful in 1m30s
Create Docker Image / Build Docker Image (arm64) (push) Successful in 4m34s
Create Docker Image / Final Docker Image Manifest (push) Successful in 8s
This commit is contained in:
@@ -37,6 +37,9 @@ class Attribute implements \Countable, \ArrayAccess
|
||||
// The objectclasses of the entry that has this attribute
|
||||
protected(set) Collection $oc;
|
||||
|
||||
private const SYNTAX_CERTIFICATE = '1.3.6.1.4.1.1466.115.121.1.8';
|
||||
private const SYNTAX_CERTIFICATE_LIST = '1.3.6.1.4.1.1466.115.121.1.9';
|
||||
|
||||
/*
|
||||
# Has the attribute been modified
|
||||
protected $modified = false;
|
||||
@@ -123,6 +126,11 @@ class Attribute implements \Countable, \ArrayAccess
|
||||
*/
|
||||
}
|
||||
|
||||
public function __call(string $name,array $arguments)
|
||||
{
|
||||
abort(555,'Method not handled: '.$name);
|
||||
}
|
||||
|
||||
public function __get(string $key): mixed
|
||||
{
|
||||
return match ($key) {
|
||||
@@ -303,9 +311,14 @@ class Attribute implements \Countable, \ArrayAccess
|
||||
*/
|
||||
public function render(bool $edit=FALSE,bool $old=FALSE,bool $new=FALSE): View
|
||||
{
|
||||
$view = view()->exists($x='components.attribute.'.$this->name_lc)
|
||||
? view($x)
|
||||
: view('components.attribute');
|
||||
$view = match ($this->schema->syntax_oid) {
|
||||
self::SYNTAX_CERTIFICATE => view('components.syntax.certificate'),
|
||||
self::SYNTAX_CERTIFICATE_LIST => view('components.syntax.certificatelist'),
|
||||
|
||||
default => view()->exists($x = 'components.attribute.' . $this->name_lc)
|
||||
? view($x)
|
||||
: view('components.attribute'),
|
||||
};
|
||||
|
||||
return $view
|
||||
->with('o',$this)
|
||||
@@ -316,7 +329,12 @@ class Attribute implements \Countable, \ArrayAccess
|
||||
|
||||
public function render_item_old(string $dotkey): ?string
|
||||
{
|
||||
return Arr::get($this->values_old->dot(),$dotkey);
|
||||
return match ($this->schema->syntax_oid) {
|
||||
self::SYNTAX_CERTIFICATE => join("\n",str_split(base64_encode(Arr::get($this->values_old->dot(),$dotkey)),80)),
|
||||
self::SYNTAX_CERTIFICATE_LIST => join("\n",str_split(base64_encode(Arr::get($this->values_old->dot(),$dotkey)),80)),
|
||||
|
||||
default => Arr::get($this->values_old->dot(),$dotkey),
|
||||
};
|
||||
}
|
||||
|
||||
public function render_item_new(string $dotkey): ?string
|
||||
|
Reference in New Issue
Block a user