Размер файла: 12.13Kb
<? php #-----------------------------------------------------# # ********* ROTORCMS ********* # # Made by : VANTUZ # # E-mail : visavi.net@mail.ru # # Site : http://pizdec.ru # # WAP-Site : http://visavi.net # # ICQ : 36-44-66 # # Вы не имеете право вносить изменения в код скрипта # # для его дальнейшего распространения # #-----------------------------------------------------# require_once ( '../includes/start.php' ); require_once ( '../includes/functions.php' ); require_once ( '../includes/header.php' ); include_once ( '../themes/header.php' ); if ( isset ( $_GET [ 'act' ])) { $act = check ( $_GET [ 'act' ]); } else { $act = 'freeavatars' ; } if ( isset ( $_GET [ 'start' ])) { $start = abs ( intval ( $_GET [ 'start' ])); } else { $start = 0 ; } if ( isset ( $_GET [ 'id' ])) { $id = abs ( intval ( $_GET [ 'id' ])); } else { $id = 0 ; } if ( isset ( $_GET [ 'ref' ])) { $ref = check ( $_GET [ 'ref' ]); } else { $ref = 'freeavatars' ; } if ( is_admin ( array ( 101 , 102 ))) { show_title ( 'site.png' , 'Управление аватарами' ); $config [ 'newtitle' ] = 'Управление аватарами' ; switch ( $act ): ############################################################################################ ## Бесплатные аватары ## ############################################################################################ case 'freeavatars' : echo '<b>Бесплатные аватары</b> | <a href="avatars.php?act=payavatars&' . SID . '">Платные аватары</a><br /><br />' ; $total = DB :: run () -> querySingle ( "SELECT count(*) FROM `avatars` WHERE `avatars_cats`=?;" , array ( 1 )); if ( $total > 0 ) { if ( $start >= $total ) { $start = 0 ; } $queryavatars = DB :: run () -> query ( "SELECT * FROM `avatars` WHERE `avatars_cats`=? ORDER BY `avatars_id` ASC LIMIT " . $start . ", " . $config [ 'avlist' ]. ";" , array ( 1 )); echo '<form action="avatars.php?act=del&ref=freeavatars&start=' . $start . '&uid=' . $_SESSION [ 'token' ]. '&' . SID . '" method="post">' ; while ( $data = $queryavatars -> fetch ()) { echo '<input type="checkbox" name="del[]" value="' . $data [ 'avatars_id' ]. '" /> <img src="' . BASEDIR . 'images/avatars/' . $data [ 'avatars_name' ]. '" alt="" /> — <b>' . $data [ 'avatars_name' ]. '</b><br />' ; } echo '<br /><input type="submit" value="Удалить выбранное" /></form>' ; page_strnavigation ( 'avatars.php?' , $config [ 'avlist' ], $start , $total ); echo 'Всего аватаров: <b>' . $total . '</b><br /><br />' ; } else { show_error ( 'В данной категории аватаров нет!' ); } echo '<img src="../images/img/download.gif" alt="image" /> <a href="avatars.php?act=add&ref=freeavatars&cats=1&start=' . $start . '&' . SID . '">Загрузить</a><br />' ; break ; ############################################################################################ ## Платные аватары ## ############################################################################################ case 'payavatars' : echo '<a href="avatars.php?act=freeavatars&' . SID . '">Бесплатные аватары</a> | <b>Платные аватары</b><br /><br />' ; $total = DB :: run () -> querySingle ( "SELECT count(*) FROM `avatars` WHERE `avatars_cats`=?;" , array ( 2 )); if ( $total > 0 ) { if ( $start >= $total ) { $start = 0 ; } $queryavatars = DB :: run () -> query ( "SELECT * FROM `avatars` WHERE `avatars_cats`=? ORDER BY `avatars_id` ASC LIMIT " . $start . ", " . $config [ 'avlist' ]. ";" , array ( 2 )); echo '<form action="avatars.php?act=del&ref=payavatars&start=' . $start . '&uid=' . $_SESSION [ 'token' ]. '&' . SID . '" method="post">' ; while ( $data = $queryavatars -> fetch ()) { echo '<input type="checkbox" name="del[]" value="' . $data [ 'avatars_id' ]. '" /> <img src="' . BASEDIR . 'images/avatars2/' . $data [ 'avatars_name' ]. '" alt="" /> — <b>' . $data [ 'avatars_name' ]. '</b><br />' ; } echo '<br /><input type="submit" value="Удалить выбранное" /></form>' ; page_strnavigation ( 'avatars.php?act=payavatars&' , $config [ 'avlist' ], $start , $total ); echo 'Всего аватаров: <b>' . $total . '</b><br /><br />' ; } else { show_error ( 'В данной категории аватаров нет!' ); } echo '<img src="../images/img/download.gif" alt="image" /> <a href="avatars.php?act=add&ref=payavatars&cats=2&start=' . $start . '&' . SID . '">Загрузить</a><br />' ; break ; ############################################################################################ ## Форма загрузки аватара ## ############################################################################################ case 'add' : $config [ 'newtitle' ] = 'Добавление аватара' ; if ( isset ( $_GET [ 'cats' ])) { $cats = abs ( intval ( $_GET [ 'cats' ])); } else { $cats = 0 ; } echo '<div class="form">' ; echo '<form action="avatars.php?act=load&start=' . $start . '&uid=' . $_SESSION [ 'token' ]. '&' . SID . '" method="post" enctype="multipart/form-data">' ; echo 'Категория:<br />' ; echo '<select name="cats">' ; $selected = ( $cats == 1 ) ? ' selected="selected"' : '' ; echo '<option value="1"' . $selected . '>Бесплатные аватары</option>' ; $selected = ( $cats == 2 ) ? ' selected="selected"' : '' ; echo '<option value="2"' . $selected . '>Платные аватары</option>' ; echo '</select><br />' ; echo 'Прикрепить аватар:<br /><input type="file" name="avatar" /><br />' ; echo '<input type="submit" value="Загрузить" /></form></div><br />' ; echo 'Разрешается добавлять аватары с расширением gif и png<br />' ; echo 'Весом не более ' . formatsize ( $config [ 'avatarweight' ]). ' и размером ' . $config [ 'avatarsize' ]. ' px<br /><br />' ; echo '<img src="../images/img/back.gif" alt="image" /> <a href="avatars.php?act=' . $ref . '&start=' . $start . '&' . SID . '">Вернуться</a><br />' ; break ; ############################################################################################ ## Загрузка аватара ## ############################################################################################ case 'load' : $config [ 'newtitle' ] = 'Результат добавления' ; $uid = check ( $_GET [ 'uid' ]); $cats = abs ( intval ( $_POST [ 'cats' ])); if ( $uid == $_SESSION [ 'token' ]) { if ( $cats == 1 || $cats == 2 ) { if ( is_uploaded_file ( $_FILES [ 'avatar' ][ 'tmp_name' ])) { $avatarname = check ( strtolower ( $_FILES [ 'avatar' ][ 'name' ])); $avatarsize = getimagesize ( $_FILES [ 'avatar' ][ 'tmp_name' ]); $ext = strrchr ( $avatarname , '.' ); if ( preg_match ( '|^[a-z0-9_\.\-]+$|i' , $avatarname )) { if ( strlen ( $avatarname ) >= 5 && strlen ( $avatarname ) <= 20 ) { $checkname = DB :: run () -> querySingle ( "SELECT `avatars_id` FROM `avatars` WHERE `avatars_name`=? AND `avatars_cats`=? LIMIT 1;" , array ( $avatarname , $cats )); if ( empty ( $checkname )) { if ( $ext == '.gif' || $ext == '.png' ) { if ( $_FILES [ 'avatar' ][ 'size' ] > 0 && $_FILES [ 'avatar' ][ 'size' ] <= $config [ 'avatarweight' ]) { if ( $avatarsize [ 0 ] == $config [ 'avatarsize' ] && $avatarsize [ 1 ] == $config [ 'avatarsize' ]) { DB :: run () -> query ( "INSERT INTO `avatars` (`avatars_cats`, `avatars_name`) VALUES (?, ?);" , array ( $cats , $avatarname )); if ( $cats == 1 ) { move_uploaded_file ( $_FILES [ 'avatar' ][ 'tmp_name' ], BASEDIR . 'images/avatars/' . $avatarname ); @chmod ( BASEDIR . 'images/avatars/' . $avatarname , 0666 ); $ref = 'freeavatars' ; } if ( $cats == 2 ) { move_uploaded_file ( $_FILES [ 'avatar' ][ 'tmp_name' ], BASEDIR . 'images/avatars2/' . $avatarname ); @chmod ( BASEDIR . 'images/avatars2/' . $avatarname , 0666 ); $ref = 'payavatars' ; } $_SESSION [ 'note' ] = 'Аватар успешно загружен!' ; redirect ( "avatars.php?act=$ref&start=$start&" . SID ); } else { show_error ( 'Ошибка! Размер изображения должен быть ' . $config [ 'avatarsize' ]. ' px!' ); } } else { show_error ( 'Ошибка! Вес изображения должен быть не более ' . formatsize ( $config [ 'avatarweight' ]). '!' ); } } else { show_error ( 'Ошибка! Недопустимое расширение (Разрешено gif и png)!' ); } } else { show_error ( 'Ошибка! Аватар с данным названием уже имеется на сайте!' ); } } else { show_error ( 'Слишком длинное или короткое имя аватара (Необходимо от 2 до 20 символов)!' ); } } else { show_error ( 'Ошибка! В названии изображения присутствуют недопустимые символы!' ); } } else { show_error ( 'Ошибка! Не удалось загрузить изображение!' ); } } else { show_error ( 'Ошибка! Вы не выбрали категорию для добавления аватара!' ); } } else { show_error ( 'Ошибка! Неверный идентификатор сессии, повторите действие!' ); } echo '<img src="../images/img/back.gif" alt="image" /> <a href="avatars.php?act=add&cats=' . $cats . '&start=' . $start . '&' . SID . '">Вернуться</a><br />' ; break ; ############################################################################################ ## Удаление аватаров ## ############################################################################################ case 'del' : $uid = check ( $_GET [ 'uid' ]); if ( isset ( $_POST [ 'del' ])) { $del = intar ( $_POST [ 'del' ]); } else { $del = 0 ; } if ( $uid == $_SESSION [ 'token' ]) { if (! empty ( $del )) { $del = implode ( ',' , $del ); $querydel = DB :: run () -> query ( "SELECT `avatars_cats`, `avatars_name` FROM `avatars` WHERE `avatars_id` IN (" . $del . ");" ); $arr_avatars = $querydel -> fetchAll (); DB :: run () -> query ( "DELETE FROM `avatars` WHERE `avatars_id` IN (" . $del . ");" ); foreach ( $arr_avatars as $delfile ) { if ( $delfile [ 'avatars_cats' ] == 1 ) { if (! empty ( $delfile [ 'avatars_name' ]) && file_exists ( BASEDIR . 'images/avatars/' . $delfile [ 'avatars_name' ])) { unlink ( BASEDIR . 'images/avatars/' . $delfile [ 'avatars_name' ]); } } if ( $delfile [ 'avatars_cats' ] == 2 ) { if (! empty ( $delfile [ 'avatars_name' ]) && file_exists ( BASEDIR . 'images/avatars2/' . $delfile [ 'avatars_name' ])) { unlink ( BASEDIR . 'images/avatars2/' . $delfile [ 'avatars_name' ]); } } } $_SESSION [ 'note' ] = 'Выбранные аватары успешно удалены!' ; redirect ( "avatars.php?act=$ref&start=$start&" . SID ); } else { show_error ( 'Ошибка! Отсутствуют выбранные аватары!' ); } } else { show_error ( 'Ошибка! Неверный идентификатор сессии, повторите действие!' ); } echo '<img src="../images/img/back.gif" alt="image" /> <a href="avatars.php?act=' . $ref . '&start=' . $start . '&' . SID . '">Вернуться</a><br />' ; break ; default : redirect ( "avatars.php?" . SID ); endswitch ; echo '<img src="../images/img/panel.gif" alt="image" /> <a href="index.php?' . SID . '">В админку</a><br />' ; } else { redirect ( BASEDIR . 'index.php?' . SID ); } include_once ( '../themes/footer.php' ); ?>