File size: 8.57Kb
<?php
require_once ("../includes/start.php");
require_once ("../includes/functions.php");
require_once ("../includes/header.php");
include_once ("../themes/".$config['themes']."/verh.dat");
if (isset($_GET['action'])) {$action = check($_GET['action']);} else {$action = "";}
if (isset($_GET['start'])) {$start = (int)$_GET['start'];} else {$start = 0;}
if (is_admin(array(101,102))){
echo '<b>Управление новостями</b><br><br>';
############################################################################################
## Главная страница ##
############################################################################################
if ($action==""){
$file = file(DATADIR."news.dat");
$file = array_reverse($file);
$total = count($file);
if ($total>0){
echo '<form action="news.php?action=del&start='.$start.'&uid='.$_SESSION['token'].'" method="post">';
if ($start < 0 || $start > $total){$start = 0;}
if ($total < $start + $config['postnews']){ $end = $total; }
else {$end = $start + $config['postnews']; }
for ($i = $start; $i < $end; $i++){
$data = explode("|",$file[$i]);
$num = $total - $i - 1;
echo '<div class="b">';
echo '<b>'.$data[0].'</b> <small>('.date_fixed($data[3]).')</small><br>';
echo '<input type="checkbox" name="del[]" value="'.$num.'"> ';
echo '<a href="news.php?action=editnews&id='.$num.'&start='.$start.'">Редактировать</a>';
echo '</div><div>'.bb_code($data[1]).'<br>';
echo '</div>';
}
echo '<br><input type="submit" value="Удалить выбранное"></form>';
page_jumpnavigation('news.php?', $config['postnews'], $start, $total);
page_strnavigation('news.php?', $config['postnews'], $start, $total);
echo '<br><br>Всего новостей: <b>'.(int)$total.'</b><br>';
} else {echo '<br><b>Новостей еще нет!</b><br>';}
echo '<br><a href="news.php?action=addnews">Добавить новость</a>';
}
############################################################################################
## Удаление новостей ##
############################################################################################
if ($action=="del") {
$uid = check($_GET['uid']);
if (isset($_POST['del'])) {$del = intar($_POST['del']);} else {$del = "";}
if ($uid==$_SESSION['token']){
if ($del!==""){
$file = file(DATADIR."news.dat");
foreach($del as $val){
if (isset($file[$val])){
$data = explode("|", $file[$val]);
}}
delete_lines(DATADIR."news.dat", $del);
header ("Location: news.php?start=$start&isset=mp_delnews"); exit;
} else {echo '<b>Ошибка удаления! Отсутствуют выбранные новости</b><br>';}
} else {echo '<b>Ошибка! Неверный идентификатор сессии, повторите действие!</b><br>';}
echo '<br><a href="news.php?start='.$start.'">Вернуться</a>';
}
############################################################################################
## Подготовка к редактированию новости ##
############################################################################################
if ($action=="editnews") {
if (isset($_GET['id'])) {$id = (int)$_GET['id'];} else {$id = "";}
if ($id!=="") {
$file = file(DATADIR."news.dat");
if (isset($file[$id])){
$data = explode("|", $file[$id]);
$data[1] = nosmiles($data[1]);
$data[1] = str_replace("<br>","\r\n",$data[1]);
echo '<b><big>Редактирование</big></b><br><br>';
echo '<form action="news.php?action=edit&id='.$id.'&start='.$start.'&uid='.$_SESSION['token'].'" name="form" method="post">';
echo 'Заголовок: <br><input type="text" name="name" size="50" maxlength="50" value="'.$data[0].'"><br>';
echo 'Cообщение:<br>';
echo '<textarea cols="25" rows="10" name="msg">'.$data[1].'</textarea><br>';
quickpaste('msg');
quickcode();
quicksmiles();
echo '<input type="hidden" name="timer" value="'.$data[3].'">';
echo '<input type="hidden" name="logins" value="'.$data[4].'">';
echo '<br><input type="submit" value="Изменить"></form>';
} else {echo '<b>Ошибка! Новости для редактирования не существует!</b><br>';}
} else {echo '<b>Произошла ошибка, не выбрана новость для редактирования!</b><br>';}
echo '<br><a href="news.php?start='.$start.'">Вернуться</a>';
}
############################################################################################
## Редактирование выбранной новости ##
############################################################################################
if($action=="edit"){
$uid = check($_GET['uid']);
$name = check($_POST['name']);
$msg = check($_POST['msg']);
$timer = check($_POST['timer']);
$logins = check($_POST['logins']);
if (isset($_GET['id'])) {$id = (int)$_GET['id'];} else {$id = "";}
if ($id!=="") {
if ($uid==$_SESSION['token']){
if ($name!="" && $msg!="" && $timer!="" && $logins!=""){
$msg = no_br($msg,' <br> ');
$msg = smiles($msg);
$text = no_br($name.'|'.$msg.'||'.$timer.'|'.$logins.'||');
replace_lines(DATADIR."news.dat", $id, $text);
header ("Location: news.php?start=$start&isset=mp_editnews"); exit;
} else {echo '<b>Ошибка редактирования, отсутствуют важные данные</b><br>';}
} else {echo '<b>Ошибка! Неверный идентификатор сессии, повторите действие!</b><br>';}
} else {echo '<b>Ошибка редактирования выбранной вами новости</b><br>';}
echo '<br><a href="news.php?start='.$start.'">Вернуться</a>';
}
############################################################################################
## Подготовка к добавлению новости ##
############################################################################################
if($action=="addnews"){
echo '<b><big>Создание новости</big></b><br><br>';
echo '<form action="news.php?action=add&uid='.$_SESSION['token'].'" name="form" method="post">';
echo 'Заголовок новости:<br>';
echo '<input type="text" name="themes" size="50" maxlength="50"><br>';
echo 'Новость:<br>';
echo '<textarea cols="50" rows="10" name="msg"></textarea><br>';
quickpaste('msg');
quickcode();
quicksmiles();
echo '<br><input type="submit" value="Добавить"></form>';
echo '<br><a href="news.php">Вернуться</a>';
}
############################################################################################
## Добавление новости ##
############################################################################################
if($action=="add"){
$uid = check($_GET['uid']);
$msg = check($_POST['msg']);
$themes = check($_POST['themes']);
if (isset($_POST['subadd'])) {$subadd = check($_POST['subadd']);} else {$subadd = "";}
if ($uid==$_SESSION['token']){
if ($themes!="" && $msg!=""){
$msg = no_br($msg,' <br> ');
$msg = smiles($msg);
$file = file(DATADIR."news.dat");
$ndata = explode("|",end($file));
/***************** Создание новости ******************/
$textnews = no_br($themes.'|'.$msg.'||'.SITETIME.'|'.$log.'||');
write_files(DATADIR."news.dat", "$textnews\r\n");
if ($subadd=="yes"){
echo '<b>Новость успешно добавлена!</b><br><br>';
$msg = nosmiles($msg);
$msg = str_replace('<br>',"\n",$msg);
$msg = strip_tags(bb_code($msg));
echo '<form action="news.php?action=sub&uid='.$_SESSION['token'].'" method="post">';
echo '<input type="hidden" name="themes" value="'.$themes.'">';
echo '<input type="hidden" name="msg" value="'.$msg.'">';
} else { header ("Location: news.php?isset=mp_addnews"); exit;}
} else {echo '<b>Ошибка добавления новости, пустой заголовок или новость!</b><br>';}
} else {echo '<b>Ошибка! Неверный идентификатор сессии, повторите действие!</b><br>';}
echo '<br><a href="news.php?action=addnews">Вернуться</a>';
}
echo '<br><a href="index.php">В админку</a><br>';
echo '
<a href="../index.php">Главъ</a><br>';
} else {header ("Location: ../index.php?isset=404"); exit;}
include_once ("../themes/".$config['themes']."/niz.dat");
?>