Вход Регистрация
Файл: files/receiver/video.php
Строк: 41
<?php 
  
/*
------------------------------------------------
AlphaCMS - универсальный движок для вашего сайта
E-mail администрации проекта: adm@alpha-cms.ru
Официальный сайт поддержки: alpha-cms.ru
Руководитель проекта: adm (ID 1)
------------------------------------------------
*/
  
FOREACH (ARRAY('config''connect''users') AS $connect) {
  
  INCLUDE_ONCE (
"../../system/connections/global/$connect.php"); 
  
}

ACCESS('users');

IF (ISSET(
$_FILES['file']) && AJAX() == TRUE){
  
  IF (
GET('dir') > 0){
    
    
$dir DB::GET_STRING("SELECT * FROM `VIDEOS_DIR` WHERE `ID` = '".INTVAL(GET('dir'))."' AND `USER_ID` = '".$user['ID']."' LIMIT 1");
    
    
$id $dir['ID'];
    
$private $dir['PRIVATE'];
    
  }ELSE{
    
    
$id 0;
    
$private 0;
  
  }
  
  
//Максимальный размер для выгрузки
  
$MaxFileSize CONFIG('MAXFILESIZE');
  
  
//Разрешенные форматы для выгрузки
  
$AllowFileExtension = ARRAY('mp4''avi''3gp''flv');
  
  
//Оригинальное название видео
  
$FileNameExp $_FILES['file']['name'];
  
  
//Оригинальное название видео без расширения
  
$FileName TEXT_PROCESSING(PREG_REPLACE('#.[^.]*$#'NULL$FileNameExp));
  
  
//Расширение видео
  
$Exp STRTOLOWER(PREG_REPLACE('#^.*.#'NULL$FileNameExp));
  
  
//Временный файл
  
$TempName $_FILES['file']['tmp_name'];
  
  
//Папка куда будут загружаться видео
  
$UploadDir ROOT."/files/upload/videos/source/";
  
  
//Проверка расширения видео
  
$FileExtension PATHINFO(STRTOLOWER($FileNameExp), PATHINFO_EXTENSION);
  
  
//Принудительно устанавливаем права 777 на папку
  
@CHMOD($UploadDir0777); 
  
  
$err_data 0;
  
  
//Настройки видео
  
$videos_settings = @PARSE_INI_FILE(ROOT."/system/config/videos.ini"FALSE);
  
  IF (
DB::GET_COLUMN("SELECT COUNT(*) FROM `VIDEOS` WHERE `USER_ID` = '".$user['ID']."'") >= $videos_settings['VIDEOS_LIMIT']){

    
$error "Вы исчерпали лимит на добавление видео";
    
$err_data 1;
    
  }

  IF (
DB::GET_COLUMN("SELECT COUNT(*) FROM `VIDEOS` WHERE `USER_ID` = '".$user['ID']."' AND `NAME` = '".$FileName."' AND `ID_DIR` = '".$id."' LIMIT 1") == 1){

    
$error "Видео с таким названием уже есть в этом альбоме";
    
$err_data 1;
    
  }
  
  IF (ISSET(
$dir) && !$dir['ID'] && GET('dir') > 0){

    
$error "Директории не существует";
    
$err_data 1;
  
  }
  
  IF (
CONFIG('FILE_ACCESS') == 0) {
    
    
$error "Выгрузка файлов на сайте приостановлена администрацией";
    
$err_data 1;
  
  }
  
  IF (!
IN_ARRAY($FileExtension$AllowFileExtension)) {
    
    
$error "Неверный формат видео";
    
$err_data 1;
  
  }
  
  
//Проверка размера видео
  
IF (FILESIZE($TempName) > $MaxFileSize) {
    
    
$error "Размер загружаемого видео превышает установленные ограничения";
    
$err_data 1;
  
  }
  
  IF (
STR($FileName) < 1) {
    
    
$error "Имя загружаемого видео не должно быть менее 1 символа";
    
$err_data 1;
  
  }

  IF (
STR($FileName) > 200) {
    
    
$error "Имя загружаемого видео не должно быть более 200 символов";
    
$err_data 1;
  
  }
  
  IF (
$err_data == 1){
    
    ECHO 
"<div class='file-upload-progress' style='color: red;'><i class='fa fa-exclamation-triangle fa-fw'></i> ".LG($error)."</div>";
  
  }ELSE{
    
    
$ID DB::GET_ADD("INSERT INTO `VIDEOS` (`NAME`, `USER_ID`, `EXT`, `SIZE`, `TIME`, `ID_DIR`) VALUES ('".$FileName."', '".$user['ID']."', '".$Exp."', '".FILESIZE($TempName)."', '".TIME()."', '".$id."')");
    
    
//Начисление баллов
    
BALLS_ADD('VIDEOS');
    
    
//Начисление рейтинга
    
RATING_ADD('VIDEOS_COMMENTS');
    
    
//Сохраняем видео если все хорошо
    
$CopyFile COPY($TempName"".$UploadDir."".$ID.".".$Exp."");
    
    IF (!
$CopyFile) {
      
      ECHO 
"<div class='file-upload-progress' style='color: red;'><i class='fa fa-exclamation-triangle fa-fw'></i> ".LG('Неизвестная ошибка')."</div>";
    
    }ELSE{
      
      
/*
      ---------------------------
      Получаем длительность видео
      ---------------------------
      */
      
      
$d FFMPEG::DURATION(ROOT.'/files/upload/videos/source/'.$ID.'.'.$Exp.'');
      
      
DB::GET_SET("UPDATE `VIDEOS` SET `DURATION` = '".$d."' WHERE `ID` = '".$ID."' LIMIT 1");
      
      
/*
      ------------------------------
      Отправляем подписчикам в ленту
      ------------------------------
      */
      
      
IF ($private == 0){
        
        
$data DB::GET_STRING_ALL("SELECT * FROM `SUBSCRIBERS` WHERE `USER_ID` = '".$user['ID']."'");
        
        WHILE (
$list $data->FETCH()){
          
          
DB::GET_ADD("INSERT INTO `TAPE` (`USER_ID`, `OBJECT_ID`, `OBJECT_ID_LIST`, `TIME`, `TYPE`) VALUES ('".$list['MY_ID']."', '".$ID."', '".$list['USER_ID']."', '".TIME()."', 'user_video')");
        
        } 
        
      }
      
      
/*
      ---------------------
      Делаем скриншот кадра
      ---------------------
      */
      
      
FFMPEG::SCREEN(ROOT.'/files/upload/videos/source/'.$ID.'.'.$Exp.''ROOT.'/files/upload/videos/screen/'.$ID.'.jpg''00:00:02');
      
      IF (
IS_FILE(ROOT.'/files/upload/videos/screen/'.$ID.'.jpg')){
        
        
CROP_IMAGE(ROOT.'/files/upload/videos/screen/'.$ID.'.jpg'ROOT.'/files/upload/videos/screen/240x240/'.$ID.'.jpg'240240);
        
      }
      
      
/*--------------------------*/
      
      //Отправляем запрос на обновление листа если успешно
      
?>
      <script>  
        
      var data = "/modules/?path=videos&section=users&id=<?=$user['ID']?>&dir=<?=$id?>";
      var toLoad = data+' #video_upgrade';
      
      open_modal = 0;
      
      $("#video_upgrade").load(toLoad); 
      
      $("#add_video").removeClass("open");
      
      setTimeout( function(){    
        
        $("#add_video").parents(".overlay").removeClass("open");
      
      }, 5);
      
      $('#upload-video-show').html('');
      
      </script>  
      <?
    
    
}
  
  }
  
}ELSE{
  
  
REDIRECT('/index');

}
 
?>
Онлайн: 1
Реклама