aboutsummaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorChristian Weiske <cweiske@cweiske.de>2012-03-26 21:59:07 +0200
committerChristian Weiske <cweiske@cweiske.de>2012-03-26 21:59:07 +0200
commite3757ad55ac7f161d4de11e38fb57166a8ee85f7 (patch)
tree0dbdb3871c7a233474517a97194f29b59a03a904 /www
parent5f427dd38c8d47711ea73015076bb390761e05dd (diff)
downloadphorkie-e3757ad55ac7f161d4de11e38fb57166a8ee85f7.tar.gz
phorkie-e3757ad55ac7f161d4de11e38fb57166a8ee85f7.zip
raw download support
Diffstat (limited to 'www')
-rw-r--r--www/.htaccess1
-rw-r--r--www/raw.php21
2 files changed, 22 insertions, 0 deletions
diff --git a/www/.htaccess b/www/.htaccess
index f41e1bf..a57b34d 100644
--- a/www/.htaccess
+++ b/www/.htaccess
@@ -3,3 +3,4 @@ RewriteBase /
#RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^([0-9]+)$ /display.php?id=$1
+RewriteRule ^([0-9]+)/raw/(.+)$ /raw.php?id=$1&file=$2
diff --git a/www/raw.php b/www/raw.php
new file mode 100644
index 0000000..9128770
--- /dev/null
+++ b/www/raw.php
@@ -0,0 +1,21 @@
+<?php
+/**
+ * Displays a file
+ */
+namespace Phorkie;
+require_once 'www-header.php';
+$repo = new Repository();
+$repo->loadFromRequest();
+
+if (!isset($_GET['file']) || $_GET['file'] == '') {
+ throw new Exception_Input('File name missing');
+}
+
+$file = $repo->getFileByName($_GET['file']);
+$mimetype = $file->getMimeType();
+if ($mimetype === null) {
+ $mimetype = 'text/plain';
+}
+header('Content-Type: ' . $mimetype);
+readfile($file->path);
+?>