diff options
author | Thomas Müller <thomas.mueller@tmit.eu> | 2015-11-30 17:32:32 +0100 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2015-11-30 17:32:32 +0100 |
commit | b6cc9f9d19cacc425d45fa3860c44651f0d278f3 (patch) | |
tree | b0b3ac2ea2386f9350707bbd31c5891b9ee69359 | |
parent | b9faba8857ffb7ecd51f2be4f6619f2a6201c6a9 (diff) | |
parent | 574f9b1e3f27da9b68e85ff60d0ae21e852be1c7 (diff) | |
download | nextcloud-server-b6cc9f9d19cacc425d45fa3860c44651f0d278f3.tar.gz nextcloud-server-b6cc9f9d19cacc425d45fa3860c44651f0d278f3.zip |
Merge pull request #20841 from owncloud/generate-response-using-xml-writer
Use XMLWriter to generate response
-rw-r--r-- | ocs/providers.php | 47 |
1 files changed, 29 insertions, 18 deletions
diff --git a/ocs/providers.php b/ocs/providers.php index ce818a0cb6a..f82c20eba63 100644 --- a/ocs/providers.php +++ b/ocs/providers.php @@ -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(); |