Proyectos de Subversion Moodle

Rev

Rev 1 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1 Rev 1441
Línea 611... Línea 611...
611
     * @param int $lifetime Number of seconds before the file should expire from caches (null means $CFG->filelifetime)
611
     * @param int $lifetime Number of seconds before the file should expire from caches (null means $CFG->filelifetime)
612
     * @param int $filter 0 (default)=no filtering, 1=all files, 2=html files only
612
     * @param int $filter 0 (default)=no filtering, 1=all files, 2=html files only
613
     * @param bool $forcedownload If true (default false), forces download of file rather than view in browser/plugin
613
     * @param bool $forcedownload If true (default false), forces download of file rather than view in browser/plugin
614
     * @param array $options additional options affecting the file serving
614
     * @param array $options additional options affecting the file serving
615
     */
615
     */
616
    public function send_file($storedfile, $lifetime=null , $filter=0, $forcedownload=false, array $options = null) {
616
    public function send_file($storedfile, $lifetime=null , $filter=0, $forcedownload=false, ?array $options = null) {
617
        $reference = $storedfile->get_reference();
617
        $reference = $storedfile->get_reference();
618
        $file = $this->get_rootpath() . ltrim($reference, '/');
618
        $file = $this->get_rootpath() . ltrim($reference, '/');
619
        if ($this->is_in_repository($reference) && is_readable($file)) {
619
        if ($this->is_in_repository($reference) && is_readable($file)) {
620
            $filename = $storedfile->get_filename();
620
            $filename = $storedfile->get_filename();
621
            if ($options && isset($options['filename'])) {
621
            if ($options && isset($options['filename'])) {
622
                $filename = $options['filename'];
622
                $filename = $options['filename'];
623
            }
623
            }
624
            $dontdie = ($options && isset($options['dontdie']));
624
            $dontdie = ($options && isset($options['dontdie']));
-
 
625
            // If the file is linked to the original then we should not cache it.
-
 
626
            $lifetime = 0;
625
            send_file($file, $filename, $lifetime , $filter, false, $forcedownload, '', $dontdie);
627
            send_file($file, $filename, $lifetime , $filter, false, $forcedownload, '', $dontdie);
626
        } else {
628
        } else {
627
            send_file_not_found();
629
            send_file_not_found();
628
        }
630
        }
629
    }
631
    }