Вход Регистрация
Файл: adultscript-2.0.3-pro/files/libraries/framework/download.php
Строк: 62
<?php
defined
('_VALID') or die('Restricted Access!');
class 
VDownload
{
    public static function 
force($file=NULL, $data=NULL, $name=NULL, $mime=NULL)
    {
        if (
$file && (!file_exists($file) OR !is_file($file))) {
            return 
FALSE;
        }
        
        
error_reporting(0);
        
        if (
$file) {
            
$size     = filesize($file);
            
$ext    = VFile::ext($file);
        } else {
            if (!
$data OR !$name) {
                return 
FALSE;
            }
            
            
$size    = filesize($file);
            
$ext    = 'force-download';
        }
        
        
$mimes     = VF::cfg('library.mimes');
        
$mime    = (isset($mimes[$ext])) ? $mimes[$ext]['0'] : 'application/force-download';

        
VResponse::add_header('Content-Type', $mime);
        
VResponse::add_header('Content-Disposition', 'attachment; filename="'.(($file) ? basename($file) : $name).'"');
        if (
VBrowser::get('name') == 'ie') {
            
VResponse::add_header('Expires', '0');
            
VResponse::add_header('Cache-Control', 'must-revalidate, post-check=0, pre-check=0');
            
VResponse::add_header('Pragma', 'public');
        } else {
            
VResponse::add_header('Expires', '0');
            
VResponse::add_header('Pragma', 'no-cache');
        }
        
VResponse::add_header('Content-Transfer-Encoding', 'binary');
        
VResponse::add_header('Content-Length', sprintf('%d', $size));
        
        @
ob_end_clean();
        
        
// this does not work on lighttpd/nginx
        
if (function_exists('apache_setenv')) {
            @
apache_setenv('no-gzip', 1);
        }
        
        
set_time_limit(1800);
        if(
ini_get('zlib.output_compression')) {
            
ini_set('zlib.output_compression', 'Off');
        }

        
VResponse::send_headers();
        if (
$file) {
            
readfile($file);
        } else {
            echo 
$data;
        }
        
        return 
TRUE;
    }
}
?>
Онлайн: 3
Реклама