summaryrefslogtreecommitdiffstats
path: root/http
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2014-04-09 01:44:12 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2014-04-09 22:52:26 +0200
commit21bd539847f33c3889c4f58f14afd672f54a410a (patch)
treed6ff27e38727197b60d1c2c47968b7f64d4f5c2f /http
parentfcef0800a24818305e8a52761b05f87e13206689 (diff)
ported to owncloud internal appframework classes, confused with how to start the app and define deps
Diffstat (limited to 'http')
-rw-r--r--http/downloadresponse.php51
-rw-r--r--http/textdownloadresponse.php59
-rw-r--r--http/textresponse.php57
3 files changed, 167 insertions, 0 deletions
diff --git a/http/downloadresponse.php b/http/downloadresponse.php
new file mode 100644
index 000000000..56a46b15b
--- /dev/null
+++ b/http/downloadresponse.php
@@ -0,0 +1,51 @@
+<?php
+
+/**
+ * ownCloud - App Framework
+ *
+ * @author Bernhard Posselt
+ * @copyright 2012 Bernhard Posselt nukeawhale@gmail.com
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+namespace OCA\News\Http;
+
+use \OCP\AppFramework\Http\Response;
+
+/**
+ * Prompts the user to download the a file
+ */
+class DownloadResponse extends Response {
+
+ private $filename;
+ private $contentType;
+
+ /**
+ * Creates a response that prompts the user to download the file
+ * @param string $filename the name that the downloaded file should have
+ * @param string $contentType the mimetype that the downloaded file should have
+ */
+ public function __construct($filename, $contentType) {
+ $this->filename = $filename;
+ $this->contentType = $contentType;
+
+ $this->addHeader('Content-Disposition', 'attachment; filename="' . $filename . '"');
+ $this->addHeader('Content-Type', $contentType);
+ }
+
+
+}
diff --git a/http/textdownloadresponse.php b/http/textdownloadresponse.php
new file mode 100644
index 000000000..07de87ba1
--- /dev/null
+++ b/http/textdownloadresponse.php
@@ -0,0 +1,59 @@
+<?php
+
+/**
+ * ownCloud - App Framework
+ *
+ * @author Bernhard Posselt
+ * @copyright 2012 Bernhard Posselt dev@bernhard-posselt.com
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+namespace OCA\News\Http;
+
+
+/**
+ * Prompts the user to download the a textfile
+ */
+class TextDownloadResponse extends DownloadResponse {
+
+ private $content;
+ private $filename;
+ private $contentType;
+
+ /**
+ * Creates a response that prompts the user to download a file which
+ * contains the passed string
+ * @param string $content the content that should be written into the file
+ * @param string $filename the name that the downloaded file should have
+ * @param string $contentType the mimetype that the downloaded file should have
+ */
+ public function __construct($content, $filename, $contentType){
+ parent::__construct($filename, $contentType);
+ $this->content = $content;
+ }
+
+
+ /**
+ * Simply sets the headers and returns the file contents
+ * @return string the file contents
+ */
+ public function render(){
+ return $this->content;
+ }
+
+
+}
diff --git a/http/textresponse.php b/http/textresponse.php
new file mode 100644
index 000000000..41d9c40e0
--- /dev/null
+++ b/http/textresponse.php
@@ -0,0 +1,57 @@
+<?php
+
+/**
+ * ownCloud - App Framework
+ *
+ * @author Bernhard Posselt
+ * @copyright 2012 Bernhard Posselt dev@bernhard-posselt.com
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+
+namespace OCA\News\Http;
+
+use \OCP\AppFramework\Http\Response;
+
+/**
+ * Just outputs text to the browser
+ */
+class TextResponse extends Response {
+
+ private $content;
+
+ /**
+ * Creates a response that just outputs text
+ * @param string $content the content that should be written into the file
+ * @param string $contentType the mimetype. text/ is added automatically so
+ * only plain or html can be added to get text/plain or text/html
+ */
+ public function __construct($content, $contentType='plain'){
+ $this->content = $content;
+ $this->addHeader('Content-type', 'text/' . $contentType);
+ }
+
+
+ /**
+ * Simply sets the headers and returns the file contents
+ * @return string the file contents
+ */
+ public function render(){
+ return $this->content;
+ }
+
+
+}