Added Content-disposition header to help some browsers suggest the right
[moodle.git] / user / pix.php
1 <?PHP // $Id$
2       // This function fetches user pictures from the data directory
3       // Syntax:   pix.php/userid/f1.jpg or pix.php/userid/f2.jpg
4       //     OR:   ?file=userid/f1.jpg or ?file=userid/f2.jpg
6     require("../config.php");
8     $lifetime = 86400;
10     if (isset($file)) {
11         $PATH_INFO = $file;
13     } else if (!$PATH_INFO) {
14         $PATH_INFO = "";       // Will just show default picture
15     }
17     $args = get_slash_arguments();
18     $numargs = count($args);
20     if ($numargs == 2) {
21         $userid = (integer)$args[0];
22         $image  = $args[1];
23         $pathname = "$CFG->dataroot/users/$userid/$image";
24     } else {
25         $pathname = "$CFG->dirroot/user/default/f1.jpg";
26     }
28     $lastmodified = filemtime($pathname);
30     header("Last-Modified: " . gmdate("D, d M Y H:i:s", $lastmodified) . " GMT");
31     header("Expires: " . gmdate("D, d M Y H:i:s", time() + $lifetime) . " GMT");
32     header("Cache-control: max_age = $lifetime"); // a day
33     header("Pragma: ");
34     header("Content-disposition: inline; filename=$image");
35     header("Content-length: ".filesize($pathname));
36     header("Content-type: image/jpeg");
37     readfile("$pathname");
39     exit;
40 ?>