Файл: 2/3020.ru/modules/files/plugins/delete_dir.php
Строк: 27
<?php
IF (GET('get') == "delete_dir_ok" && $id_dir > 0 && $pr3 != 3){
CSRF::GET_CHECK_VALID('get');
DB_FILTER();
IF ($account['ID'] == $user['ID'] || ACCESS('files_dir_delete', NULL, 1) || MANAGEMENT == 1){
IF (DB::GET_COLUMN("SELECT COUNT(`ID`) FROM `FILES_DIR` WHERE `ID_DIR` = '".$id_dir."' AND `USER_ID` = '".$account['ID']."'") == 1){
ERROR('Папка не может быть удалена, пока в ней есть хотябы одна папка', 'session');
REDIRECT('/modules/?path=files§ion=users&id='.$account['ID'].'&dir='.$id_dir);
}
IF (DB::GET_COLUMN("SELECT COUNT(`ID`) FROM `FILES` WHERE `ID_DIR` = '".$id_dir."' AND `USER_ID` = '".$account['ID']."'") > 20){
ERROR('Папка не может быть удалена, пока в ней более 20 файлов', 'session');
REDIRECT('/modules/?path=files§ion=users&id='.$account['ID'].'&dir='.$id_dir);
}
/*
-----------------------------------------------
Удаление комментариев и лайков к файлу из папки
-----------------------------------------------
*/
$data = DB::GET_STRING_ALL("SELECT `ID` FROM `FILES` WHERE `ID_DIR` = '".$id_dir."'");
WHILE ($list = $data->FETCH()){
DB::GET_SET("DELETE FROM `FILES_LIKES` WHERE `FILE_ID` = '".$list['ID']."'");
$data2 = DB::GET_STRING_ALL("SELECT `ID` FROM `FILES_COMMENTS` WHERE `FILE_ID` = '".$list['ID']."'");
WHILE ($list2 = $data2->FETCH()){
DB::GET_SET("DELETE FROM `FILES_COMMENTS_LIKES` WHERE `COMMENT_ID` = '".$list2['ID']."'");
DB::GET_SET("DELETE FROM `FILES_COMMENTS` WHERE `ID` = '".$list2['ID']."'");
DB::GET_SET("DELETE FROM `ATTACHMENTS` WHERE `ID_POST` = '".$list2['ID']."' AND `TYPE_POST` = 'files_comments'");
}
}
/*
------------------------
Удаление файлов из папки
------------------------
*/
$data = DB::GET_STRING_ALL("SELECT `ID`,`EXT` FROM `FILES` WHERE `ID_DIR` = '".$id_dir."' AND `USER_ID` = '".$account['ID']."'");
WHILE ($list = $data->FETCH()){
@UNLINK(ROOT.'/files/upload/files/source/'.$list['ID'].'.'.$list['EXT']);
DB::GET_SET("DELETE FROM `FILES_SHOW` WHERE `FILE_ID` = '".$list['ID']."' AND `USER_ID` = '".$account['ID']."'");
DB::GET_SET("DELETE FROM `FILES` WHERE `ID` = '".$list['ID']."' AND `USER_ID` = '".$account['ID']."'");
}
/*
--------------------
Удаление самой папки
--------------------
*/
DB::GET_SET("DELETE FROM `FILES_DIR` WHERE `ID` = '".$id_dir."' AND `USER_ID` = '".$account['ID']."'");
IF (ACCESS('files_dir_delete', NULL, 1) || MANAGEMENT == 1){
LOGS('Файлы - удаление альбома '.$account['LOGIN'], $user['ID']);
}
SUCCESS('Папка успешно удалена', 'session');
REDIRECT('/modules/?path=files§ion=users&id='.$account['ID'].'&dir='.$id_dir);
}
}
IF (GET('get') == "delete_dir" && $id_dir > 0 && $pr3 != 3){
CSRF::GET_CHECK_VALID('get');
IF ($account['ID'] == $user['ID'] || ACCESS('files_dir_delete', NULL, 1) || MANAGEMENT == 1){
ECHO "<div class='list'>";
ECHO "".LG('Вы действительно хотите удалить альбом')." <b>".TEXT_ABSOLUTE($dir['NAME'])."</b>?<br /><br />";
ECHO "<a href='/modules/?path=files§ion=users&id=".$account['ID']."&get=delete_dir_ok&dir=".$id_dir."&".$token_url."' class='btn'>".ICONS('trash', 15, 'fa-fw')."".LG('Удалить')."</a>";
ECHO "<a href='/modules/?path=files§ion=users&id=".$account['ID']."&dir=".$id_dir."' class='btn-o'>".LG('Отменить')."</a>";
ECHO "</div>";
}
}
?>