$track .= get_string('commentedby', 'tracker') . fullname($users[$comment->userid]) . get_string('on', 'tracker') . userdate($comment->datecreated); $track .= '<br/>'; $track .= format_text($comment->comment, $comment->commentformat); $track .= '<hr width="60%"/>'; } } $issue->comment = $track; // insert a backlink header in the content $olddescription = $issue->description; $issue->description = tracker_add_cascade_backlink($cm, $issue) . $issue->description; include_once $CFG->libdir . "/pear/HTML/AJAX/JSON.php"; include_once $CFG->dirroot . '/mod/tracker/rpclib.php'; if (is_numeric($tracker->parent)) { // tracker is local, use the rpc entry point anyway // emulate response $result = tracker_rpc_post_issue($USER->username, $CFG->wwwroot, $tracker->parent, json_encode($issue)); } else { // tracker is remote, make an RPC call list($remoteid, $mnet_host) = explode('@', $tracker->parent); // get network tracker properties include_once $CFG->dirroot . '/mnet/xmlrpc/client.php'; $userroot = get_field('mnet_host', 'wwwroot', 'id', $USER->mnethostid); $rpcclient = new mnet_xmlrpc_client(); $rpcclient->set_method('mod/tracker/rpclib.php/tracker_rpc_post_issue'); $rpcclient->add_param($USER->username, 'string'); $rpcclient->add_param($userroot, 'string'); $rpcclient->add_param($remoteid, 'int'); $rpcclient->add_param(json_encode($issue), 'string'); $parent_mnet = new mnet_peer(); $parent_mnet->set_wwwroot($mnet_host); if ($rpcclient->send($parent_mnet)) {
} $idlist = implode("','", $useridsarray); $users = get_records_select('user', "id IN ('{$idlist}')", '', 'id, firstname, lastname'); // make backtrack foreach ($comments as $comment) { $track .= get_string('commentedby', 'tracker') . fullname($users[$comment->userid]) . get_string('on', 'tracker') . userdate($comment->datecreated); $track .= '<br/>'; $track .= format_text($comment->comment, $comment->format); $track .= '<hr width="60%"/>'; } } $issue->comment = $track; include_once $CFG->dirroot . "/mod/tracker/rpclib.php"; 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)); } else { // tracker is remote, make an RPC call list($remoteid, $mnet_host) = explode('@', $tracker->parent); // get network tracker properties include_once $CFG->dirroot . "/mnet/xmlrpc/client.php"; $rpcclient = new mnet_xmlrpc_client(); $rpcclient->set_method('mod/tracker/rpclib.php/tracker_rpc_post_issue'); $rpcclient->add_param($USER->username, 'string'); $rpcclient->add_param($CFG->wwwroot, 'string'); $rpcclient->add_param($remoteid, 'int'); $rpcclient->add_param(json_encode($issue), 'string'); $parent_mnet = new mnet_peer(); $parent_mnet->set_wwwroot($mnet_host); $result = $rpcclient->send($parent_mnet); }