Вход Регистрация
Файл: adultscript-2.0.3-pro/files/modules/video/helpers/thumb.php
Строк: 105
<?php
defined
('_VALID') or die('Restricted Access!');
class 
VHelper_video_thumb
{
    public static function 
upload($video_id$thumbs=0$sizes = array(), $def_size null)
    {
        
$conn_id    self::connect($video_id);
        if (
$conn_id) {
            
$dir        path($video_id);
            
$uploaded    0;
            
$thumbs        = ($thumbs === 0) ? 20 $thumbs;
            foreach (
$sizes as $size => $value) {                  
                  for (
$thumb=1$thumb<=$thumbs$thumb++) {                      
                      
$src    = ($size == $def_size)
                          ? 
MEDIA_DIR.'/videos/tmb/'.$dir.'/'.$thumb.'.jpg'
                          
MEDIA_DIR.'/videos/tmb/'.$dir.'/'.$thumb.'.'.$size.'.jpg';
                      
$dst    = ($size == $def_size) ? $thumb.'.jpg' $thumb.'.'.$size.'.jpg';
                      if (
file_exists($src) && is_file($src) && is_readable($src)) {
                            if (
ftp_put($conn_id$dst$srcFTP_BINARY)) {
                                if (
ftp_site($conn_idsprintf('CHMOD %u %s'777$dst))) {
                                    ++
$uploaded;
                                }    
                            }
                      }
                  }
            }
            
              
$src    MEDIA_DIR.'/videos/tmb/'.path($video_id).'/player.jpg';
              
$dst    'player.jpg';
              if (
file_exists($src) && is_file($src) && is_readable($src)) {
                  if (
ftp_put($conn_id$dst$srcFTP_BINARY)) {
                      if (
ftp_site($conn_idsprintf('CHMOD %u %s'777$dst))) {
                            ++
$uploaded;
                        }    
                  }
            }
                        
            
ftp_close($conn_id);
            
            
$thumbs    $thumbs*count($sizes);
            
            return (
$uploaded === ($thumbs+1)) ? true false;
        }
    }

    public static function 
upload_player($video_id)
    {
        
$conn_id    self::connect($video_id);
        if (
$conn_id) {            
              
$src    MEDIA_DIR.'/videos/tmb/'.path($video_id).'/player.jpg';
              
$dst    'player.jpg';
              if (
file_exists($src) && is_file($src) && is_readable($src)) {
                  if (
ftp_put($conn_id$dst$srcFTP_BINARY)) {
                      if (
ftp_site($conn_idsprintf('CHMOD %u %s'777$dst))) {
                            
$uploaded    true;
                        }    
                  }
            }
            
            
ftp_close($conn_id);
            
            return (isset(
$uploaded)) ? true false;
        }
    }
    
    public static function 
delete($video_id$thumbs=0$sizes = array(), $def_size null)
    {
        
$conn_id    self::connect($video_id);
        if (
$conn_id) {
            
$dir    path($video_id);
            
$thumbs        = ($thumbs === 0) ? 20 $thumbs;
            foreach (
$sizes as $size => $value) {                  
                  for (
$thumb=1$thumb<=$thumbs$thumb++) {
                      
$thumb    = ($size == $def_size) ? $thumb.'.jpg' $thumb.'.'.$size.'.jpg';
                      @
ftp_delete($thumb);
                }
            }
            
            
ftp_close($conn_id);
        }
    }
    
    private static function 
connect($video_id)
    {
        
self::log($video_id'Initializing thumb server ...');
    
        
$host        VCfg::get('video.thumb_host');
        
$port        VCfg::get('video.thumb_port');
        
$username    VCfg::get('video.thumb_user');
        
$password    VCfg::get('video.thumb_pass');
        
$root        VCfg::get('video.thumb_root');
    
        
$conn_id    ftp_connect($host$port);
        if (!
$conn_id) {
            
self::log($video_id'Failed to connect to FTP server!');
            return 
FALSE;
        }
        
        if (!
ftp_login($conn_id$username$password)) {
            
self::log($video_id'Failed to login to FTP server!');
            return 
FALSE;
        }
        
        
// lets make sure base root does not contain a /
        
if ($root == '') {
            
$root    'media/videos/tmb';
        } else {
            if (
substr($root, -1) == '/') {
                
$root substr($root0, -1);
            }
        
            if (
$root{0} == '/') {
                
$root substr($root1);
            }
            
            
$root    $root.'/media/videos/tmb';
        }
        
        if (!
ftp_chdir($conn_id$root)) {
            
self::log($video_id'Failed to chdir to '.$root);
            return 
FALSE;
        }

        
$dir    path($video_id);
        
$cur    ftp_pwd($conn_id);
        if (!@
ftp_chdir($conn_id$dir)) {
            
$dirs explode('/'$dir);
            foreach (
$dirs as $folder) {
                if (!@
ftp_chdir($conn_id$folder)) {
                      @
ftp_mkdir($conn_id$folder);
                      @
ftp_chdir($conn_id$folder);
                }
            }
        }
            
        if (isset(
$cur[0]) && $cur[0] != '/') {
            
$cur    '/'.$cur;
        }

        
ftp_chdir($conn_id$cur);
        if (!@
ftp_chdir($conn_id$dir)) {
              
self::log($video_id'Failed to create thumb folder ('.$cur.'/'.$dir.'!');
              
ftp_close($conn_id);
              return 
false;
        }
        
        return 
$conn_id;
    }
    
    private static function 
log($video_id$data)
    {
        
file_put_contents(TMP_DIR.'/logs/'.$video_id.'.log'$data."n"FILE_APPEND);
    }
}
Онлайн: 0
Реклама