From 138348bbd1318a3bc2ee5112eee44d385b21751e Mon Sep 17 00:00:00 2001
From: Malf Furious <m@lfurio.us>
Date: Sun, 4 Jun 2017 14:45:23 -0400
Subject: Update df function serveResource()

Added optional parameter for resource's filename.  If given, a
Content-Disposition header will be delivered to the client.
---
 app/df.php | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

(limited to 'app/df.php')

diff --git a/app/df.php b/app/df.php
index a425d57..9581cae 100644
--- a/app/df.php
+++ b/app/df.php
@@ -31,15 +31,19 @@ require_once "class/user.class.php";
  * request.  When finished, this function will exit PHP and terminate
  * this script.
  */
-function serveResource(string $uri) : void
+function serveResource(string $uri, ?string $filename = NULL) : void
 {
     $f = fopen($uri, "rb");
 
     if (!$f)
         exit;
 
-    header("Content-type: " . mime_content_type($uri));
-    header("Content-length: " . filesize($uri));
+    header("Content-Type: " . mime_content_type($uri));
+    header("Content-Length: " . filesize($uri));
+
+    if ($filename)
+        header("Content-Disposition: attachment; filename='" . $filename . "'");
+
     fpassthru($f);
     fclose($f);
 
-- 
cgit v1.2.3