Index: rpclib.php
===================================================================
RCS file: /cvsroot/moodle/contrib/plugins/mod/tracker/rpclib.php,v
retrieving revision 1.3.2.3
diff -u -r1.3.2.3 rpclib.php
--- rpclib.php	17 Oct 2008 07:25:51 -0000	1.3.2.3
+++ rpclib.php	13 Nov 2008 10:53:07 -0000
@@ -9,7 +9,7 @@
 * variables transport are performed using JSON format. 
 */
 
-include_once $CFG->libdir."/json/JSON.php";
+include_once($CFG->libdir.'/pear/HTML/AJAX/JSON.php');
 
 /**
 * Constants
@@ -29,20 +29,19 @@
 */
 function tracker_rpc_check($username, $remotehostroot, &$localuser){
 
-    $json = new Services_JSON();
     
     // get local identity for user
 
     if (!$remotehost = get_record('mnet_host', 'wwwroot', $remotehostroot)){
         $response->status = RPC_FAILURE;
         $response->error = "Calling host is not registered. Check MNET configuration";
-        return $json->encode($response);
+        return json_encode($response);
     }
     
     if (!$localuser = get_record('user', 'username', addslashes($username), 'mnethostid', $remotehost->id)){
         $response->status = RPC_FAILURE_USER;
         $response->error = "Calling user has no local account. Register remote user first";
-        return $json->encode($response);
+        return json_encode($response);
     }
 
     return null;
@@ -79,8 +78,7 @@
         return $tracker;
     }
 
-    $json = new Services_JSON();
-    return $json->encode($tracker);
+    return json_encode($tracker);
 }
 
 /*
@@ -97,7 +95,6 @@
     if ($failedcheck = tracker_rpc_check($username, $remotehostroot, $localuser)) return $failedcheck;
     
     $response->status = RPC_SUCCESS;
-    $json = new Services_JSON();
     
     $trackers = get_records('tracker', '', '', 'name', 'id,name');
     if(!empty($trackers)){
@@ -111,7 +108,7 @@
     }
     
     $response->trackers = $trackers;
-    return $json->encode($response);
+    return json_encode($response);
 }
 
 /**
@@ -128,8 +125,7 @@
 
     $response->status = RPC_SUCCESS;
     
-    $json = new Services_JSON();
-    $issue = $json->decode($remote_issue);
+    $issue = json_decode($remote_issue);
 
     // get additional data and cleanup the issue record for insertion
     if (isset($issue->attributes)){
Index: views/view.controller.php
===================================================================
RCS file: /cvsroot/moodle/contrib/plugins/mod/tracker/views/view.controller.php,v
retrieving revision 1.2.2.8
diff -u -r1.2.2.8 view.controller.php
--- views/view.controller.php	5 Nov 2008 19:39:46 -0000	1.2.2.8
+++ views/view.controller.php	13 Nov 2008 10:53:07 -0000
@@ -248,11 +248,10 @@
 	$issue->comment = $track;
 
     include_once($CFG->dirroot."/mod/tracker/rpclib.php");
-	$json = new Services_JSON();    	
 
     if (is_numeric($tracker->parent)){
         // tracker is local, use the rpc entry point anyway
-    	$result = tracker_rpc_post_issue($tracker->parent, $USER->id, $json->encode($issue));
+    	$result = tracker_rpc_post_issue($tracker->parent, $USER->id, json_encode($issue));
     } else {
         // tracker is remote, make an RPC call
 
@@ -265,7 +264,7 @@
         $rpcclient->add_param($USER->username, 'string');
         $rpcclient->add_param($CFG->wwwroot, 'string');
         $rpcclient->add_param($remoteid, 'int');
-        $rpcclient->add_param($json->encode($issue), 'string');
+        $rpcclient->add_param(json_encode($issue), 'string');
         
         $parent_mnet = new mnet_peer();
         $parent_mnet->set_wwwroot($mnet_host);
Index: views/admin_mnetwork.html
===================================================================
RCS file: /cvsroot/moodle/contrib/plugins/mod/tracker/views/admin_mnetwork.html,v
retrieving revision 1.2.2.3
diff -u -r1.2.2.3 admin_mnetwork.html
--- views/admin_mnetwork.html	5 Nov 2008 19:39:47 -0000	1.2.2.3
+++ views/admin_mnetwork.html	13 Nov 2008 10:53:07 -0000
@@ -19,7 +19,7 @@
 
 include_once $CFG->dirroot."/mnet/xmlrpc/client.php";
 include_once $CFG->dirroot."/mod/tracker/rpclib.php";
-include_once $CFG->libdir."/json/JSON.php";
+include_once($CFG->libdir.'/pear/HTML/AJAX/JSON.php');
 
 echo "<br/>";
 print_simple_box_start('center', '100%', '', '', 'generalbox', 'bugreport'); 
@@ -55,8 +55,7 @@
         if (!$rpcclient->send($parent_mnet)){
             error(implode("<br/>", $rpcclient->error));
         }
-        $json = new Services_JSON();
-        $parent = $json->decode($rpcclient->response);
+        $parent = json_decode($rpcclient->response);
         
         // fix a bug in XML-RPC transfer of arrays
         $parent->elements = get_object_vars($parent->elements);
@@ -144,8 +143,7 @@
         
         $response = $rpcclient->send($parent_mnet);
         
-        $json = new Services_JSON();
-        $remotetrackers = $json->decode($rpcclient->response);
+        $remotetrackers = json_decode($rpcclient->response);
         
         if (!empty($remotetrackers)){
             if ($remotetrackers->status == 200){
