aboutsummaryrefslogtreecommitdiff
path: root/views/json
diff options
context:
space:
mode:
Diffstat (limited to 'views/json')
-rw-r--r--views/json/api/output.php32
-rw-r--r--views/json/canvas/default.php21
-rw-r--r--views/json/export/entity.php43
-rw-r--r--views/json/export/metadata.php39
-rw-r--r--views/json/export/relationship.php39
-rw-r--r--views/json/group/default.php26
-rw-r--r--views/json/messages/exceptions/exception.php31
-rw-r--r--views/json/object/default.php21
-rw-r--r--views/json/page/components/list.php14
-rw-r--r--views/json/page/default.php13
-rw-r--r--views/json/pageshells/pageshell.php16
-rw-r--r--views/json/river/item.php19
-rw-r--r--views/json/search/entity_list.php20
-rw-r--r--views/json/site/default.php26
-rw-r--r--views/json/user/default.php26
15 files changed, 163 insertions, 223 deletions
diff --git a/views/json/api/output.php b/views/json/api/output.php
index ebdd82667..adeb7cc75 100644
--- a/views/json/api/output.php
+++ b/views/json/api/output.php
@@ -1,19 +1,17 @@
<?php
- /**
- * Elgg JSON output
- * This outputs the api as JSON
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- *
- */
+/**
+ * Elgg JSON output
+ * This outputs the api results as JSON
+ *
+ * @package Elgg
+ * @subpackage Core
+ */
- $result = $vars['result'];
- $export = $result->export();
-
- echo json_encode($export);
-?> \ No newline at end of file
+$result = $vars['result'];
+$export = $result->export();
+
+global $jsonexport;
+
+// with api calls, we don't want extra baggage found in other json views
+// so we skip the associative array
+$jsonexport = $export; \ No newline at end of file
diff --git a/views/json/canvas/default.php b/views/json/canvas/default.php
deleted file mode 100644
index ad997b2cc..000000000
--- a/views/json/canvas/default.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-
- /**
- * Elgg default layout
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
-
- for ($i = 1; $i < 8; $i++) {
-
- if (isset($vars["area{$i}"]))
- echo $vars["area{$i}"];
-
- }
-
-?> \ No newline at end of file
diff --git a/views/json/export/entity.php b/views/json/export/entity.php
index 83524cbd8..36af5eaef 100644
--- a/views/json/export/entity.php
+++ b/views/json/export/entity.php
@@ -1,22 +1,25 @@
<?php
- /**
- * Elgg Entity export.
- * Displays an entity as JSON
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
+/**
+ * Elgg Entity export.
+ * Displays an entity as JSON
+ *
+ * @package Elgg
+ * @subpackage Core
+ */
- $entity = $vars['entity'];
-
- $export = new stdClass;
-
- foreach ($entity as $k => $v)
- $export->$k = $v;
-
- echo json_encode($export);
-?> \ No newline at end of file
+$entity = $vars['entity'];
+
+$export = new stdClass;
+$exportable_values = $entity->getExportableValues();
+
+foreach ($exportable_values as $v) {
+ $export->$v = $entity->$v;
+}
+
+$export->url = $entity->getURL();
+
+global $jsonexport;
+$jsonexport[$entity->getType()][$entity->getSubtype()][] = $export;
+
+// @todo hack to fix #4504
+echo "Fix for bug #4504";
diff --git a/views/json/export/metadata.php b/views/json/export/metadata.php
index 0495e37b2..e1e6ceb26 100644
--- a/views/json/export/metadata.php
+++ b/views/json/export/metadata.php
@@ -1,22 +1,21 @@
<?php
- /**
- * Elgg metadata export.
- * Displays a metadata item using json
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
+/**
+ * Elgg metadata export.
+ * Displays a metadata item using json
+ *
+ * @package Elgg
+ * @subpackage Core
+ */
- $m = $vars['metadata'];
-
- $export = new stdClass;
-
- foreach ($m as $k => $v)
- $export->$k = $v;
-
- echo json_encode($export);
-?> \ No newline at end of file
+$m = $vars['metadata'];
+
+$export = new stdClass;
+$exportable_values = $entity->getExportableValues();
+
+foreach ($exportable_values as $v) {
+ $export->$v = $m->$v;
+}
+
+global $jsonexport;
+$jsonexport['metadata'][] = $entity;
+// echo json_encode($export); \ No newline at end of file
diff --git a/views/json/export/relationship.php b/views/json/export/relationship.php
index 22acbba92..47b3a390d 100644
--- a/views/json/export/relationship.php
+++ b/views/json/export/relationship.php
@@ -1,22 +1,21 @@
<?php
- /**
- * Elgg relationship export.
- * Displays a relationship using JSON.
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
+/**
+ * Elgg relationship export.
+ * Displays a relationship using JSON.
+ *
+ * @package Elgg
+ * @subpackage Core
+ */
- $r = $vars['relationship'];
-
- $export = new stdClass;
-
- foreach ($r as $k => $v)
- $export->$k = $v;
-
- echo json_encode($export);
-?> \ No newline at end of file
+$r = $vars['relationship'];
+
+$export = new stdClass;
+
+$exportable_values = $entity->getExportableValues();
+
+foreach ($exportable_values as $v) {
+ $export->$v = $r->$v;
+}
+
+global $jsonexport;
+$jsonexport['relationships'][] = $export; \ No newline at end of file
diff --git a/views/json/group/default.php b/views/json/group/default.php
index ad997b2cc..dd190d402 100644
--- a/views/json/group/default.php
+++ b/views/json/group/default.php
@@ -1,21 +1,9 @@
<?php
+/**
+ * JSON group view
+ *
+ * @package Elgg
+ * @subpackage Core
+ */
- /**
- * Elgg default layout
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
-
- for ($i = 1; $i < 8; $i++) {
-
- if (isset($vars["area{$i}"]))
- echo $vars["area{$i}"];
-
- }
-
-?> \ No newline at end of file
+echo elgg_view('export/entity', $vars);
diff --git a/views/json/messages/exceptions/exception.php b/views/json/messages/exceptions/exception.php
index 96c49fbc3..4f73212bc 100644
--- a/views/json/messages/exceptions/exception.php
+++ b/views/json/messages/exceptions/exception.php
@@ -1,20 +1,15 @@
<?php
- /**
- * Elgg exception
- * Displays a single exception
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- *
- * @uses $vars['object'] An exception
- */
+/**
+ * Elgg exception
+ * Displays a single exception
+ *
+ * @package Elgg
+ * @subpackage Core
+ *
+ * @uses $vars['object'] An exception
+ */
- $export = $vars['object'];
-
-
- echo json_encode("$export");
-?> \ No newline at end of file
+$export = $vars['object'];
+
+global $jsonexport;
+$jsonexport['exceptions'][] = $export; \ No newline at end of file
diff --git a/views/json/object/default.php b/views/json/object/default.php
index 1d82d6e77..8b88b3010 100644
--- a/views/json/object/default.php
+++ b/views/json/object/default.php
@@ -1,16 +1,9 @@
<?php
+/**
+ * JSON object view
+ *
+ * @package Elgg
+ * @subpackage Core
+ */
- /**
- * Elgg default layout
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
-
- echo elgg_view('export/entity', $vars);
-
-?> \ No newline at end of file
+echo elgg_view('export/entity', $vars);
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 @@
+<?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
diff --git a/views/json/page/default.php b/views/json/page/default.php
new file mode 100644
index 000000000..2d0403e11
--- /dev/null
+++ b/views/json/page/default.php
@@ -0,0 +1,13 @@
+<?php
+/**
+ * Elgg JSON output pageshell
+ *
+ * @package Elgg
+ * @subpackage Core
+ *
+ */
+
+header("Content-Type: application/json");
+
+global $jsonexport;
+echo json_encode($jsonexport); \ No newline at end of file
diff --git a/views/json/pageshells/pageshell.php b/views/json/pageshells/pageshell.php
deleted file mode 100644
index cb36d5f04..000000000
--- a/views/json/pageshells/pageshell.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
- /**
- * Elgg JSON output pageshell
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- *
- */
-
- header("Content-Type: application/json");
- echo $vars['body'];
-?> \ 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 @@
+<?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'];
diff --git a/views/json/search/entity_list.php b/views/json/search/entity_list.php
deleted file mode 100644
index 6e65b3010..000000000
--- a/views/json/search/entity_list.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
- /**
- * Elgg default layout
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
-
- $entities = $vars['entities'];
- if (is_array($entities) && sizeof($entities) > 0) {
- foreach($entities as $entity)
- echo elgg_view_entity($entity);
- }
-
-?> \ No newline at end of file
diff --git a/views/json/site/default.php b/views/json/site/default.php
index ad997b2cc..ee4eda489 100644
--- a/views/json/site/default.php
+++ b/views/json/site/default.php
@@ -1,21 +1,9 @@
<?php
+/**
+ * JSON site view
+ *
+ * @package Elgg
+ * @subpackage Core
+ */
- /**
- * Elgg default layout
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
-
- for ($i = 1; $i < 8; $i++) {
-
- if (isset($vars["area{$i}"]))
- echo $vars["area{$i}"];
-
- }
-
-?> \ No newline at end of file
+echo elgg_view('export/entity', $vars);
diff --git a/views/json/user/default.php b/views/json/user/default.php
index ad997b2cc..4d44692c9 100644
--- a/views/json/user/default.php
+++ b/views/json/user/default.php
@@ -1,21 +1,9 @@
<?php
+/**
+ * JSON user view
+ *
+ * @package Elgg
+ * @subpackage Core
+ */
- /**
- * Elgg default layout
- *
- * @package Elgg
- * @subpackage Core
- * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
- * @author Curverider Ltd
- * @copyright Curverider Ltd 2008
- * @link http://elgg.org/
- */
-
- for ($i = 1; $i < 8; $i++) {
-
- if (isset($vars["area{$i}"]))
- echo $vars["area{$i}"];
-
- }
-
-?> \ No newline at end of file
+echo elgg_view('export/entity', $vars);