Skip to content

Commit

Permalink
Merge branch 'MDL-30126-MOODLE_22_STABLE' of git://github.com/mouneyr…
Browse files Browse the repository at this point in the history
…ac/moodle into MOODLE_22_STABLE
  • Loading branch information
stronk7 committed Feb 14, 2012
2 parents 4ab3a01 + 9c228a6 commit 32d4d0d
Showing 1 changed file with 20 additions and 5 deletions.
25 changes: 20 additions & 5 deletions webservice/rest/lib.php
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -21,17 +21,21 @@
*/ */
class webservice_rest_client { class webservice_rest_client {


/** @var moodle_url the REST server url */
private $serverurl; private $serverurl;

private $token; private $token;
private $format;


/** /**
* Constructor * Constructor
* @param string $serverurl a Moodle URL * @param string $serverurl a Moodle URL
* @param string $token * @param string $token
*/ */
public function __construct($serverurl, $token) { public function __construct($serverurl, $token, $format = 'xml') {
$this->serverurl = $serverurl; $this->serverurl = new moodle_url($serverurl);
$this->token = $token; $this->token = $token;
$this->format = $format;
} }


/** /**
Expand All @@ -51,11 +55,22 @@ public function set_token($token) {
public function call($functionname, $params) { public function call($functionname, $params) {
global $DB, $CFG; global $DB, $CFG;


$result = download_file_content($this->serverurl if ($this->format == 'json') {
. '?wstoken='.$this->token.'&wsfunction=' $formatparam = '&moodlewsrestformat=json';
. $functionname, null, $params); $this->serverurl->param('moodlewsrestformat','json');
} else {
$formatparam = ''; //to keep retro compability with old server that only support xml (they don't expect this param)
}

$this->serverurl->param('wstoken',$this->token);
$this->serverurl->param('wsfunction',$functionname); //you could also use params().

$result = download_file_content($this->serverurl->out(false), null, $params);


//TODO : transform the XML result into PHP values - MDL-22965 //TODO : transform the XML result into PHP values - MDL-22965
if ($this->format == 'json') {
$result = json_decode($result);
}


return $result; return $result;
} }
Expand Down

0 comments on commit 32d4d0d

Please sign in to comment.