Файл: files/receiver/alpha_install.php
Строк: 36
<?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('management');
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('zip');
//Оригинальное название файла
$FileNameExp = $_FILES['file']['name'];
//Оригинальное название файла без расширения
$FileName = TEXT_PROCESSING(PREG_REPLACE('#.[^.]*$#', NULL, $FileNameExp));
$Exp = STRTOLOWER(PREG_REPLACE('#^.*.#', NULL, $FileNameExp));
//Фактическое название файла на сервере
$FactName = "".ADSL(MD5(RAND(1111111,9999999)))."";
//Временный файл
$TempName = $_FILES['file']['tmp_name'];
//Размер файла
$Size = FILESIZE($TempName);
//Папка куда будут загружаться файлы
$UploadDir = ROOT."/files/upload/alpha_install/";
//Проверка расширения файла
$FileExtension = PATHINFO($FileNameExp, PATHINFO_EXTENSION);
$err_data = 0;
//Принудительно устанавливаем права 777 на папку
@CHMOD($UploadDir, 0777);
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'><i class='fa fa-exclamation-triangle fa-fw'></i> ".LG($error)."</div>";
}ELSE{
//Сохраняем файл если все хорошо
$CopyFile = COPY($TempName, "".$UploadDir."".$FactName.".zip");
IF (!$CopyFile) {
ECHO "<div class='file-upload-progress'><i class='fa fa-exclamation-triangle fa-fw'></i> ".LG('Неизвестная ошибка')."</div>";
}ELSE{
DB::GET_ADD("INSERT INTO `PANEL_ALPHA_INSTALL` (`SIZE`, `NAME`, `FACT_NAME`, `EXT`, `TIME`) VALUES('".$Size."', '".$FileName."', '".$FactName."', '".$Exp."', '".TIME()."')");
//Отправляем запрос на обновление списка подгруженных файлов если успешно
?>
<script>
var data = "/panel/?path=system§ion=alpha_install";
var toLoad = data+' #file-content';
$("#file-content").load(toLoad);
</script>
<?
}
}
}ELSE{
REDIRECT('/index');
}
?>