summaryrefslogtreecommitdiff
path: root/includes/js/dojox/rpc/tests/resources/jsonRpc12.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/js/dojox/rpc/tests/resources/jsonRpc12.php')
-rw-r--r--includes/js/dojox/rpc/tests/resources/jsonRpc12.php53
1 files changed, 53 insertions, 0 deletions
diff --git a/includes/js/dojox/rpc/tests/resources/jsonRpc12.php b/includes/js/dojox/rpc/tests/resources/jsonRpc12.php
new file mode 100644
index 0000000..8fad2e5
--- /dev/null
+++ b/includes/js/dojox/rpc/tests/resources/jsonRpc12.php
@@ -0,0 +1,53 @@
+<?php
+ require_once("./JSON.php");
+
+ // FIXME: doesn't look like we really need Pear at all
+ // which decreases the testing burden.
+ // Commenting out.the require and the new File() call.
+
+ // NOTE: File.php is installed via Pear using:
+ // %> sudo pear install File
+ // Your server will also need the Pear library directory included in PHP's
+ // include_path configuration directive
+ // require_once('File.php');
+
+ // ensure that we don't try to send "html" down to the client
+ header("Content-Type: text/plain");
+
+ $json = new Services_JSON;
+ //$fp = new File();
+
+ $results = array();
+ $results['error'] = null;
+
+ $jsonRequest = file_get_contents('php://input');
+ //$jsonRequest = '{"params":["Blah"],"method":"myecho","id":86}';
+
+ $req = $json->decode($jsonRequest);
+
+ $method = $req->method;
+ $params = $req->params;
+
+ switch($method) {
+ case "postJsonRpc12Echo":
+ case "postJsonRpc12EchoNamed":
+ if (is_array($params)){
+ $results['result']=$params;
+ }else{
+ $results['result']=$params->message;
+ }
+ break;
+ default:
+ $results['result']="";
+ $results['error']=array();
+ $results['error']['code']=-32601;
+ $results['error']["message"]="The requested remote-procedure does not exist / is not available.";
+ break;
+ }
+
+ $results['id'] = $req->id;
+
+ $encoded = $json->encode($results);
+
+ print $encoded;
+?>