Elgg
Version 1.11
|
Go to the source code of this file.
Namespaces | |
Elgg\Core | |
Activate a plugin or plugins. | |
Functions | |
row_to_elggrelationship ($row) | |
Convert a database row to a new . More... | |
get_relationship ($id) | |
Get a relationship by its ID. More... | |
_elgg_get_relationship_row ($id) | |
Get a database row from the relationship table. More... | |
delete_relationship ($id) | |
Delete a relationship by its ID. More... | |
add_entity_relationship ($guid_one, $relationship, $guid_two) | |
Create a relationship between two entities. More... | |
check_entity_relationship ($guid_one, $relationship, $guid_two) | |
Check if a relationship exists between two entities. More... | |
remove_entity_relationship ($guid_one, $relationship, $guid_two) | |
Delete a relationship between two entities. More... | |
remove_entity_relationships ($guid, $relationship="", $inverse_relationship=false, $type= '') | |
Removes all relationships originating from a particular entity. More... | |
get_entity_relationships ($guid, $inverse_relationship=false) | |
Get all the relationships for a given GUID. More... | |
elgg_get_entities_from_relationship ($options) | |
Return entities matching a given query joining against a relationship. More... | |
elgg_get_entity_relationship_where_sql ($column, $relationship=null, $relationship_guid=null, $inverse_relationship=false) | |
Returns SQL appropriate for relationship joins and wheres. More... | |
elgg_list_entities_from_relationship (array $options=array()) | |
Returns a viewable list of entities by relationship. More... | |
elgg_get_entities_from_relationship_count (array $options=array()) | |
Gets the number of entities by a the number of entities related to them in a particular way. More... | |
elgg_list_entities_from_relationship_count ($options) | |
Returns a list of entities by relationship count. More... | |
_elgg_get_relationship_row | ( | $id | ) |
Get a database row from the relationship table.
int | $id | The relationship ID |
Definition at line 44 of file relationships.php.
add_entity_relationship | ( | $guid_one, | |
$relationship, | |||
$guid_two | |||
) |
Create a relationship between two entities.
E.g. friendship, group membership, site membership.
This function lets you make the statement "$guid_one is a $relationship of $guid_two". In the statement, $guid_one is the subject of the relationship, $guid_two is the target, and $relationship is the type.
int | $guid_one | GUID of the subject entity of the relationship |
string | $relationship | Type of the relationship |
int | $guid_two | GUID of the target entity of the relationship |
InvalidArgumentException |
Definition at line 73 of file relationships.php.
check_entity_relationship | ( | $guid_one, | |
$relationship, | |||
$guid_two | |||
) |
Check if a relationship exists between two entities.
If so, the relationship object is returned.
This function lets you ask "Is $guid_one a $relationship of $guid_two?"
int | $guid_one | GUID of the subject entity of the relationship |
string | $relationship | Type of the relationship |
int | $guid_two | GUID of the target entity of the relationship |
Definition at line 88 of file relationships.php.
delete_relationship | ( | $id | ) |
Delete a relationship by its ID.
int | $id | The relationship ID |
Definition at line 55 of file relationships.php.
elgg_get_entities_from_relationship | ( | $options | ) |
Return entities matching a given query joining against a relationship.
Also accepts all options available to elgg_get_entities() and elgg_get_entities_from_metadata().
To ask for entities that do not have a particular relationship to an entity, use a custom where clause like the following:
$options['wheres'][] = "NOT EXISTS ( SELECT 1 FROM {$db_prefix}entity_relationships WHERE guid_one = e.guid AND relationship = '$relationship' )";
array | $options | Array in format: |
relationship => null|STR Type of the relationship
relationship_guid => null|INT GUID of the subject or target entity
inverse_relationship => false|BOOL Is relationship_guid is the target entity of the relationship? By default, relationship_guid is the subject.
relationship_join_on => null|STR How the entities relate: guid (default), container_guid, or owner_guid Add in Elgg 1.9.0. Examples using the relationship 'friend':
relationship_created_time_lower => null|INT Relationship created time lower boundary in epoch time
relationship_created_time_upper => null|INT Relationship created time upper boundary in epoch time
Definition at line 174 of file relationships.php.
elgg_get_entities_from_relationship_count | ( | array | $options = array() | ) |
Gets the number of entities by a the number of entities related to them in a particular way.
This is a good way to get out the users with the most friends, or the groups with the most members.
array | $options | An options array compatible with elgg_get_entities_from_relationship() |
Definition at line 223 of file relationships.php.
elgg_get_entity_relationship_where_sql | ( | $column, | |
$relationship = null , |
|||
$relationship_guid = null , |
|||
$inverse_relationship = false |
|||
) |
Returns SQL appropriate for relationship joins and wheres.
string | $column | Column name the GUID should be checked against. Provide in table.column format. |
string | $relationship | Type of the relationship |
int | $relationship_guid | Entity GUID to check |
bool | $inverse_relationship | Is $relationship_guid the target of the relationship? |
Definition at line 193 of file relationships.php.
elgg_list_entities_from_relationship | ( | array | $options = array() | ) |
Returns a viewable list of entities by relationship.
array | $options | Options array for retrieval of entities |
Definition at line 209 of file relationships.php.
elgg_list_entities_from_relationship_count | ( | $options | ) |
Returns a list of entities by relationship count.
array | $options | Options array |
Definition at line 237 of file relationships.php.
get_entity_relationships | ( | $guid, | |
$inverse_relationship = false |
|||
) |
Get all the relationships for a given GUID.
int | $guid | GUID of the subject or target entity (see $inverse) |
bool | $inverse_relationship | Is $guid the target of the relationships? By default $guid is the subject of the relationships. |
Definition at line 131 of file relationships.php.
get_relationship | ( | $id | ) |
Get a relationship by its ID.
int | $id | The relationship ID |
Definition at line 32 of file relationships.php.
remove_entity_relationship | ( | $guid_one, | |
$relationship, | |||
$guid_two | |||
) |
Delete a relationship between two entities.
This function lets you say "$guid_one is no longer a $relationship of $guid_two."
int | $guid_one | GUID of the subject entity of the relationship |
string | $relationship | Type of the relationship |
int | $guid_two | GUID of the target entity of the relationship |
Definition at line 103 of file relationships.php.
remove_entity_relationships | ( | $guid, | |
$relationship = "" , |
|||
$inverse_relationship = false , |
|||
$type = '' |
|||
) |
Removes all relationships originating from a particular entity.
int | $guid | GUID of the subject or target entity (see $inverse) |
string | $relationship | Type of the relationship (optional, default is all relationships) |
bool | $inverse_relationship | Is $guid the target of the deleted relationships? By default, $guid is the subject of the relationships. |
string | $type | The type of entity related to $guid (defaults to all) |
Definition at line 118 of file relationships.php.
row_to_elggrelationship | ( | $row | ) |
Convert a database row to a new .
\stdClass | $row | Database row from the relationship table |
Definition at line 17 of file relationships.php.