diff options
author | Cash Costello <cash.costello@gmail.com> | 2011-10-21 07:34:21 -0400 |
---|---|---|
committer | Cash Costello <cash.costello@gmail.com> | 2011-10-21 07:34:21 -0400 |
commit | 343b52d48e7ca7b2381387198c47d3bb1a2ed6e1 (patch) | |
tree | 35ee9a3ed3873719820813e824eed6e0404d1b28 /engine | |
parent | 8133f364fc689e5068b1c4ca70e7cf4057a5694c (diff) | |
download | elgg-343b52d48e7ca7b2381387198c47d3bb1a2ed6e1.tar.gz elgg-343b52d48e7ca7b2381387198c47d3bb1a2ed6e1.tar.bz2 |
Fixes #3988 correctly passing user_guid through canEdit for metadata
Diffstat (limited to 'engine')
-rw-r--r-- | engine/classes/ElggMetadata.php | 6 | ||||
-rw-r--r-- | engine/lib/entities.php | 7 |
2 files changed, 10 insertions, 3 deletions
diff --git a/engine/classes/ElggMetadata.php b/engine/classes/ElggMetadata.php index ed3f8614f..32e7b32f1 100644 --- a/engine/classes/ElggMetadata.php +++ b/engine/classes/ElggMetadata.php @@ -45,11 +45,13 @@ class ElggMetadata extends ElggExtender { /** * Determines whether or not the user can edit this piece of metadata * + * @param int $user_guid The GUID of the user (defaults to currently logged in user) + * * @return true|false Depending on permissions */ - function canEdit() { + function canEdit($user_guid = 0) { if ($entity = get_entity($this->get('entity_guid'))) { - return $entity->canEditMetadata($this); + return $entity->canEditMetadata($this, $user_guid); } return false; } diff --git a/engine/lib/entities.php b/engine/lib/entities.php index 1f6434533..fcd4544bf 100644 --- a/engine/lib/entities.php +++ b/engine/lib/entities.php @@ -1837,7 +1837,12 @@ function can_edit_entity_metadata($entity_guid, $user_guid = 0, $metadata = null $return = can_edit_entity($entity_guid, $user_guid); } - $user = get_entity($user_guid); + if ($user_guid) { + $user = get_entity($user_guid); + } else { + $user = elgg_get_logged_in_user_entity(); + } + $params = array('entity' => $entity, 'user' => $user, 'metadata' => $metadata); $return = elgg_trigger_plugin_hook('permissions_check:metadata', $entity->type, $params, $return); return $return; |