Selaa lähdekoodia

Use XMLWriter to generate response

Gets rid of manual XML generation.
tags/v9.0beta1
Lukas Reschke 8 vuotta sitten
vanhempi
commit
574f9b1e3f
1 muutettua tiedostoa jossa 29 lisäystä ja 18 poistoa
  1. 29
    18
      ocs/providers.php

+ 29
- 18
ocs/providers.php Näytä tiedosto

@@ -27,22 +27,33 @@ require_once '../lib/base.php';

header('Content-type: application/xml');

$url=OCP\Util::getServerProtocol().'://'.substr(OCP\Util::getServerHost().OCP\Util::getRequestUri(), 0, -17).'ocs/v1.php/';
$request = \OC::$server->getRequest();

echo('
<providers>
<provider>
<id>ownCloud</id>
<location>'.$url.'</location>
<name>ownCloud</name>
<icon></icon>
<termsofuse></termsofuse>
<register></register>
<services>
<config ocsversion="1.7" />
<activity ocsversion="1.7" />
<cloud ocsversion="1.7" />
</services>
</provider>
</providers>
');
$url = $request->getServerProtocol() . '://' . substr($request->getServerHost() . $request->getRequestUri(), 0, -17).'ocs/v1.php/';

$writer = new XMLWriter();
$writer->openURI('php://output');
$writer->startDocument('1.0','UTF-8');
$writer->setIndent(4);
$writer->startElement('providers');
$writer->startElement('provider');
$writer->writeElement('id', 'ownCloud');
$writer->writeElement('location', $url);
$writer->writeElement('name', 'ownCloud');
$writer->writeElement('icon', '');
$writer->writeElement('termsofuse', '');
$writer->writeElement('register', '');
$writer->startElement('services');
$writer->startElement('config');
$writer->writeAttribute('ocsversion', '1.7');
$writer->endElement();
$writer->startElement('activity');
$writer->writeAttribute('ocsversion', '1.7');
$writer->endElement();
$writer->startElement('cloud');
$writer->writeAttribute('ocsversion', '1.7');
$writer->endElement();
$writer->endElement();
$writer->endElement();
$writer->endDocument();
$writer->flush();

Loading…
Peruuta
Tallenna