Просмотр файла publs_v1_0/admin.php

Размер файла: 8.71Kb
<?php
if (defined('BASEDIR')) {
	exit (header('Location: /index.php'));
}

$headmod = 'pub';
$textl = 'Библиотека';

require_once ('../includes/start.php');
require_once ('../includes/functions.php');
require_once ('../includes/header.php');
include_once ('../themes/header.php');

require_once ("./inc/conf.php");

if (isset($_GET['act'])) { $act = check($_GET['act']); } else { $act = 'index'; }
if (isset($_GET['start'])) { $start = abs(intval($_GET['start'])); } else { $start = 0; }
if (isset($_GET['id'])) { $id = abs(intval($_GET['id'])); } else { $id = 0; } 


$tot_mod = DB::run() -> querySingle("SELECT count(*) FROM `pub_arts` WHERE `moder`=? AND `type` = ?;", array("0", "file"));
$tot_zak = DB::run() -> querySingle("SELECT COUNT(*) FROM `pub_zak` WHERE `type` = '0';");


if (is_admin()) {

	switch ($act):
		#############################################################
		##                     Главная страница     			   ## 
		#############################################################
		case 'index':
			if (is_admin()) {
				echo '<ol class="breadcrumb">';
				echo '<li><a href="/index.php?"> <i class="fa fa-home fa-lg text-muted"></i> </a></li>';
				//echo '<li class=""><a href="index.php?">Публикации</a></li>';
				echo '<li class="active"><strong>Управление</strong></li>';
				echo '</ol> ';

				echo '<div class="gmenu"><p><ul>';
				echo '<li><a href="fileman.php?">Публ-Менеджер</a></li>';
				echo '<li><a href="?act=mod">Модерация</a> ('.$tot_mod.')</li>';
				echo '<li><a href="admin_zak.php?">Стол Заказов</a> ('.$tot_zak.')</li>';
				echo '<li><a href="admin_set.php?">Системные настройки</a></li>';
				echo '<li><a href="http://x29576yn.beget.tech/publs/index.php?">Посмотреть обновления</a></li>';
				echo '</ul></p></div>';
			} else {
				redirect("/index.php?err");
			}
		break;

		#############################################################
		##             Просмотр ожидающих модерации                ##
		#############################################################
		case 'mod':
			if (is_admin(array(101))) {
				$textl = 'Модерация статей';
				$config['newtitle'] = 'Ожидающие публикации';

				echo '<ol class="breadcrumb">';
				echo '<li><a href="/index.php?"> <i class="fa fa-home fa-lg text-muted"></i> </a></li>';
				echo '<li class=""><a href="admin.php?">Управление</a></li>';
				echo '<li class="active"><strong>Модерация</strong></li>';
				echo '</ol> ';

				if ($tot_mod > 0) {
					$BD = DB::run() -> query("SELECT * FROM `pub_arts` WHERE `moder` = '0' AND `type` = 'file' ORDER BY `name` ASC, `file` ASC LIMIT ".$start.",".$kol_file.";");
					$i = 0;
					while ($data = $BD -> fetch()) {
						echo '<div class="b">';
						echo '<i class="fa fa-file-text-o fa-lg text-muted"></i> ';
						echo '<span class="right"> ('.date_fixed($data['time']).') </span>';
						echo '<b><a href="?act=view&amp;id='.$data['id'].'">'.$data['name'].'</a></b> ';
						echo '<a class="h3 text-muted" href="read.php?id='.$data['id'].'"><strong>»</strong></a> <br />';
						echo '</div>';

						echo ($i % 2) ? '<div class="list1">' : '<div class="list2">';	++$i;
						echo '<div class="ml-5">'.bb_code(utf_substr($data['text'], 0, 200)).'...</div>';
						echo '<strong><i class="fa fa-user"></i>:</strong> '.profile($data['avtor']).' <br />';
						$dir = DB::run() -> QueryFetch("SELECT `name` FROM `pub_arts` WHERE `id` =?;", array ($data['fid']));
						echo '<i class="fa fa-folder-open" title = "Категория"></i>: <a href="index.php?id='.$data['fid'].'" title="Папка">'.$dir['name'].'</a> <br />';
						echo '<i class="fa fa-files-o" title = "Файлы"></i>: ';
						if (!empty($data['downs_link'])) {
							echo ' '.$data['downs_link'].' ('.read_file(BASEDIR.'/load/files/'.$data['downs_link']).')<br />';
						} else {
							echo ' <span style="color:#ff0000">Отсутствуют</span><br />';
						}
						/*
						if (!empty($data['downs_screen'])) {
							echo 'Скрин: '.$data['downs_screen'].' ('.read_file(BASEDIR.'/load/files/'.$data['downs_screen']).')<br />';
						} else {
							echo 'Скрин: <span style="color:#ff0000">Отсутствует</span><br />';
						}
						*/
						echo '<div class="border-top">';
						echo '<span class="border-right"><a href="?act=modpot&amp;id='.$data['id'].'">Принять</a> </span> ';
						echo '<a href="?act=moddel&amp;id='.$data['id'].'" onclick="return confirm(\'Вы действительно хотите удалить данную публикацию?\')">Удалить</a>';
						echo '</div></div>';
					}
				
					#	Постраничная навигация
					if	($tot_mod > !$kol_file) {
						page_strnavigation('?act=mod&amp;', $kol_file, $start, $tot_mod);
					}
				} else { 
					show_error('У вас нет публикаций нуждающих в модерации!'); 
				}
				echo '<ol class="breadcrumb">  Всего: '.$tot_mod.' </ol>';
				echo '<a href="?">Вернуться</a> <br />';
			}	else {
				redirect("index.php?");
			}
		break;

		#############################################################
		##             Принятие ожидающих модерации                ##
		#############################################################
		case 'modpot':
			if (is_admin(array(101))) {
				$new = DB::run() -> queryFetch("SELECT * FROM `pub_arts` WHERE `id`=? LIMIT 1;", array($id));
				if (!empty($new)) {
					if (empty($new['moder'])) {
						if	(!empty($id)) {
							DB::run() -> query("UPDATE `pub_arts` SET `moder`=? WHERE `id`=?;", array(1, $id));

							if (($new['id_avtor'])) {
								$them = 'Уведомеление о проверке публикации.'.PHP_EOL;
								$textpriv = 'Ваша публикация [b]'.$new['name'].'[/b] 
								успешно прошела проверку и добавлена в базу данных'.PHP_EOL.'
								Просмотреть свою публикацию вы можете на [url='.$config['home'].'/publs/read.php?id='.$id.']этой[/url] странице';

								DB::run() -> query("INSERT INTO `cms_mail` 
								(`user_id`,`from_id`,`text`,`time`,`sys`,`delete`,`file_name`,`count`,`size`,`them`,`of_mail`,`spam`) 
								VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);", 
								array(0, $new['id_avtor'], $textpriv, SITETIME, 1, 0, '', 0, 0, $them, 0, 0));
							}

							notice('Публикация успешно добавлена в каталог!');
							redirect("?act=mod");

						}	else {
							header("Location: ?act=mod");
						}
					} else { 
						show_error('Ошибка! Данная публикация уже проверена модератором!'); 
					}
				} else { 
					show_error('Ошибка! Данной публикации не существует!'); 
				}
			} else { 
				show_error('Ошибка! Принимать публикации может только сантехник!'); 
			}	
			echo '<a href="?act=mod">Вернуться</a> <br />';
		break;

		#############################################################
		##             Удаление ожидающих модерации                ##
		#############################################################
		case 'moddel':
			if (is_admin(array(101))) {
				$new = DB::run() -> queryFetch("SELECT * FROM `pub_arts` WHERE `id`=? LIMIT 1;", array($id));
				if (!empty($new)) {
					if (empty($new['moder'])) {

						if	(!empty($id)) {
							//if	(mysql_query("DELETE FROM `pub_arts` WHERE `id` = '".$id."' LIMIT 1")) {
							DB::run() -> query("DELETE FROM `pub_arts` WHERE `id`=? LIMIT 1;", array($id));
																	
							r_notice('Публикация успешно удалена!');
							r_redirect("?act=mod");
							
							//}	
						}	else {
							header("Location: ?act=mod");
						}

					} else { 
						show_error('Ошибка! Данная публикация уже проверена модератором!'); 
					}
				} else { 
					show_error('Ошибка! Данной публикации не существует!'); 
				}
			} else { 
				show_error('Ошибка! Принимать публикации может только сантехник!'); 
			}	
			echo '<a href="?act=mod">Вернуться</a> <br />';
		break;

	default:
		redirect("index.php?404");
	endswitch;

	echo '*';
} else {
	redirect('index.php?404');
}
echo '<a href="index.php?">В публикации</a> <br />';
include_once ('../themes/footer.php');
?>