aboutsummaryrefslogtreecommitdiff
path: root/mod/apitest/index.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/apitest/index.php')
-rw-r--r--mod/apitest/index.php68
1 files changed, 68 insertions, 0 deletions
diff --git a/mod/apitest/index.php b/mod/apitest/index.php
new file mode 100644
index 000000000..16a7794df
--- /dev/null
+++ b/mod/apitest/index.php
@@ -0,0 +1,68 @@
+<?php
+ require_once("../../engine/start.php");
+
+ global $CONFIG, $API_CLIENT;
+
+
+ // Get some variables
+ $apikey = get_input("apikey");
+ $secret = get_input("secret");
+ $endpoint = get_input("endpoint");
+
+
+ if ($_REQUEST['action'] == "configure")
+ apitest_configure($apikey, $secret, $endpoint);
+
+ // Get a list of commands
+ if ($API_CLIENT->configured == true)
+ {
+ $commands = apitest_call(
+ array (
+ 'method' => 'system.api.list'
+ )
+ );
+ $commands = $commands->result;
+ }
+
+ /* See if we are executing a method - This is a quick demo, obviously use functions as they are much easier!*/
+ if (isset($_REQUEST['method']))
+ {
+
+ $command_details = $commands[$_REQUEST['method']];
+ $auth_req = $command_details['require_auth'] == 1 ? true : false;
+
+ $params = array();
+ $params['method'] = $_REQUEST['method'];
+ if ($auth_req)
+ $params['auth_token'] = $_REQUEST['auth_token'];
+
+ foreach ($command_details['parameters'] as $k => $v)
+ {
+ $params[$k] = $_REQUEST[$k];
+ }
+
+ $result = apitest_call($params, $_REQUEST['post_data']);
+
+
+ if ($result->status == 0)
+ system_message("<div id=\"result\"><pre>".print_r($result->result, true)."</pre></div>");
+ else
+ register_error($result->message);
+
+ if (!is_object($result)) echo $LAST_CALL_RAW;
+
+
+
+ }
+
+ // Draw command form
+ $list = "";
+ foreach ($commands as $command => $details)
+ $list .= apitest_draw_command_form($command, $details);
+
+ $body = elgg_view("apitest/main", array(
+ "config" => apitest_draw_config_panel(),
+ "commandlist" => $list
+ ));
+ page_draw("API Commands",$body);
+?> \ No newline at end of file