29 lines
524 B
PHP
29 lines
524 B
PHP
<?php
|
|
|
|
/**
|
|
* Return the area security information
|
|
*/
|
|
namespace App\Traits;
|
|
|
|
trait AreaSecurity
|
|
{
|
|
public function getSecReadAttribute(): int
|
|
{
|
|
return ($this->security>>3) & 0x7;
|
|
}
|
|
|
|
public function getSecWriteAttribute(): int
|
|
{
|
|
return $this->security & 0x7;
|
|
}
|
|
|
|
public function setRead(int $security): void
|
|
{
|
|
$this->security = ($this->security & ~(0x7<<3)) | (($security & 0x7) << 3);
|
|
}
|
|
|
|
public function setWrite(int $security): void
|
|
{
|
|
$this->security = ($this->security & ~(0x7)) | ($security & 0x7);
|
|
}
|
|
} |