Вход Регистрация
Файл: adm_group.php
Строк: 340
<?php

/**
 * @author [FaNiska]
 * @copyright 2009
 * Загруз центр
 * Предложения, идеи, вопросы и об ошибках писать в icq 65-64-538 или на mobi-m-ru@ya.ru
 */
if (function_exists('set_time_limit'))
{
    
set_time_limit(99999);

}
ignore_user_abort(1);
include 
'inc/db_connect.php';
include 
'inc/function.php';
include 
'inc/set.php';
include 
'inc/adm_head.php';
require 
'inc/adm.php';
echo 
'<div class="title">Редактор группы</div>';
if (isset(
$_GET['id']) && isset($_GET['c']))
{
    
$id = valid_int($_GET['id']);
    
$table = clean($_GET['c']);
} else
{
    echo 
'<div>Ошибка при выборе группы.</div>';
    include 
'inc/adm_foot.php';
    exit();
}
$group_info = mysql_fetch_array(mysql_query('SELECT * FROM `' . $table . '` WHERE `id` = ' . $id . ' LIMIT 1'));
if (!
is_dir($group_info['s_name']))
{
    echo 
'<div>Группа не найдена.</div>';
    include 
'inc/adm_foot.php';
    exit();
}

$group_info['r_name'] = str_replace('*', '', $group_info['r_name']);
echo 
'<div>Группа <b>' . $group_info['r_name'] . '</b></div>';
echo 
'<div class="navi"> <a href="?c=' . $table . '&amp;id=' . $id . '&amp;act=about">описание</a> : <a href="?c=' . $table . '&amp;id=' . $id . '&amp;act=files">файлы</a> : <a href="?c=' . $table . '&amp;id=' . $id . '&amp;act=scren">скриншот</a></div>';

if (
$_GET['act'] == 'scren')
{
    if (isset(
$_GET['podact']) && $_GET['podact'] == 'del')
    {
        echo 
'<div>Вы действительно хотите удалить текущий скриншот группы?<br />
        <a href="?c=' 
. $table . '&amp;id=' . $id . '&amp;act=scren&amp;podact=del&amp;yes">ДА</a>|<a href="?c=' . $table . '&amp;id=' . $id . '&amp;act=scren">ОТМЕНА</a></div>';
        if (isset(
$_GET['yes']))
        {
            
$screenshot = basename($group_info['s_name']);
            
$screenshot = $group_info['s_name'] . '/' . $screenshot;
            @
unlink($screenshot . '.GIF');
            @
unlink($screenshot . '.PNG');
            @
unlink($screenshot . '.JPG');
            echo 
'<div>Скриншот группы удален!<br />
            <a href="?c=' 
. $table . '&amp;id=' . $id . '&amp;act=scren">назад</a></div>';
        }

    } elseif (isset(
$_GET['podact']) && $_GET['podact'] == 'imp')
    {
        if (isset(
$_POST['ok']) && isset($_POST['file']) && eregi("http://", $_POST['file']) && eregi('.gif$|.png$|.jpeg$|.jpg$', $_POST['file']))
        {
            
$newfile = ereg_replace('^.*/', null, $_POST["file"]);
            if (
eregi('gif', $newfile))
                
$ras = 'GIF';
            elseif (
eregi('jpg', $newfile))
                
$ras = 'JPG';
            elseif (
eregi('jpeg', $newfile))
                
$ras = 'JPG';
            elseif (
eregi('png', $newfile))
                
$ras = 'PNG';
            @
chmod($group_info['s_name'] . '/', 0777);
            
$screenshot = basename($group_info['s_name']);
            if (@
copy($_POST["file"], $group_info['s_name'] . '/' . $screenshot . '.' . $ras))
            {
                echo 
'<div>Скриншот импортирован! Сохранен по адресу <b>' . $group_info['s_name'] . '/' . $screenshot . '.' . $ras . '</b></div>';
            } else
            {
                echo 
'<div>Произошла ошибка. Не удалось импортировать скриншот. Возможно у папки группы cmod не 777</div>';
            }
        } elseif (isset(
$_POST['ok']) && isset($_POST['file']))
        {
            echo 
'<div>Произошла ошибка при импорте скриншота. Могут быть следующие причины:<br />
            1) Вы указали не прямой путь к изображению<br />
            2) Вы написали прямой адрес изображения без http://</div>'
;
        }

        echo 
"<form class="foot" enctype="multipart/form-data" action="" method="post">";

        echo 
"<b>Путь к файлу скриншота</b> (с http:// и только прямой адрес изобажения):<br />n";
        echo 
"<input name="file" type="text" /><br />n";
        echo 
"<input class="submit" name="ok" type="submit" value="Импортировать" /><br />n";
        echo 
"&laquo;<a href="?c=$table&amp;id=$id&act=scren">Отмена</a><br />n";
        echo 
"</form>";
    } elseif (isset(
$_GET['podact']) && $_GET['podact'] == 'upl')
    {


        echo 
"<form class="foot" enctype="multipart/form-data" action="" method="post">";
        if (isset(
$_POST['ok']))
        {
            if (isset(
$_FILES['file']) && eregi('.gif$|.png$|.jpeg$|.jpg$', $_FILES["file"]['name']) && filesize($_FILES["file"]['tmp_name']) > 0)
            {
                if (
eregi('gif', $_FILES["file"]['name']))
                    
$ras = 'GIF';
                elseif (
eregi('jpg', $_FILES["file"]['name']))
                    
$ras = 'JPG';
                elseif (
eregi('jpeg', $_FILES["file"]['name']))
                    
$ras = 'JPG';
                elseif (
eregi('png', $_FILES["file"]['name']))
                    
$ras = 'PNG';
                @
chmod($group_info['s_name'] . '/', 0777);
                
$screenshot = basename($group_info['s_name']);
                if (@
copy($_FILES["file"]['tmp_name'], $group_info['s_name'] . '/' . $screenshot . '.' . $ras))
                {
                    echo 
'<div>Скриншот выгружен! И расположился по адресу: <b>' . $group_info['s_name'] . '/' . $screenshot . '.' . $ras . '</b></div>';
                } else
                {
                    echo 
'<div>Ошибка! Не удалось выгрузить скриншот. Возможно у папки нет соответствующих прав (cmod 777)</div>';
                }
            } else
            {
                echo 
'<div>Ошибка! Файл должен иметь расширение gif, jpg или png.</div>';
            }
        } elseif (!isset(
$_POST['ok']))
        {
            echo 
"Файл (только изображение):<br />n";
            echo 
"<input name="file" type="file" /><br />n";

            echo 
"<input class="submit" name="ok" type="submit" value="Выгрузить" /><br />n";
            echo 
"&laquo;<a href="?c=$table&amp;id=$id&act=scren">Отмена</a><br />n";
            echo 
"</form>";
        }

    } elseif (!isset(
$_GET['podact']))
    {
        
$screenshot = basename($group_info['s_name']);
        
$screenshot = $group_info['s_name'] . '/' . $screenshot . '.';
        if (
is_file($screenshot . 'GIF'))
            echo 
"Скриншот:<br /><img src="{$screenshot}GIF" alt="$group_info[r_name]" /><br />n";
        elseif (
is_file($screenshot . 'JPG'))
            echo 
"Скриншот:<br /><img src="{$screenshot}JPG" alt="$group_info[r_name]" /><br />n";
        elseif (
is_file($screenshot . 'PNG'))
            echo 
"Скриншот:<br /><img src="{$screenshot}PNG" alt="$group_info[r_name]" /><br />n";


        echo 
'<hr /><div>
        <a href="?c=' 
. $table . '&amp;id=' . $id . '&amp;act=scren&amp;podact=del">удалить скриншот</a><br />
        <a href="?c=' 
. $table . '&amp;id=' . $id . '&amp;act=scren&amp;podact=imp">импортировать скриншот</a><br />
        <a href="?c=' 
. $table . '&amp;id=' . $id . '&amp;act=scren&amp;podact=upl">выгрузить скриншот</a><br /></div>';
    }
} elseif (
$_GET['act'] == 'about')
{
    if (isset(
$_POST['r_name']) && isset($_POST['about']))
    {
        
$name = '*' . $_POST['r_name'];
        
$about = $_POST['about'];
        
mysql_query("UPDATE `$table` SET `r_name`=" . quote_smart($name) . ", `about`=" . quote_smart($about) . " WHERE `id`=$id LIMIT 1;");
        echo 
'<div>Название и описание изменены</div>';
    }
    
$group_info = mysql_fetch_array(mysql_query('SELECT `r_name`, `about`, `gr_id` FROM `' . $table . '` WHERE `id` = ' . $id . ' LIMIT 1'));
    
$group_info['r_name'] = str_replace('*', '', $group_info['r_name']);
    echo 
'<form action="" method="post">
Название:<br />
<input type="text" value="' 
. $group_info['r_name'] . '" name="r_name" /><br />';
    echo 
'Описание:<br />
<input type="text" value="' 
. $group_info['about'] . '" name="about" /><br />';


    echo 
'<input type="submit" value="Изменить" />
</form>'
;
} elseif (
$_GET['act'] == 'files')
{
    if (isset(
$_GET['podact']))
    {
        
$fid = valid_int($_GET['fid']);
        
$file = mysql_fetch_array(mysql_query("SELECT * FROM `$table` WHERE `id`=$fid LIMIT 1"));
        if (
$_GET['podact'] == 'rename')
        {
            if (isset(
$_POST['name']))
            {
                
mysql_query("UPDATE `$table` SET `r_name`='*" . mysql_real_escape_string($_POST['name']) . "' WHERE `id`=$fid;");
                echo 
'<div>Переименование прошло успешно. Новое название - <b>' . $_POST['name'] . '</b></div>';
            } else
            {
                
$file['r_name'] = str_replace('*', '', $file['r_name']);
                echo 
'<form action="?c=' . $table . '&amp;fid=' . $fid . '&amp;podact=rename&amp;act=files&amp;id=' . $id . '" method="post">
Введите новое название (имя):
<input type="text" value="' 
. $file['r_name'] . '" name="name" />
<input type="submit" value="Изменить" />
</form>'
;
            }
        } elseif (
$_GET['podact'] == 'upload')
        {
            
$count_f = 0;
            if (isset(
$_POST['k_forms']) && isset($_POST['ok']))
            {
                
$k_forms = valid_int($_POST['k_forms']);
                for (
$i = 0; $i < $k_forms; $i++)
                {
                    if (isset(
$_FILES["file_$i"]) && !eregi('^.|.php|.name$|.txt$|.opis$|.html?$|.sql$|.ini$|.db$|.dat$', $_FILES["file_$i"]['name']) && filesize($_FILES["file_$i"]['tmp_name']) > 0)
                    {

                        
$newfile = retranslit(esc($_FILES["file_$i"]['name'], 1));
                        if (@
copy($_FILES["file_$i"]['tmp_name'], $group_info['s_name'] . '/' . $newfile))
                        {
                            @
chmod($group_info['s_name'] . '/' . $newfile, 0777);
                            
$name = eregi_replace('.[^.]*$', null, $newfile); // имя файла без расширения
                            
$pathinfo = pathinfo($group_info['s_name'] . '/' . $newfile);
                            
$ras = $pathinfo['extension']; // Расширение файла
                            
$size = filesize($group_info['s_name'] . '/' . $newfile); // размер файла
                            
mysql_query("REPLACE INTO `$table` (`id_p`, `type`, `r_name`, `s_name`, `f_ras`, `folder`, `size`, `up_time`) VALUES ('$id', '2', '*" . $name . "', '" . $group_info['s_name'] . "/" . $newfile . "', '$ras', '" . $group_info['s_name'] . "', '$size', '$time');");
                            
$count_f++;
                        }
                    }
                }
                echo 
"<div>Успешно выгруженных файлов $count_f</div>";
            } else
            {
                if (isset(
$_POST['k_forms']))
                    
$k_forms = valid_int($_POST['k_forms']);
                elseif (isset(
$_SESSION['k_forms']))
                    
$k_forms = valid_int($_SESSION['k_forms']);
                else
                    
$k_forms = 1;
                
$_SESSION['k_forms'] = $k_forms;
                echo 
"<form class="foot" enctype="multipart/form-data" action="?c=$table&amp;id=$id&act=files&amp;podact=upload" method="post">";
                echo 
"Количество выгружаемых файлов:<br />n";
                echo 
"<input type="text" name="k_forms" value="$k_forms"/><br />n";
                echo 
"<input class="submit" type="submit" value="Показать формы" /><br />n";
                for (
$i = 0; $i < $k_forms; $i++)
                {
                    echo 
"Файл (" . ($i + 1) . "):<br />n";
                    echo 
"<input name="file_$i" type="file" /><br />n";
                }
                echo 
"<input class="submit" name="ok" type="submit" value="Выгрузить" /><br />n";
                echo 
"&laquo;<a href="?c=$table&amp;id=$id&act=files">Отмена</a><br />n";
                echo 
"</form>";
            }


        } elseif (
$_GET['podact'] == 'import')
        {
            
$count_f = 0;
            if (isset(
$_POST['k_forms']) && isset($_POST['ok']))
            {
                
$k_forms = valid_int($_POST['k_forms']);
                for (
$i = 0; $i < $k_forms; $i++)
                {
                    if (isset(
$_POST["file_$i"]) && isset($_POST["name_$i"]) && isset($_POST["newfile_$i"]))
                    {
                        if (
$_POST["newfile_$i"] == null || empty($_POST["newfile_$i"]))
                        {
                            
$newfile = ereg_replace('^.*/', null, $_POST["file_$i"]);
                        } else
                        {
                            
$newfile = $_POST["newfile_$i"];
                        }
                        if (
ereg('^[^/]*.[^/]*$', $newfile) && !ereg('^.|.php|.name$|.txt$|.opis$|.html?$|.sql$|.ini$|.db$|.dat$', $newfile) && @copy($_POST["file_$i"], $group_info['s_name'] . '/' . $newfile))
                        {
                            @
chmod($group_info['s_name'] . '/' . $newfile, 0777);
                            if (
$_POST["name_$i"] != null)
                                
$name = eregi_replace('.[^.]*$', null, $_POST["name_$i"]);
                            else
                                
$name = eregi_replace('.[^.]*$', null, $newfile); // имя файла без расширения

                            
$pathinfo = pathinfo($group_info['s_name'] . '/' . $newfile);
                            
$ras = $pathinfo['extension']; // Расширение файла
                            
$size = filesize($group_info['s_name'] . '/' . $newfile); // размер файла
                            
mysql_query("REPLACE INTO `$table` (`id_p`, `type`, `r_name`, `s_name`, `f_ras`, `folder`, `size`, `up_time`) VALUES ('$id', '2', " . quote_smart($name) . ", '" . $group_info['s_name'] . "/" . $newfile . "', '$ras', '" . $group_info['s_name'] . "', '$size', '$time');");
                            
$count_f++;
                        }


                    }


                }
                echo 
"<div>Успешно импортированных файлов $count_f</div>";
            } else
            {
                if (isset(
$_POST['k_forms']))
                    
$k_forms = valid_int($_POST['k_forms']);
                elseif (isset(
$_SESSION['k_forms']))
                    
$k_forms = valid_int($_SESSION['k_forms']);
                else
                    
$k_forms = 1;
                
$_SESSION['k_forms'] = $k_forms;
                echo 
"<form class="foot" enctype="multipart/form-data" action="?c=$table&amp;id=$id&act=files&amp;podact=import" method="post">";
                echo 
"Количество импортируемых файлов:<br />n";
                echo 
"<input type="text" name="k_forms" value="$k_forms"/><br />n";
                echo 
"<input class="submit" type="submit" value="Показать формы" /><br />n";

                for (
$i = 0; $i < $k_forms; $i++)
                {
                    echo 
"<b>Путь к файлу (" . ($i + 1) . ")</b> (с http://):<br />n";
                    echo 
"<input name="file_$i" type="text" /><br />n";
                    echo 
"Сохранить как (не обязательно):<br />n";
                    echo 
"<input name="newfile_$i" type="text" /><br />n";
                    echo 
"Название в загрузках (не обязательно):<br />n";
                    echo 
"<input name="name_$i" type="text" /><br />n";
                }

                echo 
"<input class="submit" name="ok" type="submit" value="Импортировать" /><br />n";
                echo 
"&laquo;<a href="?c=$table&amp;id=$id&act=files">Отмена</a><br />n";
                echo 
"</form>";
                echo 
"<div><b>1)</b> <u>Путь к файлу</u> - нужно ввести полный прямой(!) адрес к файлу начиная с http://<br /> <b>2)</b> <u>Сохранить как</u> - нужно ввести новое имя файла с расширением, под которым он сохранится на сервере (Н-р: video.3gp , java_game.jar, proga.sis и т.д.). Если не понимаете, вводить это не обязательно.<br /><b>3)</b> <u>Название в загрузках</u> - новое название, с которым файл будет отображаться в загруз центре. Вводить не обязательно, т.к. это название можно изменить и после.</div>";
            }

        } elseif (
$_GET['podact'] == 'delete')
        {
            if (isset(
$_GET['fid']))
            {
                
$fid = valid_int($_GET['fid']);
                if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `$table` WHERE `id` = '$fid' && `type` = '2'"), 0) == 0)
                {
                    echo 
'<div>Ошибка! Выбранный вами файл не найден в базе.</div>';
                } elseif (isset(
$_GET['yes']))
                {
                    if (
$_GET['yes'] == 1)
                    {
                        
mysql_query("DELETE FROM `$table` WHERE `id` = $fid LIMIT 1;");
                        echo 
'<div>Файл успешно удален из базы.</div>';
                    } elseif (
$_GET['yes'] == 2)
                    {
                        
$file = mysql_fetch_array(mysql_query("SELECT `s_name`, `f_ras` FROM `$table` WHERE `id`=$fid"));
                        
$gif = str_replace(".$file[f_ras]", '.GIF', $file['s_name']);
                        
$jpg = str_replace(".$file[f_ras]", '.JPG', $file['s_name']);
                        
$png = str_replace(".$file[f_ras]", '.PNG', $file['s_name']);
                        
mysql_query("DELETE FROM `$table` WHERE `id` = $fid LIMIT 1;");
                        @
unlink($file['s_name']);
                        @
unlink($gif);
                        @
unlink($jpg);
                        @
unlink($png);
                        echo 
'<div>Файл успешно удален из базы и с сервера.</div>';
                    } else
                    {
                        echo 
'<div>Ошибка при выборе метода удаления.</div>';
                    }
                } else
                {
                    echo 
'<div><b>Вы действительно хотите удалить файл? Сделайте выбор.</b><br />
<a href="?c=' 
. $table . '&amp;id=' . $id . '&amp;act=files&amp;fid=' . $fid . '&amp;podact=delete&amp;yes=1">Удалить только с базы</a> | <a href="?c=' . $table . '&amp;id=' . $id . '&amp;act=files&amp;fid=' . $fid . '&amp;podact=delete&amp;yes=2">Удалить и с базы, и сервера</a> | <a href="?c=' . $table . '&amp;id=' . $id . '&amp;act=files">отмена</a></div>';
                }

            }

        }

    }
    
$s = mysql_query("SELECT * FROM `$table` WHERE `id_p`=$id");
    
$i = 0;
    echo 
'<table border="1" width="100%">';
    while (
$list = mysql_fetch_array($s))
    {
        
$i++;
        
$list['r_name'] = str_replace('*', '', $list['r_name']);
        echo 
"<tr><td>[$i] [$list[f_ras]] - $list[r_name] (" . size_file($list['size']) . ") </td><td> <a href='?c=$table&amp;id=$id&amp;act=files&amp;fid=$list[id]&amp;podact=rename'>переим.</a> : <a href='?c=$table&amp;id=$id&amp;act=files&amp;fid=$list[id]&amp;podact=delete'>удалить</a></td></tr>";

    }
    echo 
'</table><br />';
    echo 
'<div><a href="?c=' . $table . '&amp;id=' . $id . '&amp;act=files&amp;podact=upload">Загрузить файл</a> : <a href="?c=' . $table . '&amp;id=' . $id . '&amp;act=files&amp;podact=import">Импортировать файл</a> : </div><hr />';
}


include 
'inc/adm_foot.php';

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