diff options
Diffstat (limited to 'engine')
-rw-r--r-- | engine/lib/metastrings.php | 33 |
1 files changed, 3 insertions, 30 deletions
diff --git a/engine/lib/metastrings.php b/engine/lib/metastrings.php index 62b60e279..d7cc4e0bc 100644 --- a/engine/lib/metastrings.php +++ b/engine/lib/metastrings.php @@ -727,38 +727,11 @@ function elgg_batch_metastring_based_objects(array $options, $callback) { return false; } - switch($options['metastring_type']) { - case 'metadata': - $objects = elgg_get_metadata($options); - break; - - case 'annotations': - $objects = elgg_get_annotations($options); - break; - - default: - return false; - } - - if (!is_array($objects)) { - $r = false; - } elseif (empty($objects)) { - // ElggBatch returns null if the results are an empty array - $r = null; - } else { - $r = true; - foreach($objects as $object) { - $r = $r && $callback($object); - } - } + // @todo restore once ElggBatch supports callbacks that delete rows. + $batch = new ElggBatch('elgg_get_metastring_based_objects', $options, $callback, 50, false); + $r = $batch->callbackResult; return $r; - -// // @todo restore once ElggBatch supports callbacks that delete rows. -// $batch = new ElggBatch('elgg_get_metastring_based_objects', $options, $callback); -// $r = $batch->callbackResult; -// -// return $r; } /** |