Index

Attach

MMO\edms\events · 1 symbol · generated 5 Oct 2026

class

Attach

Attach.php:17

A client attaches a file to an entity of the application (an upload's attachment): edms cannot know who may, the application answers. Nobody answering lets it; a listener answering false refuses it (a 403).

class MMO\edms\events\Attach extends MMO\core\events\Signal
Namespace
MMO\edms\events
Extends
Signal
Attach::AddListener(function (Attach $event): void { if (($event->entity instanceof Invoice) && (!$event->entity->isEditableBy($event->client))) {$event->setReturn(false);} });

Properties2

client

readonly
readonly MMO\oauth\interfaces\iClient $client
Type
iClient

entity

readonly
readonly MMO\core\interfaces\iEntity $entity
Type
iEntity

Methods2

isAllowed()

Attach.php:23
function isAllowed(): bool
returnsbooltrue unless a listener refused it

__construct($origin, $client, $entity)

Attach.php:18
function __construct( object|string $origin, MMO\oauth\interfaces\iClient $client, MMO\core\interfaces\iEntity $entity )
$originobject | string
$clientiClient
$entityiEntity
Inherited members (16)
PropertiesDeclared byDescription
ListenersEvent
originEvent
returnValueSignal
MethodsDeclared byDescription
AddListener($handler, $order)EventRegister a listener directly (as opposed to ConnectListeners's attribute-based discovery).
ConnectListeners($obj)EventScan $obj's methods for #[Listen(EventClass::class)] attributes and register each one as a listener on the matching event class.
DisconnectListeners($obj)EventUndo a previous ConnectListeners: removes every listener that connect had registered for $obj on this event class.
dispatch()EventInvoke every GetListeners listener with $this.
GetListeners()EventCollect every listener for this class, including those registered on its parent classes (so a subclass event is also caught by listeners of its parent event), sorted by ascending $order (ties keep …
getOrigin()Event
getReturn()Signal
HasListener($handler)Event
hasReturn()Signal
RemoveListener($handler)EventRemove the last added handler from the listeners.
Send($args)EventConstruct a new instance of this class with $args, then dispatch it to every listener.
SetListenerOrder($handler, $order)EventChange the order of an already-registered listener, whether added directly via AddListener or indirectly via ConnectListeners (which also stores its [$obj, $methodName] callables here).
setReturn($value, $stop)Signal