aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engine/classes/ElggEntity.php13
-rw-r--r--engine/classes/ElggFile.php6
-rw-r--r--engine/lib/metadata.php6
-rw-r--r--engine/lib/notification.php6
-rw-r--r--views/default/export/entity.php9
5 files changed, 30 insertions, 10 deletions
diff --git a/engine/classes/ElggEntity.php b/engine/classes/ElggEntity.php
index cf716b37d..2adb322de 100644
--- a/engine/classes/ElggEntity.php
+++ b/engine/classes/ElggEntity.php
@@ -128,7 +128,10 @@ abstract class ElggEntity extends ElggData implements
return;
}
- $metadata_array = get_metadata_for_entity($this->guid);
+ $metadata_array = elgg_get_metadata(array(
+ 'guid' => $this->guid,
+ 'limit' => 0
+ ));
$this->attributes['guid'] = "";
@@ -871,7 +874,7 @@ abstract class ElggEntity extends ElggData implements
*
* Plugins can register for the 'entity:icon:url', <type> plugin hook
* to customize the icon for an entity.
- *
+ *
* @param string $size Size of the icon: tiny, small, medium, large
*
* @return string The URL
@@ -887,15 +890,15 @@ abstract class ElggEntity extends ElggData implements
$url = "_graphics/icons/default/$size.png";
$url = elgg_normalize_url($url);
-
+
$type = $this->getType();
$params = array(
'entity' => $this,
'size' => $size,
);
-
+
$url = elgg_trigger_plugin_hook('entity:icon:url', $type, $params, $url);
-
+
return elgg_normalize_url($url);
}
diff --git a/engine/classes/ElggFile.php b/engine/classes/ElggFile.php
index 2a0d6fb28..961a6ef13 100644
--- a/engine/classes/ElggFile.php
+++ b/engine/classes/ElggFile.php
@@ -315,7 +315,11 @@ class ElggFile extends ElggObject {
// If filestore meta set then retrieve filestore
// @todo Better way of doing this?
- $metas = get_metadata_for_entity($this->guid);
+ // ^ Yes....yes there is.
+ $metas = elgg_get_metadata(array(
+ 'guid' => $this->guid,
+ 'limit' => 0
+ ));
$parameters = array();
if (is_array($metas)) {
foreach ($metas as $meta) {
diff --git a/engine/lib/metadata.php b/engine/lib/metadata.php
index c123a89b0..600e72e71 100644
--- a/engine/lib/metadata.php
+++ b/engine/lib/metadata.php
@@ -328,6 +328,12 @@ function delete_metadata($id) {
*
* @see elgg_get_entities
*
+ * @warning 1.7's find_metadata() didn't support limits and returned all metadata.
+ * This function defaults to a limit of 25. There is probably not a reason
+ * for you to return all metadata unless you're exporting an entity,
+ * have other restraints in place, or are doing something horribly
+ * wrong in your code.
+ *
* @param array $options Array in format:
*
* metadata_names => NULL|ARR metadata names
diff --git a/engine/lib/notification.php b/engine/lib/notification.php
index 841920d8b..b48fec2fe 100644
--- a/engine/lib/notification.php
+++ b/engine/lib/notification.php
@@ -173,7 +173,11 @@ function get_user_notification_settings($user_guid = 0) {
$user_guid = elgg_get_logged_in_user_guid();
}
- $all_metadata = get_metadata_for_entity($user_guid);
+ // @todo: holy crap, really?
+ $all_metadata = elgg_get_metadata(array(
+ 'guid' => $user_guid,
+ 'limit' => 0
+ ));
if ($all_metadata) {
$prefix = "notification:method:";
$return = new stdClass;
diff --git a/views/default/export/entity.php b/views/default/export/entity.php
index faf27e932..ccee86718 100644
--- a/views/default/export/entity.php
+++ b/views/default/export/entity.php
@@ -11,9 +11,12 @@ $entity = $vars['entity'];
if (!$entity) {
throw new InvalidParameterException(elgg_echo('InvalidParameterException:NoEntityFound'));
}
-
-$metadata = get_metadata_for_entity($entity->guid);
-$annotations = get_annotations($entity->guid);
+$options = array(
+ 'guid' => $entity->guid,
+ 'limit' => 0
+);
+$metadata = elgg_get_metadata($options);
+$annotations = elgg_get_annotations($options);
$relationships = get_entity_relationships($entity->guid);
$exportable_values = $entity->getExportableValues();