From e01240611f2a94d0a194235f2f83323049ad1a74 Mon Sep 17 00:00:00 2001 From: cash Date: Sat, 29 Oct 2011 13:01:05 -0400 Subject: Refs #3201 updates json river views and removed old search view --- engine/classes/ElggRiverItem.php | 8 ++++++- views/json/page/components/list.php | 14 ++++++++++++ views/json/page/default.php | 7 +----- views/json/river/item.php | 19 ++++++++++++++++ views/json/river/item/list.php | 45 ------------------------------------- views/json/search/entity_list.php | 14 ------------ 6 files changed, 41 insertions(+), 66 deletions(-) create mode 100644 views/json/page/components/list.php create mode 100644 views/json/river/item.php delete mode 100644 views/json/river/item/list.php delete mode 100644 views/json/search/entity_list.php diff --git a/engine/classes/ElggRiverItem.php b/engine/classes/ElggRiverItem.php index cdb22239d..fcc8f9c85 100644 --- a/engine/classes/ElggRiverItem.php +++ b/engine/classes/ElggRiverItem.php @@ -28,8 +28,14 @@ class ElggRiverItem // throw exception } + // the casting is to support typed serialization like json + $int_types = array('id', 'subject_guid', 'object_guid', 'annotation_id', 'access_id', 'posted'); foreach ($object as $key => $value) { - $this->$key = $value; + if (in_array($key, $int_types)) { + $this->$key = (int)$value; + } else { + $this->$key = $value; + } } } diff --git a/views/json/page/components/list.php b/views/json/page/components/list.php new file mode 100644 index 000000000..5de4f1f59 --- /dev/null +++ b/views/json/page/components/list.php @@ -0,0 +1,14 @@ + 0) { + foreach ($items as $item) { + elgg_view_list_item($item, $vars); + } +} \ No newline at end of file diff --git a/views/json/page/default.php b/views/json/page/default.php index d1f86c8a7..2d0403e11 100644 --- a/views/json/page/default.php +++ b/views/json/page/default.php @@ -7,12 +7,7 @@ * */ -if(stristr($_SERVER["HTTP_ACCEPT"],"application/json")) { - header("Content-Type: application/json"); -} else { - header("Content-Type: application/javascript"); -} -// echo $vars['body']; +header("Content-Type: application/json"); global $jsonexport; echo json_encode($jsonexport); \ No newline at end of file diff --git a/views/json/river/item.php b/views/json/river/item.php new file mode 100644 index 000000000..64677817f --- /dev/null +++ b/views/json/river/item.php @@ -0,0 +1,19 @@ +view, 'default')) { + $item->string = elgg_view('river/elements/summary', array('item' => $item), FALSE, FALSE, 'default'); +} + +$jsonexport['activity'][] = $vars['item']; diff --git a/views/json/river/item/list.php b/views/json/river/item/list.php deleted file mode 100644 index c79cd1042..000000000 --- a/views/json/river/item/list.php +++ /dev/null @@ -1,45 +0,0 @@ - NULL, - 'object' => NULL, - 'type' => NULL, - 'subtype' => NULL, - 'action_type' => NULL, - 'view' => NULL, - 'annotation' => NULL, - 'timestamp' => NULL, - 'string' => NULL - ); - - if (elgg_view_exists($item->view, 'default')) { - $json_entry['string'] = elgg_view($item->view, array('item' => $item), FALSE, FALSE, 'default'); - $json_entry['timestamp'] = (int)$item->posted; - } - - $json_items[] = $json_entry; - - $i++; - if ($i >= $vars['limit']) { - break; - } - } - } -} - -$jsonexport['activity'] = $json_items; diff --git a/views/json/search/entity_list.php b/views/json/search/entity_list.php deleted file mode 100644 index c778bf5df..000000000 --- a/views/json/search/entity_list.php +++ /dev/null @@ -1,14 +0,0 @@ - 0) { - foreach($entities as $entity) { - echo elgg_view_entity($entity); - } -} -- cgit v1.2.3