123456789101112131415161718192021222324252627282930 |
- Loggable
- ========
- Loggable is an interface inherited by any class that wants events relating to its member objects to be saved to the system log. ``ElggEntity`` and ``ElggExtender`` both inherit ``Loggable``.
- Loggable defines several class methods that are used in saving to the default system log, and can be used to define your own (as well as for other purposes):
- - ``getSystemLogID()`` Return a unique identifier for the object for storage in the system log. This is likely to be the object's GUID
- - ``getClassName()`` Return the class name of the object
- - ``getType()`` Return the object type
- - ``getSubtype()`` Get the object subtype
- - ``getObjectFromID($id)`` For a given ID, return the object associated with it
- - ``getObjectOwnerGUID()`` Return the GUID of the owner of this object
- Database details
- ----------------
- The default system log is stored in the ``system_log`` :doc:`database table <database>`. It contains the following fields:
- - **id** - A unique numeric row ID
- - **object_id** - The GUID of the entity being acted upon
- - **object_class** - The class of the entity being acted upon (eg ElggObject)
- - **object_type** - The type of the entity being acted upon (eg object)
- - **object_subtype** - The subtype of the entity being acted upon (eg blog)
- - **event** - The event being logged (eg create or update)
- - **performed_by_guid** - The GUID of the acting entity (the user performing the action)
- - **owner_guid** - The GUID of the user which owns the entity being acted upon
- - **access_id** - The access restriction associated with this log entry
- - **time_created** - The UNIX epoch timestamp of the time the event took place
|