Вход Регистрация
Файл: pages/smiles.php
Строк: 168
<?php
    
include '../engine/includes/start.php';
    
$set['title'] = 'Смайлы';

    include 
'engine/includes/head.php';

    
$i 0;

    
/*
    * пабличный скрипт. автор неизвестен
    */


    /*
    * Глобальный фикс =)
    */

    
if (!$admin && ($act != 'kat' || empty($act)))
    {
        
$act null;
    }



    switch(
$act)
    {
        default:
            
$sql->query("SELECT `id`, `name` FROM `smiles` WHERE `type` = 'kat'");

            if (
$sql->num_rows())
            {
                while(
$kat $sql->fetch())
                {
                    echo 
'<a href="?act=kat&amp;id='.$kat['id'].'"><div class="'.($i++ % 'p_m' 'p_t').'">'.$kat['name'].'</div></a>';
                }
            }
            else
            {
                echo 
'Пока смайлов нет';
            }

            if (
$admin)
            {
                echo 
'<a class="link" href="?act=add_kat">Добавить категорию</a>';
            }
        break;
        
        case 
'kat':
            
$sql->query("SELECT * FROM `smiles` WHERE `type` = 'kat'  AND `id` = $id");

            if (!
$sql->num_rows())
            {
                echo 
'not found';
                include 
incDir 'foot.php';
            }

            
$kat $sql->fetch();

            echo 
'<div class="menu_razd"><b>Директория</b>: '.$kat['name'].'</div>';
            if (
$admin)
            {
                echo 
'<a href="?act=new&amp;id='.$id.'" class="link">&raquo; Добавить смайл</a>';
            }

            
Core::get('page.class');

            
$total $sql->query("SELECT COUNT(*) FROM `smiles` WHERE `parent_id` = '$id'")->result();
            
$page = new page($total$set['p_str']);

            if (
$total == 0)
            {
                echo 
'<div class="err">Нет смайлов</div>';
            }

            
$sql->query("SELECT * FROM `smiles` WHERE `parent_id` = '$id' ORDER BY `id` ASC LIMIT ".$page->limit());
            while(
$post $sql->fetch())
            {
                echo 
'<img src="/style/smiles/'.$post['name'].'.gif" alt="'.$post['name'].'"/> '.$post['symbol'].' <br />';

                if (
$admin)
                {
                    echo 
'<a href="?act=del&amp;id='.$post['id'].'">удалить</a>'.
                        
' | <a href="?act=edit&amp;id='.$post['id'].'">редактировать</a><br />';
                }
                echo 
'<br />';
            }

            
$page->display('?act=kat&amp;id='.$id.'&amp;');

            echo 
'<a href="?act" class="link">Все категории</a>';
            if (
$admin)
            {
                echo 
                
'<a href="?act=edit_kat&amp;id='.$id.'" class="link">Редактировать</a>'.
                
'<a href="?act=del_kat&amp;id='.$id.'" class="link">Удалить категорию</a>';
            }
        break;

        case 
'new':
        if (
$admin)
        {
            if (isset(
$_FILES['file']))
            {
                
$type $_FILES['file']['type'];
                if (
$type !== 'image/jpeg' && $type!=='image/jpg' && $type!=='image/gif' && $type!=='image/png')
                
$err='Это не картинка.';
                
$name Core::form('name');
                
$name_len mb_strlen($name);
    
                if (
$name_len 1)
                    
$err='Слишком короткое название';
                if (
$name_len 32)
                    
$err='Слишком днинное название';

                if (
$sql->query("SELECT COUNT(*) FROM `smiles` WHERE `name` = '$name' and `type` ='smile'")->result() == 1)
                    
$err='Такой смайл уже есть';

                if (!isset(
$err))
                {
                    
$namef pathinfo($_FILES['file']['name'], PATHINFO_FILENAME);
                    
$tmp $_FILES['file']['tmp_name'];
                    
$sql->query("INSERT INTO `smiles` (`name`, `symbol`, `parent_id`, `type`) values('$namef', '$name', '$id', 'smile')");

                    
move_uploaded_file($tmpH.'style/smiles/'.$namef.'.gif');

                    echo 
'<div class="msg">Смайл успешно добавлен</div>';
                }
                else
                    echo 
Core::msg_show($err);
            }
            else
            {
                
?>
                <form method="post" action="?act=new&amp;id=<?=$id?>" enctype='multipart/form-data'>
                    Название:<br />
                    <input name="name" type="text" maxlength='32' value='' /><br />
                    Прикрепить картинку:<br />
                    <input type="file" name="file"/><br />
                    <input value='Добавить' type='submit' name='ok' /><br />
                </form>
                <?php
            
}
            echo 
'<a href="?act=kat&amp;id='.$id.'" class="link">&larr; Назад</a>';
        }
        break;

    case 
'edit':
        if (
$admin)
        {
            if (
$sql->query('SELECT COUNT(*) FROM `smiles` WHERE `id` = '.$id.' and `type` = "smile" LIMIT 1')->result() == 0)
                echo 
'Смайл не найден!';
            else
            {
                
$bm $sql->query('SELECT * FROM `smiles` WHERE `id` =  '.$id.' LIMIT 1')->fetch();
                if (isset(
$_POST['ok']))
                {
                    
$name Core::form('name');
                    
$name_len mb_strlen($name);

                    if (
$name_len 1)
                        echo 
'Название слишком короткое';
                    elseif (
$name_len 32)
                        echo 
'Название слишком длинное';
                    else
                    {
                        
$sql->query("UPDATE `smiles` SET `symbol` = '$name' WHERE `id` = '$bm[id]' LIMIT 1");
                        echo 
'<div class="msg">Смайл успешно отредактирован</div>';
                    }
                }
                else
                {
                    
?>
                    <form method='post' action='?act=edit&amp;id=<?=$id?>'>
                    <b>Название</b><br /><input type='text' name='name' value='<?=$bm['symbol']?>'/> <br />
                    <input type='submit' value='Сохранить' name='ok' /><br />
                    </form>
                    <?php
                
}
                echo 
'<a href="?act=kat&amp;id='.$bm['parent_id'].'">Назад</a>';
            }
        }
    break;

    case 
'del':
    if (
$admin)
    {
        if (
$sql->query("SELECT COUNT(*) FROM `smiles` WHERE `id` =  '$id' and `type`='smile' LIMIT 1")->result()==0)
            echo 
'Смайл не найден!';
        else
        {
            
$bm $sql->query("SELECT * FROM `smiles` WHERE `id` = '$id' LIMIT 1")->fetch();
            if (isset(
$_POST['ok']))
            {
                
$sql->query("DELETE FROM `smiles` WHERE `id` = '$id'");
                
unlink(H.'style/smiles/'.$bm['name'].'.gif');
                echo 
'<div class="msg">Смайл успешно удален</div>';
            }
            else
            {
                
?>
                Вы уверены, что хотите удалить этoт смайл?<br />
                <form method='post' action='?act=del&amp;id=<?=$id?>'>
                <input type='submit' name='ok' value='Да' />
                </form>
                <a href='?act=kat&amp;id=<?=$bm['parent_id']?>' class="link">Нет</a>
                <?php
            
}
        }
    }
    break;

    case 
'add_kat':
        if (
$moder)
        {
            if (isset(
$_POST['name']))
            {
                
$name Core::form('name');
                
$name_len mb_strlen($name);

                if (
$name_len 0)
                    echo 
'Название слишком короткое';
                elseif (
$name_len 50)
                    echo 
'Название слишком длинное';
                elseif (
$sql->query("SELECT COUNT(*) FROM `smiles` WHERE `name` = '$name'  and `type` = 'kat' LIMIT 1")->result() != 0)
                    echo 
'Такая категория уже есть!';
                else
                {
                    
$sql->query("INSERT INTO `smiles` (`name`, `type`, `parent_id`) values ('$name',  'kat',  '0')");
                    echo 
'<div class="msg">Категория успешно добавлена</div>';
                }
            }
            else
            {
                
?>
                <form method='post' action='?act=add_kat'>
                Название:<br />
                <input type='text' name='name' value=''/><br />
                <input type='submit' value='Создать'/>
                </form>
                <?php
            
}
            echo 
'<a href="?act" class="link">Назад</a>';
        }
    break;

    case 
'edit_kat':
        if (
$admin)
        {
            if (
$sql->query("SELECT COUNT(*) FROM `smiles` WHERE `id` = '$id' and `type` = 'kat' LIMIT 1")->result()==0)
                echo 
'Категория не найдена!';
            else
            {
                
$bm $sql->query("SELECT * FROM `smiles` WHERE `id` = '$id' LIMIT 1")->fetch();
                if (isset(
$_POST['name']))
                {
                    
$name Core::form('name');
                    
$name_len mb_strlen($name);

                    if (
$name_len 1)
                        echo 
'Название слишком короткое';
                    elseif (
$name_len 50)
                        echo 
'Название слишком длинное';
                    else
                    {
                        
$sql->query("UPDATE `smiles` SET `name` = '$name' WHERE `id` = '$bm[id]' LIMIT 1");
                        echo 
'<div class="msg">Категория успешно отредактирована</div>';
                    }
                }
                else
                {
                    
?>
                    <form method='post' action='?act=edit_kat&amp;id=<?=$bm['id']?>'>
                    <b>Название</b><br />
                    <input type='text' name='name' value='<?=$bm['name']?>'/> <br />
                    <input type='submit' value='Сохранить'/><br />
                    </form>
                    <?php
                
}
            }
            echo 
'<a href="?act" class="link">Назад</a>';
        }
    break;

    case 
'del_kat':
        if (
$admin)
        {
            if (
$sql->query("SELECT COUNT(*) FROM `smiles` WHERE `id` = '$id' and `type` = 'kat' LIMIT 1")->result()==0)
                echo 
'Категория не найдена!';
            elseif (
$sql->query("SELECT COUNT(*) FROM `smiles` WHERE `parent_id` = '$id'")->result() > 0)
                echo 
'Категория не пуста';
            else
            {
                
$bm $sql->query("SELECT * FROM `smiles` WHERE `id` = '$id' LIMIT 1")->fetch();
                if (isset(
$_POST['ok']))
                {
                    
$sql->query("SELECT `name` FROM `smiles` WHERE `parent_id` = '$bm[id]'");
                    while (
$f $sql->result())
                    {
                        
unlink(H.'style/smiles/'.$f['name'].'.gif');
                    }

                    
$sql->query("DELETE FROM `smiles` WHERE `parent_id` = '$bm[id]'");
                    
$sql->query("DELETE FROM `smiles` WHERE `id` = '$bm[id]'");
                    echo 
'<div class="msg">Категория успешно удалена</div>';
                }
                else
                {
                    
?>Вы уверены, что хотите удалить эту категорию?<br />
                    <form method='post' action='?act=del_kat&amp;id=<?=$bm['id']?>'>
                    <input type='submit' name='ok' value='Да' />
                    </form>
                    <?php
                
}
                echo 
'<a href="?act" class="link">Назад</a>';
            }
        }
        break;
    }
    
    echo 
        
'<a href="?" class="link">Смайлы</a>'.
        
'<a href="bbcodes.php" class="link">Бб коды</a>'.
        
'<a href="/" class="link">Главная</a>';

    include 
'../engine/includes/foot.php';
Онлайн: 3
Реклама