4
0

ext.php 861 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. if (!isset($_GET['f']) ||
  3. !isset($_GET['t'])) {
  4. header('HTTP/1.1 400 Bad Request');
  5. die();
  6. }
  7. require('../constants.php');
  8. $file_name = urldecode($_GET['f']);
  9. $file_type = $_GET['t'];
  10. $absolute_filename = EXTENSIONS_PATH . '/' . $file_name;
  11. switch ($file_type) {
  12. case 'css':
  13. header('Content-Type: text/css; charset=UTF-8');
  14. header('Content-Disposition: inline; filename="' . $file_name . '"');
  15. break;
  16. case 'js':
  17. header('Content-Type: application/javascript; charset=UTF-8');
  18. header('Content-Disposition: inline; filename="' . $file_name . '"');
  19. break;
  20. default:
  21. header('HTTP/1.1 400 Bad Request');
  22. die();
  23. }
  24. $mtime = @filemtime($absolute_filename);
  25. if ($mtime === false) {
  26. header('HTTP/1.1 404 Not Found');
  27. die();
  28. }
  29. require(LIB_PATH . '/http-conditional.php');
  30. if (!httpConditional($mtime, 604800, 2)) {
  31. readfile($absolute_filename);
  32. }