MDL-32471 preview thumbnails support for blocks
authorDavid Mudrak <david@moodle.com>
Tue, 24 Apr 2012 12:01:53 +0000 (14:01 +0200)
committerDavid Mudrak <david@moodle.com>
Tue, 24 Apr 2012 12:01:53 +0000 (14:01 +0200)
block_xxx_pluginfile() now accepts the $options parameter that is to be passed
to the send_stored_file() function.

blocks/html/lib.php
blocks/upgrade.txt
lib/filelib.php

index 17d98ce..a2555c3 100644 (file)
  * @param string $filearea file area
  * @param array $args extra arguments
  * @param bool $forcedownload whether or not force download
+ * @param array $options additional options affecting the file serving
  * @return bool
  */
-function block_html_pluginfile($course, $birecord_or_cm, $context, $filearea, $args, $forcedownload) {
+function block_html_pluginfile($course, $birecord_or_cm, $context, $filearea, $args, $forcedownload, array $options=array()) {
     global $SCRIPT;
 
     if ($context->contextlevel != CONTEXT_BLOCK) {
@@ -64,7 +65,7 @@ function block_html_pluginfile($course, $birecord_or_cm, $context, $filearea, $a
     }
 
     session_get_instance()->write_close();
-    send_stored_file($file, 60*60, 0, $forcedownload);
+    send_stored_file($file, 60*60, 0, $forcedownload, $options);
 }
 
 /**
index a87cbf8..b7e288e 100644 (file)
@@ -1,6 +1,12 @@
 This files describes API changes in /blocks/* - activity modules,
 information provided here is intended especially for developers.
 
+=== 2.3 ===
+
+required changes in code:
+* block_xxx_pluginfile() is now given the 7th parameter (hopefully the last one) that
+  contains additional options for the file serving. The array should be re-passed
+  to send_stored_file().
 
 === 2.0 ===
 
index 1d4a019..3109398 100644 (file)
@@ -3976,7 +3976,7 @@ function file_pluginfile($relativepath, $forcedownload, $preview = null) {
         $filefunction = $component.'_pluginfile';
         if (function_exists($filefunction)) {
             // if the function exists, it must send the file and terminate. Whatever it returns leads to "not found"
-            $filefunction($course, $birecord, $context, $filearea, $args, $forcedownload);
+            $filefunction($course, $birecord, $context, $filearea, $args, $forcedownload, array('preview' => $preview));
         }
 
         send_file_not_found();