summaryrefslogtreecommitdiff
path: root/modules/gallery/helpers
diff options
context:
space:
mode:
authorKriss Andsten <kriss@sverok.se>2010-11-27 05:36:25 +0800
committerBharat Mediratta <bharat@menalto.com>2010-11-28 11:44:23 +0800
commit2ed83fcd95deb8fc41b40b7ae4fe4b9cde0003be (patch)
tree2e401720d37d089ba906829f6b129a0a20a565d7 /modules/gallery/helpers
parent554ca2e683297489251d621e2c959a6a467a6f9c (diff)
Patch from ticket 1503, making rest/items behaviour consisten with rest/item behaviour.
Diffstat (limited to 'modules/gallery/helpers')
-rw-r--r--modules/gallery/helpers/items_rest.php8
1 files changed, 5 insertions, 3 deletions
diff --git a/modules/gallery/helpers/items_rest.php b/modules/gallery/helpers/items_rest.php
index f0b68d63..a5f7a067 100644
--- a/modules/gallery/helpers/items_rest.php
+++ b/modules/gallery/helpers/items_rest.php
@@ -45,7 +45,7 @@ class items_rest_Core {
if (access::can("view", $item)) {
if (isset($types)) {
if (in_array($item->type, $types)) {
- $items[] = items_rest::_format_restful_item($item);
+ $items[] = items_rest::_format_restful_item($item, $types);
}
} else {
$items[] = items_rest::_format_restful_item($item);
@@ -74,14 +74,16 @@ class items_rest_Core {
return $item;
}
- private static function _format_restful_item($item) {
+ private static function _format_restful_item($item, $types = null) {
$item_rest = array("url" => rest::url("item", $item),
"entity" => $item->as_restful_array(),
"relationships" => rest::relationships("item", $item));
if ($item->type == "album") {
$members = array();
foreach ($item->viewable()->children() as $child) {
- $members[] = rest::url("item", $child);
+ if ($types == null || in_array($child->type, $types)) {
+ $members[] = rest::url("item", $child);
+ }
}
$item_rest["members"] = $members;
}