Вход Регистрация
Файл: obmen/inc/admin_act.php
Строк: 188
<?php

if (user_access('obmen_dir_delete') && isset($_GET['act']) && $_GET['act'] == 'delete' && isset($_GET['ok']) && $l != '/') {
    
$q $db->query('SELECT * FROM `obmennik_dir` WHERE `dir_osn` like "?e%"', [$l]);

    while (
$post $q->row()) {
        
$q2 $db->query('SELECT * FROM `obmennik_files` WHERE `id_dir` =?i', [$post['id']]);
        while (
$post2 $q2->row()) {
            if (
is_file('sys/obmen/files/' $post2['id'] . '.dat')) {
                
unlink('sys/obmen/files/' $post2['id'] . '.dat');
            }
            
array_map('unlink'glob('sys/obmen/screens/128/' $post2['id'] . '.*'));
            
array_map('unlink'glob('sys/obmen/screens/48/' $post2['id'] . '.*'));
        }
        
$db->query('DELETE FROM obmennik_dir, obmennik_files, obmennik_komm
USING
    obmennik_dir
    INNER JOIN obmennik_files ON obmennik_files.id_dir = obmennik_dir.id
    LEFT JOIN obmennik_komm ON obmennik_komm.id_file = obmennik_files.id
WHERE obmennik_dir.`id`=?i '
, [$post['id']]);
        
$db->query('OPTIMIZE TABLE `obmennik_dir`, `obmennik_files`, `obmennik_komm`');
    }

    
$q2 $db->query('SELECT `id` FROM `obmennik_files` WHERE `id_dir`=?i', [$dir_id['id']]);

    while (
$post $q2->row()) {
        if (
is_file('sys/obmen/files/' $post['id'] . '.dat')) {
            
unlink('sys/obmen/files/' $post['id'] . '.dat');
        }
        
array_map('unlink'glob('sys/obmen/screens/128/' $post['id'] . '.*'));
        
array_map('unlink'glob('sys/obmen/screens/48/' $post['id'] . '.*'));
    }

    
$db->query('DELETE FROM obmennik_dir, obmennik_files, obmennik_komm
USING
    obmennik_dir
    INNER JOIN obmennik_files ON obmennik_files.id_dir = obmennik_dir.id
    LEFT JOIN obmennik_komm ON obmennik_komm.id_file = obmennik_files.id
WHERE obmennik_dir.`id`=?i '
, [$dir_id['id']]);
    
$db->query('OPTIMIZE TABLE `obmennik_dir`, `obmennik_files`, `obmennik_komm`');

    
$l $dir_id['dir_osn'];
    
msg('Папка успешно удалена');
    
admin_log('Обменник''Удаление папки''Папка ' $dir_id['name'] . ' удалена');

    
$dir_id $db->query('SELECT * FROM `obmennik_dir` WHERE `dir`=? OR `dir`=? OR `dir`=? LIMIT ?i', ['/' $l$l '/'$l1])->row();
    
$id_dir=$dir_id['id'];
}

if (
user_access('obmen_dir_edit') && isset($_GET['act']) && $_GET['act'] == 'mesto' && isset($_GET['ok']) && isset($_POST['dir_osn']) && $l != '/') {
    if (!isset(
$_POST['dir_osn'])) {
        
$err"Не выбран коненый путь";
    } else {
        
$q $db->query('SELECT * FROM `obmennik_dir` WHERE `dir_osn` LIKE "?e%"', [$l]);
        while (
$post $q->row()) {
            
$new_dir_osn=preg_replace("#^$l/#"$_POST['dir_osn'], $post['dir_osn']).$dir_id['name'].'/';
            
$new_dir=$new_dir_osn.$post['name'];// $new_dir/', `dir_osn`='$new_dir_osn' WHERE `id` = '$post[id]' LIMIT 1
        
$db->query('UPDATE `obmennik_dir` SET `dir`=?, `dir_osn`=? WHERE `id`=?i LIMIT ?i',
                   [
$new_dir'/'$new_dir_osn$post['id'], 1]);
        }

        
$l trim($_POST['dir_osn']);
//'".$l."$dir_id[name]/', `dir_osn`='".$l."' WHERE `id` = '$dir_id[id]' LIMIT 1
    
$db->query('UPDATE `obmennik_dir` SET `dir`=?, `dir_osn`=? WHERE `id`=?i LIMIT ?i', [$l $dir_id['name'] . '/'$l$dir_id['id'], 1]);
        
admin_log('Обменник''Изменение папки'"Папка '$dir_id[name]' перемещена");
        
msg('Папка успешно перемещена');
        
$dir_id $db->query('SELECT * FROM `obmennik_dir` WHERE `id`=?i LIMIT ?i', [$dir_id['id'], 1])->row();
        
$id_dir $dir_id['id'];
    }
}

if (
user_access('obmen_dir_edit') && isset($_GET['act']) && $_GET['act']=='rename' && isset($_GET['ok']) && isset($_POST['name']) && $l!='/') {
    if (
$_POST['name']==null) {
        
$err[] = 'Введите название папки';
    } elseif (!
preg_match("#^([A-zА-я0-9-_() ])+$#ui"$_POST['name'])) {
        
$err[]='В названии присутствуют запрещенные символы';
    } else {
        
$newdir retranslit(esc($_POST['name'], 1));

        if (!isset(
$err)) {
            if (
$l != '/') {
                
$l .= '/';
            }
            
$downpath preg_replace('#[^/]*/$#'null$l);
// esc($_POST['name'],1)."' WHERE `dir` = '/$l' OR `dir` = '$l/' OR `dir` = '$l' LIMIT 1
            
$db->query('UPDATE `obmennik_dir` SET `name`=? WHERE `dir`=? OR `dir`=? OR `dir`=? LIMIT ?i',
                       [
esc($_POST['name'], 1), '/' $l$l '/'$l1]);
            
msg('Папка успешно переименована');
            
admin_log('Обменник''Изменение папки'"Папка '$dir_id[name]' переименована в '".esc($_POST['name'], 1)."'");

            
$l $downpath $newdir;
            
$dir_id $db->query('SELECT * FROM `obmennik_dir` WHERE `dir`=? OR `dir`=? OR `dir`=? LIMIT ?i', ['/' $l$l '/'$l1])->row();
            
$id_dir $dir_id['id'];
        }
    }
}

if (
user_access('obmen_dir_create') && isset($_GET['act']) && $_GET['act']=='mkdir' && isset($_GET['ok']) && isset($_POST['name'])) {
    if (!isset(
$_POST['name'])) {
        
$err[] = 'Введите название папки';
    } elseif (!
preg_match("#^([A-zА-я0-9-_() ])+$#ui"$_POST['name'])) {
        
$err[] = 'В названии присутствуют запрещенные символы';
    } else {
        
$newdir retranslit(esc($_POST['name'], 1));

        if (isset(
$_POST['upload']) && $_POST['upload']=='1') {
            
$upload =1;
        } else {
            
$upload 0;
        }

        if (!isset(
$_POST['ras']) || $_POST['ras']==null) {
            
$upload 0;
        }

        
$size 0;
        if (
$upload == && isset($_POST['size']) && isset($_POST['mn'])) {
            
$size intval($_POST['size']) * intval($_POST['mn']);
            if (
$upload_max_filesize<$size) {
                
$size $upload_max_filesize;
            }
        } else {
            
$upload=0;
        }

        
$ras trim($_POST['ras']);

        if (!isset(
$err)) {
            if (
$l != '/') {
                
$l .= '/';
            }
            
$db->query('INSERT INTO `obmennik_dir` (`name` , `ras` , `maxfilesize` , `dir` , `dir_osn` , `upload` ) VALUES ( ?, ?, ?i, ?, ?, ?string)',
                       [
esc($_POST['name'], 1), $ras$size$l $newdir '/'$l$upload]);
            
msg('Папка (' esc($_POST['name'], 1) . ') успешно создана');
            
admin_log('Обменник''Создание папки''Создана папка (' esc($_POST['name'], 1) . ')');
        }
    }
}









if (
user_access('obmen_dir_edit') && isset($_GET['act']) && $_GET['act']=='set' && isset($_GET['ok'])) {
    if (isset(
$_POST['upload']) && $_POST['upload']=='1') {
        
$upload=1;
    } else {
        
$upload=0;
    }

    if (!isset(
$_POST['ras']) || $_POST['ras']==null) {
        
$upload=0;
    }
    
$size=0;
    if (
$upload==&& isset($_POST['size']) && isset($_POST['mn'])) {
        
$size=intval($_POST['size'])*intval($_POST['mn']);
        if (
$upload_max_filesize<$size) {
            
$size=$upload_max_filesize;
        }
    } else {
        
$upload=0;
    }

// ShaMan
$ras=esc(stripcslashes(htmlspecialchars($_POST['ras'], 1)));
// Тут конец моих дум

if (!isset($err)) {
    if (
$l!='/') {
        
$l.='/';
    }
    
$db->query("UPDATE `obmennik_dir` SET `ras`='$ras', `maxfilesize`='$size', `upload`='$upload' WHERE `id` = '$dir_id[id]'");
    
msg('Параметры папки успешно изменены');
    
admin_log('Обменник''Изменение папки'"Изменены параметры папки '$dir_id[name]'");
    
$dir_id $db->query('SELECT * FROM `obmennik_dir` WHERE `id`=?i LIMIT ?i', [$dir_id['id'], 1])->row();
    
$id_dir=$dir_id['id'];
}
}
Онлайн: 2
Реклама