From 8133f364fc689e5068b1c4ca70e7cf4057a5694c Mon Sep 17 00:00:00 2001 From: Cash Costello Date: Fri, 21 Oct 2011 07:29:46 -0400 Subject: fixed access of non-object property in entities lib --- engine/lib/entities.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'engine/lib/entities.php') diff --git a/engine/lib/entities.php b/engine/lib/entities.php index f1352ba8d..1f6434533 100644 --- a/engine/lib/entities.php +++ b/engine/lib/entities.php @@ -530,12 +530,12 @@ $container_guid = 0) { $container_guid = $owner_guid; } - $user = elgg_get_logged_in_user_entity(); - if (!can_write_to_container($user->guid, $owner_guid, $type, $subtype)) { + $user_guid = elgg_get_logged_in_user_guid(); + if (!can_write_to_container($user_guid, $owner_guid, $type, $subtype)) { return false; } if ($owner_guid != $container_guid) { - if (!can_write_to_container($user->guid, $container_guid, $type, $subtype)) { + if (!can_write_to_container($user_guid, $container_guid, $type, $subtype)) { return false; } } -- cgit v1.2.3 From 343b52d48e7ca7b2381387198c47d3bb1a2ed6e1 Mon Sep 17 00:00:00 2001 From: Cash Costello Date: Fri, 21 Oct 2011 07:34:21 -0400 Subject: Fixes #3988 correctly passing user_guid through canEdit for metadata --- engine/classes/ElggMetadata.php | 6 ++++-- engine/lib/entities.php | 7 ++++++- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'engine/lib/entities.php') 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; -- cgit v1.2.3