Elgg  Version 1.11
Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
ElggPlugin Class Reference
Inheritance diagram for ElggPlugin:
ElggObject ElggEntity ElggData Notable Locatable Importable Loggable Exportable

Public Member Functions

 __construct ($path)
 Creates a new plugin from path. More...
 
 save ()
 Save the plugin object. More...
 
 getID ()
 Returns the ID (dir name) of this plugin. More...
 
 getFriendlyName ()
 Returns the manifest's name if available, otherwise the ID. More...
 
 getPath ()
 Returns the plugin's full path with trailing slash. More...
 
 setID ($id)
 Sets the location of this plugin. More...
 
 getAvailableTextFiles ()
 Returns an array of available markdown files for this plugin. More...
 
 getPriority ()
 Gets the plugin's load priority. More...
 
 setPriority ($priority, $site_guid=null)
 Sets the priority of the plugin. More...
 
 getSetting ($name, $default=null)
 Returns a plugin setting. More...
 
 getAllSettings ()
 Returns an array of all settings saved for this plugin. More...
 
 setSetting ($name, $value)
 Set a plugin setting for the plugin. More...
 
 unsetSetting ($name)
 Removes a plugin setting name and value. More...
 
 unsetAllSettings ()
 Removes all settings for this plugin. More...
 
 getUserSetting ($name, $user_guid=0, $default=null)
 Returns a user's setting for this plugin. More...
 
 getAllUserSettings ($user_guid=0)
 Returns an array of all user settings saved for this plugin for the user. More...
 
 setUserSetting ($name, $value, $user_guid=0)
 Sets a user setting for a plugin. More...
 
 unsetUserSetting ($name, $user_guid=0)
 Removes a user setting name and value. More...
 
 unsetAllUserSettings ($user_guid)
 Removes all User Settings for this plugin for a particular user. More...
 
 unsetAllUsersSettings ()
 Removes this plugin's user settings for all users. More...
 
 isValid ()
 Returns if the plugin is complete, meaning has all required files and Elgg can read them and they make sense. More...
 
 isActive ($site_guid=null)
 Is this plugin active? More...
 
 canActivate ($site_guid=null)
 Checks if this plugin can be activated on the current Elgg installation. More...
 
 activate ($site_guid=null)
 Actives the plugin for the current site. More...
 
 deactivate ($site_guid=null)
 Deactivates the plugin. More...
 
 start ($flags)
 Start the plugin. More...
 
 __get ($name)
 Get an attribute or private setting value. More...
 
 get ($name)
 Get a value from private settings. More...
 
 __set ($name, $value)
 Set a value as private setting or attribute. More...
 
 set ($name, $value)
 Save a value as private setting or attribute. More...
 
 getError ()
 Returns the last error message registered. More...
 
 getManifest ()
 Returns this plugin's object. More...
 
 getPackage ()
 Returns this plugin's object. More...
 
- Public Member Functions inherited from ElggObject
 __construct ($row=null)
 Create a new . More...
 
 getDisplayName ()
 {} More...
 
 setDisplayName ($displayName)
 {} More...
 
 getSites ($options="", $limit=10, $offset=0)
 Return sites that this object is a member of. More...
 
 addToSite ($site)
 Add this object to a site. More...
 
 getExportableValues ()
 Return an array of fields which can be exported. More...
 
 canComment ($user_guid=0)
 Can a user comment on this object? More...
 
- Public Member Functions inherited from ElggEntity
 __clone ()
 Clone an entity. More...
 
 __set ($name, $value)
 Set an attribute or metadata value for this entity. More...
 
 set ($name, $value)
 Sets the value of an attribute or metadata. More...
 
 __get ($name)
 Get an attribute or metadata value. More...
 
 get ($name)
 Return the value of an attribute or metadata. More...
 
 getDisplayName ()
 Get the entity's display name. More...
 
 setDisplayName ($displayName)
 Sets the title or name of this entity. More...
 
 getMetadata ($name)
 Return the value of a piece of metadata. More...
 
 __unset ($name)
 Unset a property from metadata or attribute. More...
 
 setMetadata ($name, $value, $value_type= '', $multiple=false, $owner_guid=0, $access_id=null)
 Set metadata on this entity. More...
 
 deleteMetadata ($name=null)
 Deletes all metadata on this object (metadata.entity_guid = $this->guid). More...
 
 deleteOwnedMetadata ($name=null)
 Deletes all metadata owned by this object (metadata.owner_guid = $this->guid). More...
 
 clearMetadata ($name= '')
 Remove metadata. More...
 
 disableMetadata ($name= '')
 Disables metadata for this entity, optionally based on name. More...
 
 enableMetadata ($name= '')
 Enables metadata for this entity, optionally based on name. More...
 
 getVolatileData ($name)
 Get a piece of volatile (non-persisted) data on this entity. More...
 
 setVolatileData ($name, $value)
 Set a piece of volatile (non-persisted) data on this entity. More...
 
 deleteRelationships ($relationship=null)
 Remove all relationships to and from this entity. More...
 
 clearRelationships ()
 Remove all relationships to and from this entity. More...
 
 addRelationship ($guid_two, $relationship)
 Add a relationship between this an another entity. More...
 
 removeRelationship ($guid_two, $relationship)
 Remove a relationship. More...
 
 setPrivateSetting ($name, $value)
 Adds a private setting to this entity. More...
 
 getPrivateSetting ($name)
 Returns a private setting value. More...
 
 removePrivateSetting ($name)
 Removes private setting. More...
 
 deleteAnnotations ($name=null)
 Deletes all annotations on this object (annotations.entity_guid = $this->guid). More...
 
 deleteOwnedAnnotations ($name=null)
 Deletes all annotations owned by this object (annotations.owner_guid = $this->guid). More...
 
 disableAnnotations ($name= '')
 Disables annotations for this entity, optionally based on name. More...
 
 enableAnnotations ($name= '')
 Enables annotations for this entity, optionally based on name. More...
 
 annotate ($name, $value, $access_id=ACCESS_PRIVATE, $owner_guid=0, $vartype="")
 Adds an annotation to an entity. More...
 
 getAnnotations ($options=array(), $limit=50, $offset=0, $order="asc")
 Gets an array of annotations. More...
 
 clearAnnotations ($name="")
 Remove an annotation or all annotations for this entity. More...
 
 countAnnotations ($name="")
 Count annotations. More...
 
 getAnnotationsAvg ($name)
 Get the average of an integer type annotation. More...
 
 getAnnotationsSum ($name)
 Get the sum of integer type annotations of a given name. More...
 
 getAnnotationsMin ($name)
 Get the minimum of integer type annotations of given name. More...
 
 getAnnotationsMax ($name)
 Get the maximum of integer type annotations of a given name. More...
 
 countComments ()
 Count the number of comments attached to this entity. More...
 
 getEntitiesFromRelationship ($options=array(), $inverse=false, $limit=50, $offset=0)
 Gets an array of entities with a relationship to this entity. More...
 
 countEntitiesFromRelationship ($relationship, $inverse_relationship=false)
 Gets the number of entities from a specific relationship type. More...
 
 canEdit ($user_guid=0)
 Can a user edit this entity? More...
 
 canDelete ($user_guid=0)
 Can a user delete this entity? More...
 
 canEditMetadata ($metadata=null, $user_guid=0)
 Can a user edit metadata on this entity? More...
 
 canWriteToContainer ($user_guid=0, $type= 'all', $subtype= 'all')
 Can a user add an entity to this container. More...
 
 canComment ($user_guid=0)
 Can a user comment on an entity? More...
 
 canAnnotate ($user_guid=0, $annotation_name= '')
 Can a user annotate an entity? More...
 
 getAccessID ()
 Returns the access_id. More...
 
 getGUID ()
 Returns the guid. More...
 
 getType ()
 Returns the entity type. More...
 
 getSubtype ()
 Get the entity subtype. More...
 
 getOwnerGUID ()
 Get the guid of the entity's owner. More...
 
 getOwner ()
 Return the guid of the entity's owner. More...
 
 getOwnerEntity ()
 Gets the that owns this entity. More...
 
 setContainerGUID ($container_guid)
 Set the container for this object. More...
 
 setContainer ($container_guid)
 Set the container for this object. More...
 
 getContainerGUID ()
 Gets the container GUID for this entity. More...
 
 getContainer ()
 Gets the container GUID for this entity. More...
 
 getContainerEntity ()
 Get the container entity for this object. More...
 
 getTimeUpdated ()
 Returns the UNIX epoch time that this entity was last updated. More...
 
 getURL ()
 Gets the URL for this entity. More...
 
 setURL ($url)
 Overrides the URL returned by getURL() More...
 
 getIconURL ($params=array())
 Get the URL for this entity's icon. More...
 
 getIcon ($size= 'medium')
 Returns a URL for the entity's icon. More...
 
 setIcon ($url, $size= 'medium')
 Set an icon override for an icon and size. More...
 
 addToSite ($site)
 Add this entity to a site. More...
 
 removeFromSite ($site)
 Remove this entity from a site. More...
 
 getSites ($options=array())
 Gets the sites this entity is a member of. More...
 
 isFullyLoaded ()
 Tests to see whether the object has been fully loaded. More...
 
 save ()
 Save an entity. More...
 
 refresh (\stdClass $row)
 Load new data from database into existing entity. More...
 
 disable ($reason="", $recursive=true)
 Disable this entity. More...
 
 enable ($recursive=true)
 Enable the entity. More...
 
 isEnabled ()
 Is this entity enabled? More...
 
 delete ($recursive=true)
 Deletes the entity. More...
 
 toObject ()
 {} More...
 
 getLocation ()
 Gets the 'location' metadata for the entity. More...
 
 setLocation ($location)
 Sets the 'location' metadata for the entity. More...
 
 setLatLong ($lat, $long)
 Set latitude and longitude metadata tags for a given entity. More...
 
 getLatitude ()
 Return the entity's latitude. More...
 
 getLongitude ()
 Return the entity's longitude. More...
 
 setCalendarTimeAndDuration ($hour=null, $minute=null, $second=null, $day=null, $month=null, $year=null, $duration=null)
 Set the time and duration of an object. More...
 
 getCalendarStartTime ()
 Returns the start timestamp. More...
 
 getCalendarEndTime ()
 Returns the end timestamp. More...
 
 getExportableValues ()
 Returns an array of fields which can be exported. More...
 
 export ()
 Export this class into an array of ODD Elements containing all necessary fields. More...
 
 import (ODD $data)
 Import data from an parsed ODD xml data array. More...
 
 getSystemLogID ()
 Return an identification for the object for storage in the system log. More...
 
 getObjectFromID ($id)
 For a given ID, return the object associated with it. More...
 
 getTags ($tag_names=null)
 Returns tags for this entity. More...
 
 deleteAccessCollectionMemberships ()
 Remove the membership of all access collections for this entity (if the entity is a user) More...
 
 deleteOwnedAccessCollections ()
 Remove all access collections owned by this entity. More...
 
- Public Member Functions inherited from ElggData
 __isset ($name)
 Test if property is set either as an attribute or metadata. More...
 
 getURL ()
 Get a URL for this object. More...
 
 save ()
 Save this data to the appropriate database table. More...
 
 delete ()
 Delete this data. More...
 
 getTimeCreated ()
 Returns the UNIX epoch time that this entity was created. More...
 
 toObject ()
 Get a plain old object copy for public consumption. More...
 
 getClassName ()
 Return the class name of the object. More...
 
 getObjectOwnerGUID ()
 Return the GUID of the owner of this object. More...
 
 rewind ()
 Iterator interface. More...
 
 current ()
 Iterator interface. More...
 
 key ()
 Iterator interface. More...
 
 next ()
 Iterator interface. More...
 
 valid ()
 Iterator interface. More...
 
 offsetSet ($key, $value)
 Array access interface. More...
 
 offsetGet ($key)
 Array access interface. More...
 
 offsetUnset ($key)
 Array access interface. More...
 
 offsetExists ($offset)
 Array access interface. More...
 

Protected Member Functions

 initializeAttributes ()
 Set subtype to 'plugin'. More...
 
 includeFile ($filename)
 Includes one of the plugins files. More...
 
 canReadFile ($filename)
 Checks whether a plugin file with the given name exists. More...
 
 registerViews ()
 Registers the plugin's views. More...
 
 registerLanguages ()
 Registers the plugin's languages. More...
 
 registerClasses ()
 Registers the plugin's classes. More...
 
- Protected Member Functions inherited from ElggObject
 initializeAttributes ()
 Initialize the attributes array to include the type, title, and description. More...
 
 load ($guid)
 Loads the full when given a guid. More...
 
 create ()
 {} More...
 
 update ()
 {} More...
 
 prepareObject ($object)
 {} More...
 
- Protected Member Functions inherited from ElggEntity
 initializeAttributes ()
 Initialize the attributes array. More...
 
 create ()
 Create a new entry in the entities table. More...
 
 update ()
 Update the entity in the database. More...
 
 load ($guid)
 Loads attributes from the entities table into the object. More...
 
 loadAdditionalSelectValues (array $data)
 Stores non-attributes from the loading of the entity as volatile data. More...
 
 prepareObject ($object)
 Prepare an object copy for toObject() More...
 
- Protected Member Functions inherited from ElggData
 initialise_attributes ($pre18_api=true)
 Initialise the attributes array. More...
 
 initializeAttributes ()
 Initialize the attributes array. More...
 
 getDatabase ()
 Provides a pointer to the database object. More...
 
 get ($name)
 Fetch the specified attribute. More...
 
 set ($name, $value)
 Set the specified attribute. More...
 

Static Protected Member Functions

static getConfigWrapper ()
 Get the config object in a deprecation wrapper. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ElggObject
static getExternalAttributes ()
 Get default values for attributes stored in a separate table. More...
 
- Protected Attributes inherited from ElggEntity
 $url_override
 If set, overrides the value of getURL() More...
 
 $icon_override
 Icon override, overrides the value of getIcon(). More...
 
 $temp_metadata = array()
 Holds metadata until entity is saved. More...
 
 $temp_annotations = array()
 Holds annotations until entity is saved. More...
 
 $temp_private_settings = array()
 Holds private settings until entity is saved. More...
 
 $volatile = array()
 Volatile data structure for this object, allows for storage of data in-memory that isn't sync'd back to the metadata table. More...
 
 $tables_split
 
 $tables_loaded
 
- Protected Attributes inherited from ElggData
 $attributes = array()
 The main attributes of an entity. More...
 
 $valid = false
 

Detailed Description

Definition at line 11 of file ElggPlugin.php.

Constructor & Destructor Documentation

ElggPlugin::__construct (   $path)

Creates a new plugin from path.

Note
Internal: also supports database objects
Warning
Unlike other objects, you cannot null instantiate . You must provide the path to the plugin directory.
Parameters
string$pathThe absolute path of the plugin
Exceptions
PluginException

Definition at line 44 of file ElggPlugin.php.

Member Function Documentation

ElggPlugin::__get (   $name)

Get an attribute or private setting value.

Parameters
string$nameName of the attribute or private setting
Returns
mixed

Definition at line 870 of file ElggPlugin.php.

ElggPlugin::__set (   $name,
  $value 
)

Set a value as private setting or attribute.

Attributes include title and description.

Parameters
string$nameName of the attribute or private_setting
mixed$valueValue to be set
Returns
void

Definition at line 918 of file ElggPlugin.php.

ElggPlugin::activate (   $site_guid = null)

Actives the plugin for the current site.

Parameters
mixed$site_guidOptional site GUID.
Returns
bool

Definition at line 644 of file ElggPlugin.php.

ElggPlugin::canActivate (   $site_guid = null)

Checks if this plugin can be activated on the current Elgg installation.

Parameters
mixed$site_guidOptional site guid
Returns
bool

Definition at line 622 of file ElggPlugin.php.

ElggPlugin::canReadFile (   $filename)
protected

Checks whether a plugin file with the given name exists.

Parameters
string$filenameThe name of the file
Returns
bool

Definition at line 806 of file ElggPlugin.php.

ElggPlugin::deactivate (   $site_guid = null)

Deactivates the plugin.

Parameters
mixed$site_guidOptional site GUID.
Returns
bool

Definition at line 694 of file ElggPlugin.php.

ElggPlugin::get (   $name)

Get a value from private settings.

Parameters
string$nameName
Returns
mixed

Definition at line 904 of file ElggPlugin.php.

ElggPlugin::getAllSettings ( )

Returns an array of all settings saved for this plugin.

Note
Unlike user settings, plugin settings are not namespaced.
Returns
array An array of key/value pairs.

Definition at line 289 of file ElggPlugin.php.

ElggPlugin::getAllUserSettings (   $user_guid = 0)

Returns an array of all user settings saved for this plugin for the user.

Note
Plugin settings are saved with a prefix. This removes that prefix.
Parameters
int$user_guidThe user GUID. Defaults to logged in.
Returns
array An array of key/value pairs.

Definition at line 415 of file ElggPlugin.php.

ElggPlugin::getAvailableTextFiles ( )

Returns an array of available markdown files for this plugin.

Returns
array

Definition at line 163 of file ElggPlugin.php.

static ElggPlugin::getConfigWrapper ( )
staticprotected

Get the config object in a deprecation wrapper.

Returns

Definition at line 764 of file ElggPlugin.php.

ElggPlugin::getError ( )

Returns the last error message registered.

Returns
string|null

Definition at line 987 of file ElggPlugin.php.

ElggPlugin::getFriendlyName ( )

Returns the manifest's name if available, otherwise the ID.

Returns
string
Since
1.8.1

Definition at line 130 of file ElggPlugin.php.

ElggPlugin::getID ( )

Returns the ID (dir name) of this plugin.

Returns
string

Definition at line 120 of file ElggPlugin.php.

ElggPlugin::getManifest ( )

Returns this plugin's object.

Returns

Definition at line 996 of file ElggPlugin.php.

ElggPlugin::getPackage ( )

Returns this plugin's object.

Returns

Definition at line 1016 of file ElggPlugin.php.

ElggPlugin::getPath ( )

Returns the plugin's full path with trailing slash.

Returns
string

Definition at line 144 of file ElggPlugin.php.

ElggPlugin::getPriority ( )

Gets the plugin's load priority.

Returns
int

Definition at line 183 of file ElggPlugin.php.

ElggPlugin::getSetting (   $name,
  $default = null 
)

Returns a plugin setting.

Parameters
string$nameThe setting name
mixed$defaultThe default value to return if none is set
Returns
mixed

Definition at line 277 of file ElggPlugin.php.

ElggPlugin::getUserSetting (   $name,
  $user_guid = 0,
  $default = null 
)

Returns a user's setting for this plugin.

Parameters
string$nameThe setting name
int$user_guidThe user GUID
mixed$defaultThe default value to return if none is set
Returns
mixed The setting string value, the default value or false if there is no user

Definition at line 388 of file ElggPlugin.php.

ElggPlugin::includeFile (   $filename)
protected

Includes one of the plugins files.

Parameters
string$filenameThe name of the file
Exceptions
PluginException
Returns
mixed The return value of the included file (or 1 if there is none)

Definition at line 782 of file ElggPlugin.php.

ElggPlugin::initializeAttributes ( )
protected

Set subtype to 'plugin'.

Returns
void

Definition at line 23 of file ElggPlugin.php.

ElggPlugin::isActive (   $site_guid = null)

Is this plugin active?

Parameters
int$site_guidOptional site guid.
Returns
bool

Definition at line 595 of file ElggPlugin.php.

ElggPlugin::isValid ( )

Returns if the plugin is complete, meaning has all required files and Elgg can read them and they make sense.

Returns
bool

Definition at line 570 of file ElggPlugin.php.

ElggPlugin::registerClasses ( )
protected

Registers the plugin's classes.

Exceptions
PluginException
Returns
true

Definition at line 854 of file ElggPlugin.php.

ElggPlugin::registerLanguages ( )
protected

Registers the plugin's languages.

Exceptions
PluginException
Returns
true

Definition at line 830 of file ElggPlugin.php.

ElggPlugin::registerViews ( )
protected

Registers the plugin's views.

Exceptions
PluginException
Returns
void

Definition at line 816 of file ElggPlugin.php.

ElggPlugin::save ( )

Save the plugin object.

Make sure required values exist.

See also
save()
Returns
bool

Definition at line 94 of file ElggPlugin.php.

ElggPlugin::set (   $name,
  $value 
)

Save a value as private setting or attribute.

Attributes include title and description.

Parameters
string$nameName
mixed$valueValue
Returns
bool

Definition at line 941 of file ElggPlugin.php.

ElggPlugin::setID (   $id)

Sets the location of this plugin.

Parameters
string$idThe path to the plugin's dir.
Returns
bool

Definition at line 154 of file ElggPlugin.php.

ElggPlugin::setPriority (   $priority,
  $site_guid = null 
)

Sets the priority of the plugin.

Parameters
mixed$priorityThe priority to set. One of +1, -1, first, last, or a number. If given a number, this will displace all plugins at that number and set their priorities +1
mixed$site_guidOptional site GUID.
Returns
bool

Definition at line 197 of file ElggPlugin.php.

ElggPlugin::setSetting (   $name,
  $value 
)

Set a plugin setting for the plugin.

Parameters
string$nameThe name to set
string$valueThe value to set
Returns
bool

Definition at line 328 of file ElggPlugin.php.

ElggPlugin::setUserSetting (   $name,
  $value,
  $user_guid = 0 
)

Sets a user setting for a plugin.

Parameters
string$nameThe setting name
string$valueThe setting value
int$user_guidThe user GUID
Returns
mixed The new setting ID or false

Definition at line 463 of file ElggPlugin.php.

ElggPlugin::start (   $flags)

Start the plugin.

Parameters
int$flagsStart flags for the plugin. See the constants in lib/plugins.php for details.
Returns
true
Exceptions
PluginException

Definition at line 728 of file ElggPlugin.php.

ElggPlugin::unsetAllSettings ( )

Removes all settings for this plugin.

Returns
bool

Definition at line 363 of file ElggPlugin.php.

ElggPlugin::unsetAllUserSettings (   $user_guid)

Removes all User Settings for this plugin for a particular user.

Use removeAllUsersSettings() to remove all user settings for all users. (Note the plural 'Users'.)

Warning
0 does not equal logged in user for this method!
Parameters
int$user_guidThe user GUID to remove user settings.
Returns
bool

Definition at line 530 of file ElggPlugin.php.

ElggPlugin::unsetAllUsersSettings ( )

Removes this plugin's user settings for all users.

Use removeAllUserSettings() if you just want to remove settings for a single user.

Returns
bool

Definition at line 549 of file ElggPlugin.php.

ElggPlugin::unsetSetting (   $name)

Removes a plugin setting name and value.

Parameters
string$nameThe setting name to remove
Returns
bool

Definition at line 351 of file ElggPlugin.php.

ElggPlugin::unsetUserSetting (   $name,
  $user_guid = 0 
)

Removes a user setting name and value.

Parameters
string$nameThe user setting name
int$user_guidThe user GUID
Returns
bool

Definition at line 499 of file ElggPlugin.php.


The documentation for this class was generated from the following file: