API: Complete respond function

This commit is contained in:
Bart Visscher 2012-08-01 19:48:51 +02:00
parent c11c2d0fd4
commit 93daa9e247
1 changed files with 22 additions and 3 deletions

View File

@ -115,13 +115,32 @@ class OC_API {
*/ */
private static function respond($response, $format='json'){ private static function respond($response, $format='json'){
if ($format == 'json') { if ($format == 'json') {
echo json_encode($response); OC_JSON::encodedPrint($response);
//} else if ($format == 'xml') { } else if ($format == 'xml') {
// TODO array to xml header('Content-type: text/xml; charset=UTF-8');
$writer = new XMLWriter();
$writer->openMemory();
$writer->setIndent( true );
$writer->startDocument();
self::toXML($response, $writer);
$writer->endDocument();
echo $writer->outputMemory(true);
} else { } else {
var_dump($format, $response); var_dump($format, $response);
} }
} }
private static function toXML($array, $writer){
foreach($array as $k => $v) {
if (is_array($v)) {
$writer->startElement($k);
self::toXML($v, $writer);
$writer->endElement();
} else {
$writer->writeElement($k, $v);
}
}
}
/** /**
* check if the user is authenticated * check if the user is authenticated