// 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;
+ }
}
}
--- /dev/null
+<?php
+/**
+ * JSON list view
+ *
+ * @uses $vars['items']
+ */
+
+$items = $vars['items'];
+
+if (is_array($items) && sizeof($items) > 0) {
+ foreach ($items as $item) {
+ elgg_view_list_item($item, $vars);
+ }
+}
\ No newline at end of file
*
*/
-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
--- /dev/null
+<?php
+/**
+ * JSON river item view
+ *
+ * @uses $vars['item']
+ */
+
+global $jsonexport;
+
+if (!isset($jsonexport['activity'])) {
+ $jsonexport['activity'] = array();
+}
+
+$item = $vars['item'];
+if (elgg_view_exists($item->view, 'default')) {
+ $item->string = elgg_view('river/elements/summary', array('item' => $item), FALSE, FALSE, 'default');
+}
+
+$jsonexport['activity'][] = $vars['item'];
+++ /dev/null
-<?php
-/**
- * JSON river view
- *
- * @package Elgg
- * @subpackage Core
- */
-global $jsonexport;
-
-$json_items = array();
-
-if (isset($vars['items']) && is_array($vars['items'])) {
- $i = 0;
-
- if (!empty($vars['items'])) {
- foreach($vars['items'] as $item) {
-
- $json_entry = array(
- 'subject' => 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;
+++ /dev/null
-<?php
-/**
- * Elgg default layout
- *
- * @package Elgg
- * @subpackage Core
- */
-
-$entities = $vars['entities'];
-if (is_array($entities) && sizeof($entities) > 0) {
- foreach($entities as $entity) {
- echo elgg_view_entity($entity);
- }
-}