<?
$path=(function_exists('iconv'))?iconv('windows-1251', 'utf-8', $l):$l;
$path='/'.preg_replace('#^/+|/+$#i', null, $path).'/';

if (user_access('loads_file_import') && isset($_GET['act']) && $_GET['act']=='import' && isset($_POST['ok']) && isset($_POST['k_forms']) && $l!=null)
{

$k_forms=intval($_POST['k_forms']);
for ($i=0;$i<$k_forms;$i++)
{
if (isset($_POST["file_$i"]) && isset($_POST["name_$i"]) && isset($_POST["opis_$i"]))
{
$newfile=basename($_POST["file_$i"]);
if (preg_match('#^[^/]*.[^/]*$#',$newfile) && !preg_match('#^\.|\.php|\.name$|\.txt$|\.opis$|\.html?$|\.sql$|\.ini$|\.db$|\.dat$#',$newfile) && @copy($_POST["file_$i"], $dir_loads.'/'.$newfile))
{
if ($_POST["opis_$i"]!=NULL)
{
$f=@fopen($dir_loads.'/'.$newfile.'.opis', 'w');
@fwrite($f, stripslashes(htmlspecialchars(esc($_POST["opis_$i"]))));
@fclose($f);
@chmod($dir_loads.'/'.$newfile.'.opis', 0777);
}


@chmod($dir_loads.'/'.$newfile, 0777);
$f=@fopen($dir_loads.'/'.$newfile.'.name', 'w');

if ($_POST["name_$i"]!=NULL)$name=preg_replace('#\.[^\.]*$#i', NULL, $_POST["name_$i"]);
else $name=preg_replace('#\.[^\.]*$#i', NULL, $newfile); // имя файла без расширения
@fwrite($f, $name);
@fclose($f);
@chmod($dir_loads.'/'.$newfile.'.name', 0777);
msg ("Файл \"$name\" успешно импортирован");
admin_log('Загруз-центр','Добавление файлов',"Импортирован файл '$name' в папку '".dir_name($dir_loads)."'");
$size=filesize($dir_loads.'/'.$newfile);
mysql_query("INSERT INTO `loads_list` (`name`, `size`,  `path`, `time`) values('".my_esc($newfile)."', '$size', '".my_esc($path)."', '".filectime($dir_loads.'/'.$newfile)."')");


if (isset($_POST["scr_$i"]))
{
$file_scr=preg_replace('#^.*/#i', NULL, $_POST["scr_$i"]);


if (preg_match('#\.gif$|\.jpe?g$|\.png$#i',$file_scr))
{

$ras=strtolower(preg_replace('#^.*\.#i', NULL,$newfile));
$scr_ras=strtoupper(preg_replace('#^.*\.#i', NULL,$file_scr));
@copy($_POST["scr_$i"], $dir_loads.'/'.$newfile.'.'.$scr_ras);
}
}
}
else $err[]=($i+1).') Невозможно импортировать файл по указанному пути';
}

}

}



if (user_access('loads_file_upload') && isset($_GET['act']) && $_GET['act']=='upload' && isset($_POST['ok']) && isset($_POST['k_forms']) && $l!=null)
{
$k_forms=intval($_POST['k_forms']);
for ($i=0;$i<$k_forms;$i++)
{
if (isset($_FILES["file_$i"]) && !preg_match('#^\.|\.php|\.name$|\.txt$|\.opis$|\.html?$|\.sql$|\.ini$|\.db$|\.dat$#i',$_FILES["file_$i"]['name']) && filesize($_FILES["file_$i"]['tmp_name'])>0 && isset($_POST["opis_$i"]))
{

$newfile=tr_loads(retranslit($_FILES["file_$i"]['name']));
if (@copy($_FILES["file_$i"]['tmp_name'], $dir_loads.'/'.$newfile))
{
if ($_POST["opis_$i"]!=NULL)
{
$f=@fopen($dir_loads.'/'.$newfile.'.opis', 'w');
@fwrite($f, stripslashes(htmlspecialchars(esc($_POST["opis_$i"]))));
@fclose($f);
@chmod($dir_loads.'/'.$newfile.'.opis', 0777);
}


@chmod($dir_loads.'/'.$newfile, 0777);
$f=@fopen($dir_loads.'/'.$newfile.'.name', 'w');
$name=preg_replace('#\.[^\.]*$#i', NULL, $newfile); // имя файла без расширения
@fwrite($f, preg_replace('#\.[^\.]*$#i', NULL, esc($_FILES["file_$i"]['name'])));
@fclose($f);
@chmod($dir_loads.'/'.$newfile.'.name', 0777);
msg("Файл \"".stripslashes(htmlspecialchars(esc($_FILES["file_$i"]['name'])))."\" успешно выгружен");
admin_log('Загруз-центр','Добавление файлов',"Выгружен файл '$newfile' в папку '".dir_name($dir_loads)."'");

$size=filesize($dir_loads.'/'.$newfile);
mysql_query("INSERT INTO `loads_list` (`name`, `size`,  `path`, `time`) values('".my_esc($newfile)."', '$size', '".my_esc($path)."', '".filectime($dir_loads.'/'.$newfile)."')");



}

if (isset($_FILES["scr_$i"]) && preg_match('#\.gif$|\.jpe?g$|\.png$#i',$_FILES["scr_$i"]['name']) && filesize($_FILES["scr_$i"]['tmp_name'])>0)
{
$ras=strtolower(preg_replace('#^.*\.#i', NULL,$newfile));
$scr_ras=strtoupper(preg_replace('#^.*\.#i', NULL,$_FILES["scr_$i"]['name']));
@copy($_FILES["scr_$i"]['tmp_name'], $dir_loads.'/'.$newfile.'.'.$scr_ras);
}
}
}

}





if (user_access('loads_dir_delete') && isset($_GET['act']) && $_GET['act']=='delete_ok' && isset($_GET['ok']) && $l!=NULL)
{

if (@delete_dir($dir_loads))
{
$l=preg_replace("#^\.\./sys/loads/files#", NULL, $dir_loads);
$path=(function_exists('iconv'))?iconv('windows-1251', 'utf-8', $l):$l;
$path=preg_replace('#^/*|/*$#i', '/', $path);
$dir_loads=preg_replace('#/[^/]*$#', NULL, $dir_loads);
$l=preg_replace("#^\.\./sys/loads/files#", NULL, $dir_loads);


admin_log('Загруз-центр','Папки',"Удаление папки '$l'");
mysql_query("DELETE FROM `loads_list` WHERE `path` LIKE '".my_esc($path)."%'");
msg('Папка успешно удалена');
}
else
$err='Невозможно удалить папку';
}



if (user_access('loads_dir_mesto') && isset($_GET['act']) && $_GET['act']=='mesto' && isset($_GET['ok']) && isset($_POST['path']) && $l!=NULL)
{
if ($_POST['path']==NULL)
$err= "Не выбран коненый путь";
else
{

$new_dir=urldecode($_POST['path']).'/'.preg_replace('#^.*/#', NULL, $dir_loads);

if (@rename($dir_loads, $new_dir))
{
$dir_loads=$new_dir;
$l=preg_replace("#^\.\./sys/loads/files/#", NULL, $dir_loads);
msg('Папка успешно перемещена');
admin_log('Загруз-центр','Папки',"Перемещение папки '$l'");

$path2=(function_exists('iconv'))?iconv('windows-1251', 'utf-8', $l):$l;
$path2='/'.preg_replace('#^/+|/+$#i', null, $path2).'/';
$q=mysql_query("SELECT `path` FROM `loads_list` WHERE `path` LIKE '".my_esc($path)."%'");
while ($path_1=mysql_fetch_assoc($q)) {


mysql_query("UPDATE `loads_list` SET `path` = '".my_esc(str_replace($path,$path2,$path_1['path']))."' WHERE `path` = '".my_esc($path_1['path'])."'");
}




}
else
$err= "Невозможно переместить папку";
}
@unlink($dir_loads.'/.k_files');
}



if (user_access('loads_dir_rename') && isset($_GET['act']) && $_GET['act']=='rename' && isset($_GET['ok']) && isset($_POST['name']) && $l!=NULL)
{

if ($_POST['name']==NULL)
$err= "Введите название папки";
if( !preg_match("#^([A-zА-я0-9\-\_\(\)\ ])+$#ui", $_POST['name']))$err[]='В названии присутствуют запрещенные символы';
else
{

$newdir_serv=tr_loads(retranslit($_POST['name']));
$newdir_serv=preg_replace('#^\(([0-9]{1,3})\)_(.*)#','\\1_\\2',$newdir_serv);
$new_dir=preg_replace('#/[^/]*$#', NULL, $dir_loads).'/'.$newdir_serv;
if (@rename($dir_loads, $new_dir))
{
@chmod($dir_loads, 0777);
$dir_loads=$new_dir;
$l=preg_replace("#^\.\./sys/loads/files/#", NULL, $dir_loads);
msg('Папка успешно переименована');
$newdir_loads=esc($_POST['name'],1);
admin_log('Загруз-центр','Папки',"Переименование папки $newdir_loads в ".esc($_POST['name'],1));




$newdir_loads=preg_replace('#^\(([0-9]{1,3})\)_(.*)#','\\2',$newdir_loads);


$path2=(function_exists('iconv'))?iconv('windows-1251', 'utf-8', $l):$l;
$path2='/'.preg_replace('#^/+|/+$#i', null, $path2).'/';
$q=mysql_query("SELECT `path` FROM `loads_list` WHERE `path` LIKE '".my_esc($path)."%'");
while ($path_1=mysql_fetch_assoc($q)) {
mysql_query("UPDATE `loads_list` SET `path` = '".my_esc(str_replace($path,$path2,$path_1['path']))."' WHERE `path` = '".my_esc($path_1['path'])."'");
}

if ($f=@fopen($dir_loads.'/.dirname', 'w'))
{
@fwrite($f, $newdir_loads);
fclose($f);
@chmod($dir_loads.'/.dirname', 0777);
msg('Название папки задано');
}
else
{
$err= "Невозможно задать название папки";
}
}
else
$err= "Невозможно переименовать";
}
}



if (user_access('loads_dir_create') && isset($_GET['act']) && $_GET['act']=='mkdir' && isset($_GET['ok']) && isset($_POST['name']))
{

if ($_POST['name']==NULL)
$err= "Введите название папки";
if( !preg_match("#^([A-zА-я0-9\-\_\(\)\ ])+$#ui", $_POST['name']))$err[]='В названии присутствуют запрещенные символы';
else
{
$newdir_serv=tr_loads(retranslit($_POST['name']));

$newdir_serv=preg_replace('#^\(([0-9]{1,3})\)_(.*)#i','\\1_\\2',$newdir_serv);

if (@mkdir($dir_loads.'/'.$newdir_serv, 0777))
{
@chmod($dir_loads.'/'.$newdir_serv, 0777);

msg('Папка успешно создана');
$newdir_loads=esc($_POST['name'],1);

$newdir_loads=preg_replace('#^\(([0-9]{1,3})\)_(.*)#','\\2',$newdir_loads);
if ($f=@fopen($dir_loads.'/'.$newdir_serv.'/.dirname', 'w'))
{
@fwrite($f, $newdir_loads);
fclose($f);
@chmod($dir_loads.'/'.$newdir_serv.'/.dirname', 0777);
msg('Название папки задано');
admin_log('Загруз-центр','Папки',"Создание папки '$newdir_loads' в папке '".dir_name($dir_loads)."'");
}
else
{
$err= "Невозможно задать название папки";
}
}
else
$err= "Невозможно создать папку";
}
}

?>