Вход Регистрация
Файл: files/receiver/screensaver.php
Строк: 45
<?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']) && !EMPTY(HTTP_X_REQUESTED_WITH) && STRTOLOWER(HTTP_X_REQUESTED_WITH) == 'xmlhttprequest' || ISSET($_FILES['file']) && !EMPTY(HTTP_X_REQUESTED_WITH) && STRTOLOWER(HTTP_X_REQUESTED_WITH) == 'XMLHttpRequest'){
  
  
//Максимальный размер для выгрузки
  
$MaxFileSize CONFIG('MAXFILESIZE');
  
  
//Разрешенные форматы для выгрузки
  
$AllowFileExtension = ARRAY('jpg''jpeg''png''gif');
  
  
//Оригинальное название изображения
  
$FileNameExp $_FILES['file']['name'];
  
  
//Оригинальное название изображения без расширения
  
$FileName TEXT_PROCESSING(PREG_REPLACE('#.[^.]*$#'NULL$FileNameExp));
  
  
//Расширение изображения
  
$Exp STRTOLOWER(PREG_REPLACE('#^.*.#'NULL$FileNameExp));
  
  
//Фактическое название изображения на сервере
  
$FactName "".$user['ID']."_".RAND(11111,99999)."";
  
  
//Временный файл
  
$TempName $_FILES['file']['tmp_name'];
  
  
//Папка куда будут загружаться изображения
  
$UploadDir ROOT."/files/upload/screensaver/source/";
  
  
//Проверка расширения изображения
  
$FileExtension PATHINFO($FileNameExpPATHINFO_EXTENSION);
  
  
//Принудительно устанавливаем права 777 на папку
  
@CHMOD($UploadDir0777);
  
  
//Определяем ширину и высоту изображения
  
$xy GETIMAGESIZE($TempName);  
  
$width $xy[0]; 
  
$height $xy[1];  
  
  
$err_data 0;
  
  IF (
CONFIG('FILE_ACCESS') == 0) {
    
    
$error "Выгрузка файлов на сайте приостановлена администрацией";
    
$err_data 1;
  
  }
  
  IF (
$xy == FALSE) {
    
    
$error "Не удалось получить содержимое изображения";
    
$err_data 1;
  
  }
  
  IF (
$width 500) {
    
    
$error "Ширина изображения не может быть меньше 500px. Текущая ширина: ".$width."px";
    
$err_data 1;
  
  }
  
  IF (
$height 150) {
    
    
$error "Высота изображения не может быть меньше 150px. Текущая высота: ".$height."px";
    
$err_data 1;
  
  }
  
  IF (!
IN_ARRAY($FileExtension$AllowFileExtension)) {
    
    
$error "Неверный формат изображения";
    
$err_data 1;
  
  }
  
  
//Проверка размера изображения
  
IF (FILESIZE($TempName) > $MaxFileSize) {
    
    
$error "Размер загружаемого изображения превышает установленные ограничения. Размер должен быть не больше ".SIZE_FILE(CONFIG('MAXFILESIZE'))."";
    
$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> ".$error."</div>";
  
  }ELSE{
    
    
//Сохраняем изображение если все хорошо
    
$CopyFile COPY($TempName"".$UploadDir."".$FactName.".".$Exp."");
    
    IF (!
$CopyFile) {
      
      ECHO 
"<div class='file-upload-progress' style='color: red;'><i class='fa fa-exclamation-triangle fa-fw'></i> Неизвестная ошибка. Изображение не загружено</div>";
    
    }ELSE{
      
      
//Удаляем предыдущую заставку, если она была
      
@UNLINK(ROOT.'/files/upload/screensaver/source/'.$settings['SCREENSAVER'].'');
      @
UNLINK(ROOT.'/files/upload/screensaver/850x200/'.$settings['SCREENSAVER'].'');
      
      
CROP_IMAGE(ROOT.'/files/upload/screensaver/source/'.$FactName.'.'.$Exp.''ROOT.'/files/upload/screensaver/850x200/'.$FactName.'.jpg'850200);
      
      
DB::GET_SET("UPDATE `USERS_SETTINGS` SET `SCREENSAVER` = '".$FactName.".jpg' WHERE `USER_ID` = '".$user['ID']."' LIMIT 1");
      
      
//Отправляем запрос на обновление заставки если успешно
      
?>
      <script>
      var data = "/id<?=$user['ID']?>";
      var toLoad = data+' #sreensaver_upgrade';
      
      open_modal = 0;
      
      $("#sreensaver_upgrade").load(toLoad); 
      
      $("#screensaver").removeClass("open");
      
      setTimeout( function(){    
        
        $("#screensaver").parents(".overlay").removeClass("open");
      
      }, 5);
      
      $('#upload-screensaver-show').html('');
      
      </script>  
      <?
    
    
}
  
  }
  
}ELSE{
  
  
REDIRECT('/index');

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