Вход Регистрация
Файл: CMS/core/admin/gallery.php
Строк: 121
<?php

if (!defined('CMS')) { die('Access Denied!'); }

if (
is_admin()) {

    if (!empty(
$_GET['restatement'])) {

        if (
is_admin(array(101))) {

            if (!empty(
$_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {

                
$db->query("UPDATE ?_users_photos SET `photo_comments` = (SELECT COUNT(1) FROM ?_comments WHERE ?_users_photos.`photo_id` = ?_comments.`comm_post` AND ?_comments.`comm_type` = 'gallery');");

                
$db->query("UPDATE ?_users_battle SET `battle_comm` = (SELECT COUNT(1) FROM ?_comments WHERE ?_users_battle.`battle_id` = ?_comments.`comm_post` AND ?_comments.`comm_type` = 'battle');");

                
$inSes->addMessage('Комментарии успешно пересчитаны!''ok');

                
redirect('?m=gallery&page=' $page '&' RND);
            }
            else 
$inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
        }
        else 
$inSes->addMessage('Ошибка! Пересчитывать комментарии могут только суперадмины!');
    }

    if (!empty(
$_POST['del'])) {

        
$del intar($_POST['del']);

        if (!empty(
$_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {

            if (!empty(
$del)) {

                
$del is_array($del) ? $del : array($del);

                
$del implode(','$del);

                if (
is_writeable(ROOTPATH.'/upload/pictures') ) {

                    
$arr_photo $db->select("SELECT * FROM ?_users_photos WHERE `photo_id` IN (" $del ");");

                    if (
count($arr_photo) > 0) {

                        foreach (
$arr_photo as $delete) {

                            
$db->query("DELETE FROM ?_users_photos WHERE `photo_id` = ? LIMIT 1;"$delete['photo_id']);

                            
$db->query("DELETE FROM ?_users_photos_rated WHERE `rated_photo` = ? LIMIT 1;"$delete['photo_id']);

                            
$db->query("DELETE FROM ?_users_battle_rated WHERE `rated_photo` = ? LIMIT 1;"$delete['photo_id']);

                            
$db->query("DELETE FROM ?_comments 
                                        WHERE (`comm_type` = 'gallery' OR `comm_type` = 'battle') 
                                        AND `comm_post` = ?;"
$delete['photo_id']);

                            
$db->query("DELETE FROM ?_users_battle
                                        WHERE `battle_photo_1` = ? OR `battle_photo_2` = ?"
$delete['photo_id'], $delete['photo_id']);

                            
unlink_image('upload/pictures/'$delete['photo_link']);
                        }

                        
$db->query("OPTIMIZE TABLE ?_users_photos, ?_users_photos_rated, ?_comments, ?_users_battle, ?_users_battle_rated;");

                        
$inSes->addMessage('Выбранные фотографии успешно удалены!''ok');

                        
redirect('?m=gallery&page=' $page '&' RND);
                    }
                    else 
$inSes->addMessage('Ошибка! Данных фотографий не существует!');
                }
                else 
$inSes->addMessage('Ошибка! Не установлены атрибуты доступа на дирекоторию с фотографиями!');
            }
            else 
$inSes->addMessage('Ошибка! Отсутствуют выбранные фотографии!');
        }
        else 
$inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
    }

    switch (
$mod):
    default:
        
show_header('Управление галереей');
        echo 
'<div class="b">';
        echo 
'<a href="#down">' icon('down.png') . '</a> ';
        echo 
'<a href="?m=gallery&amp;page=' $page '&amp;' RND '">Обновить</a> | ';
        echo 
'<a href="../gallery/' gen_uri('addphoto'''RND) . '">Добавить фото</a> | ';
        echo 
'<a href="../gallery/' gen_uri('index'''RND) . '">Обзор</a><br /></div>';

        
$onpage = !empty($config['photos_num']) ? num($config['photos_num']) : 10;

        if (
$page 1$from = ($page 1) * $onpage; else $from 0;

        
$rows $db->selectPage$total"SELECT * FROM ?_users_photos 
                                          ORDER BY `photo_time` DESC 
                                          LIMIT ?d, ?d"
$from$onpage);

        if (!empty(
$rows) && $total 0) {

            echo 
'<form action="?m=gallery&amp;page=' $page '&amp;rnd=' $_SESSION['token'] . '" method="post" name="gallery">';

            foreach(
$rows as $row) {

                
$size read_fileROOTPATH '/upload/pictures/' $row['photo_link'] );

                echo 
'<div class="b"><table><tr><td width="30%"><div id="gallery">';
                echo 
'<a href="/gallery/' gen_uri('photo'$row['photo_id'], 'page=' $page '&amp;' RND) . '">';
                echo 
resize_image('upload/pictures/'$row['photo_link'], $config['preview_size'], $row['photo_title']) . '</a></div></td>';

                echo 
'<td valign="top" width="70%" style="padding:5px;">' icon('photos.png''icons');
                echo 
'<b><a href="/gallery/' gen_uri('photo'$row['photo_id'], 'page=' $page '&amp;' RND) . '">'.$row['photo_title'].'</a></b> (' $size ') (' format_num($row['photo_rating']) . ')<br />';

                if (!empty(
$row['photo_text'])) {
                    echo 
bb_code($row['photo_text']).'<br />';
                }

                echo 
'<input type="checkbox" name="del[]" value="' $row['photo_id'] . '" /> ';
                echo 
'<a href="?m=edit_photos&amp;page=' $page '&amp;id=' $row['photo_id'] . '&amp;' RND '">Редактировать</a><br />';
                if (
$row['photo_battle'] == 1) echo '<b>Участвует на битвах</b><br />';
                echo 
'Добавлено: ' users_anketa($row['photo_user']) . ' (' get_date($row['photo_time']) . ')<br />';
                echo 
'<a href="/gallery/' gen_uri('photo'$row['photo_id'], 'page=' $page '#comm') . '">Комментарии</a> (' $row['photo_comments'] . ')';
                echo 
'</td></tr></table></div>';
            }
            echo 
'<div class="b">';
            echo 
'<input type="checkbox" name="master_box" title="Отметить всё" onclick="javascript:ckeck_uncheck_all()">';
            echo 
'<input type="submit" class="btns" value="Удалить выбранное" /></div></form>';

            echo 
show_pages('?m=gallery');

            echo 
'<div class="b">Всего фотографий: <b>' $total '</b><br /></div>';
        }
        else {
            
show_error('Фотографий еще нет!');
        }

        if (
is_admin(array(101))) {

            echo 
'<div class="b">' icon('mail.png');
            echo 
'<a href="?m=gallery&amp;restatement=1&amp;rnd=' $_SESSION['token'] . '">Пересчитать</a> | ';
            echo 
'<a href="?m=set_gallery&amp;' RND '">Настройки</a><br /></div>';
        }

        echo <<<JSCRIPT

<script language='JavaScript' type="text/javascript">
<!--
function ckeck_uncheck_all() {
    var frm = document.gallery;
    if(frm.master_box.checked == true){ frm.master_box.checked = false; }
    else{ frm.master_box.checked = true; }
    for (var i=0;i<frm.elements.length;i++) {
        var elmnt = frm.elements[i];
        if (elmnt.type=='checkbox') {
            if(frm.master_box.checked == true){ elmnt.checked=false; }
            else{ elmnt.checked=true; }
        }
    }
}
-->
</script>

JSCRIPT;

    break;
    case 
'edit_photos':

        
$photo $db->selectRow("SELECT * FROM ?_users_photos WHERE `photo_id` = ? LIMIT 1;"$id);

        if (!empty(
$photo)) {

            if (!empty(
$_POST['cancel'])) {

                
redirect('?m=gallery&' RND);
            }
            if (!empty(
$_POST['submit'])) {

                
$title  = !empty($_POST['title'])  ? check($_POST['title']) : '';
                
$text   = !empty($_POST['text'])   ? check($_POST['text'])  : '';
                
$closed = !empty($_POST['closed']) ? 0;
                
$battle = !empty($_POST['battle']) ? 0;

                if (!empty(
$_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {

                  if (
cms_strlen($title) >= && cms_strlen($title) <= 50) {

                    if (
cms_strlen($text) <= 1000) {

                      
$text antimat($text);
                      
$text smiles($text);

                      
$db->query("UPDATE ?_users_photos SET `photo_title` = ?, `photo_text` = ?, `photo_battle` = ?, `photo_closed` = ? 
                                  WHERE `photo_id` = ?;"
$title$text$battle$closed$id);

                      
$inSes->addMessage('Фотография успешно отредактирована!''ok');

                      
redirect('?m=gallery&' RND);
                    }
                    else 
$inSes->addMessage('Ошибка! Слишком длинное описание (Необходимо до 1000 символов)!');
                  }
                  else 
$inSes->addMessage('Ошибка! Слишком длинное или короткое название!');
                }
                else 
$inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
            }
            
show_header('Редактирование фотографии');
            
$photo['photo_text'] = str_replace('<br />'"n"nosmiles($photo['photo_text']));
            
$form = new cmsForm('?m=edit_photos&amp;id=' $id '&amp;rnd=' $_SESSION['token'] . '&amp;' RND'post');
            
$form->addText('Название:''title'$photo['photo_title']);
            
$form->addTextarea('Подпись к фото:''text'$photo['photo_text']);
            
$form->addCheckBox('Участвует в фото-битвах:''battle'$photo['photo_battle']);
            
$form->addCheckBox('Закрыть комментарии:''closed'$photo['photo_closed']);
            echo 
$form->Submit(array('Изменить','Отмена'), array('submit','cancel'));
            unset(
$form);
            echo 
'<div class="b">' icon('return.png');
            echo 
'<a href="?m=gallery&amp;' RND '">Вернуться</a></div>';

        }
        else {

            
$inSes->addMessage('Ошибка! Данной фотографии не существует!');

            
redirect('?m=gallery&' RND);
        }

    break;

    endswitch;

    echo 
'<div class="b">' icon('return.png') . ' <a href="?' RND '">В админку</a><br /></div>';

    
show_footer();
}
else {

    
redirect('/?' RND);
}

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