. /** * This script delegates file serving to individual plugins * * @package core * @subpackage file * @copyright 2008 Petr Skoda (http://skodak.org) * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ // Disable moodle specific debug messages and any errors in output. if (!defined('NO_DEBUG_DISPLAY')) { define('NO_DEBUG_DISPLAY', true); } require_once('config.php'); require_once('lib/filelib.php'); if (empty($relativepath)) { $relativepath = get_file_argument(); } $forcedownload = optional_param('forcedownload', 0, PARAM_BOOL); $preview = optional_param('preview', null, PARAM_ALPHANUM); // Offline means download the file from the repository and serve it, even if it was an external link. // The repository may have to export the file to an offline format. $offline = optional_param('offline', 0, PARAM_BOOL); $embed = optional_param('embed', 0, PARAM_BOOL); // We need to set the page URL here because there are cases where file_pluginfile may display an // error directly on the page instead of throwing an exception, and this will generate a server // error if $PAGE->url is not defined. $PAGE->set_url(new \moodle_url($FULLME)); file_pluginfile($relativepath, $forcedownload, $preview, $offline, $embed);