Файл: adultscript-2.0.3-pro/files/modules/video/components/download.php
Строк: 27
<?php
defined('_VALID') or die('Restricted Access!');
class VComponent_video_download extends VModule_video
{
private $video_id;
public function __construct()
{
parent::__construct();
$this->video_id = VUri::request(1);
}
public function render()
{
if (VCfg::get('video.download') != '1') {
die('Download disabled!');
}
$access = VCfg::get('video.view_access');
if ($access != 'all') {
VAuth::check($access, NULL, __('download-access', array($access)));
}
$this->db->query("SELECT url, server, ext, hd, mobile, allow_download, premium
FROM #__video
WHERE video_id = ".$this->video_id."
AND allow_download = '1'
AND premium = '0'
AND status = 1
LIMIT 1");
if ($this->db->affected_rows()) {
$video = $this->db->fetch_assoc();
} else {
// how did the user get here?
throw new VException('Application Error! Aborting...');
}
$this->db->query("UPDATE #__video
SET total_downloads = total_downloads+1
WHERE video_id = ".$this->video_id."
LIMIT 1");
if ($video['url'] == '') {
VHelper::load('module.video.stream');
$type = VUri::request(2);
if ($type == 'flv' or $type == 'mp4') {
$video_url = VHelper_video_stream::url(true, $this->video_id, $video['ext'], $video['server']);
$video_self = BASE_URL.'/media/videos/'.$video['ext'].'/'.$this->video_id.'.'.$video['ext'];
} elseif ($type == 'hd') {
$video_url = VHelper_video_stream::url(true, $this->video_id, $video['ext'], $video['server'], false, true);
$video_self = BASE_URL.'/media/videos/mp4/'.$this->video_id.'_hd.mp4';
} elseif ($type == 'mobile') {
$video_url = VHelper_video_stream::url_mobile(true, $this->video_id, $video['server']);
$video_self = BASE_URL.'/media/videos/mobile/'.$this->video_id.'.mp4';
} else {
$video_url = VHelper_video_stream::url(true, $this->video_id, $video['ext'], $video['server']);
$video_self = BASE_URL.'/media/videos/'.$video['ext'].'/'.$this->video_id.'.'.$video['ext'];
}
$video_url = urldecode($video_url);
} else {
$video_url = $video['url'];
}
if ($video_url == $video_self) {
if (!VDownload::force(str_replace(BASE_URL, BASE_DIR, $video_self))) {
header('HTTP/1.0 404 Not Found');
}
} else {
VF::redirect($video_url);
}
exit();
}
}