Вход Регистрация
Файл: manager/admin2.php
Строк: 344
<?php

require_once"../template/start.php";
require_once
"../template/regglobals.php";
require_once
"../template/config.php";
require_once
"../template/functions.php";
require_once
"../template/antidos.php";
require_once
"../template/cookies.php";
require_once
"../template/gzip.php";
require_once
"../template/header.php";
require_once
"../template/referer.php";
include_once
"../themes/$config_themes/index.php";
include_once
"../template/isset.php";

if (
$provlog==$_SESSION['log'] && $provpar==md5($_SESSION['par']) && $_SESSION['log']!="" && md5($_SESSION['par'])!="") {
if (
$dostup==101 || $dostup==102){

echo
'<img src="../images/img/menu.gif" alt=""> <b>Управление новостями</b><br><br>';

//--------------------------- Главная страница -------------------------------//
if(!isset($action)){
$file file(BASEDIR."local/manage/news.dat");
$file array_reverse($file);
$total count($file);
    
if(
$total<1){echo '<br><img src="../images/img/reload.gif" alt=""> <b>Новостей еще нет!</b><br>';} 

$start = (int)$_GET['start'];
if(
$start || $start $total){$start 0;}
if (
$total $start $config_postnews){ $end $total; }
else {
$end $start $config_postnews; }
for (
$fm $start$fm $end$fm++){

$dt explode("|",$file[$fm]);

$num=$total-$fm-1;
$dt[1]=bb_code($dt[1]);

echo 
'<div class=b><img src="../images/img/edit.gif" alt=""> ';
echo 
'<b>'.$dt[0].'</b> <small>('.date_fixed($dt[3]).')</small><br>';
echo 
'<a href="news.php?action=editnews&amp;id='.$num.'&amp;start='.$start.'&amp;'.SID.'">[Edit]</a>';
echo 
'<a href="news.php?action=del&amp;id='.$num.'&amp;start='.$start.'&amp;kil='.$dt[5].'&amp;'.SID.'"><font color="#FF0000">[DEL]</font></a>';
echo 
'</div><div>'.$dt[1].'<br>';

echo 
'Разместил: '.$dt[4].'<br>';
echo 
'<a href="../news/komm.php?id='.$dt[5].'&amp;'.SID.'">Комментарии</a> ';

$countkomm=0;
if (
file_exists("../local/datakomm/$dt[5].dat")){
$filek file("../local/datakomm/$dt[5].dat");
$countkomm=count($filek);}
echo 
'('.(int)$countkomm.')</div>';
}

echo 
'<hr>';
if (
$start != 0) {echo '<a href="news.php?start='.($start $config_postnews).'&amp;'.SID.'">&lt;-Назад</a>';}else{echo'&lt;-Назад';}
echo
' | '
if (
$total $start $config_postnews) {echo ' <a href="news.php?start='.($start $config_postnews).'&amp;'.SID.'">Далее-&gt;</a>';}else{echo'Далее-&gt;';}

if(
$total>0){
$ba=ceil($total/$config_postnews);
$ba2=$ba*$config_postnews-$config_postnews;

echo 
'<br><hr>Страницы:';
$asd=$start-($config_postnews*3);
$asd2=$start+($config_postnews*4);

if(
$asd<$total && $asd>0){echo ' <a href="news.php?start=0&amp;'.SID.'">1</a> ... ';}

for(
$i=$asd$i<$asd2;)
{
if(
$i<$total && $i>=0){
$ii=floor(1+$i/$config_postnews);

if (
$start==$i) {
echo 
' <b>('.$ii.')</b>';
} else {
echo 
' <a href="news.php?start='.$i.'&amp;'.SID.'">'.$ii.'</a>';
}}

$i=$i+$config_postnews;}
if(
$asd2<$total){echo ' ... <a href="news.php?start='.$ba2.'&amp;'.SID.'">'.$ba.'</a>';}
}


echo 
'<br><br>Всего новостей в базе: <b>'.(int)$total.'</b><br>';
echo 
'<br><img src="../images/img/reload.gif" alt=""> <a href="news.php?action=addnews&amp;'.SID.'">Добавить новость</a>';
if (
$total>1) {
echo
'<br><img src="../images/img/error.gif" alt=""> <a href="news.php?action=proverka&amp;'.SID.'">Удалить новости</a>';}
}


if(
$action=="proverka") {
echo
'Вы уверены что хотите удалить все новости?<br>';
echo
'<img src="../images/img/error.gif" alt=""> <b><a href="news.php?action=alldel&amp;'.SID.'">Да уверен!</a></b><br>';
echo
'<br><img src="../images/img/back.gif" alt=""> <a href="news.php?'.SID.'">Вернуться</a>';
 }

//---------------------------------------- УДАЛЕНИЕ ВСЕХ НОВОСТЕЙ -------------------------------------------//
if($action=="alldel") {

clear_files(BASEDIR."local/manage/news.dat");    

$dir opendir (BASEDIR."local/datakomm"); 
while (
$file readdir ($dir)) {
if (( 
$file != ".") && ($file != "..") && ($file != ".htaccess") && ($file != "index.php")){
     
unlink (BASEDIR."local/datakomm/$file");
}}
closedir ($dir);

header ("Location: news.php?isset=mp_alldelnews&".SID);    exit;
}


//---------------------------------------- УДАЛЕНИЕ ВЫБРАННОЙ НОВОСТИ -------------------------------------------//
if($action=="del") {
if (isset(
$_GET['id']) && $_GET['id']!="")  {
$id=(int)$_GET['id'];
$kil=(int)$_GET['kil'];

$file=file(BASEDIR."local/manage/news.dat");    
$fp=fopen(BASEDIR."local/manage/news.dat","w");
flock ($fp,LOCK_EX);
foreach(
$file as $skey=>$sval){ if ($id==$skey){unset($file[$skey]); break;} }
fputs ($fpimplode($file));
fflush($fp);
flock ($fp,LOCK_UN);
fclose($fp);
unset (
$id);

unlink (BASEDIR."local/datakomm/$kil.dat");

header ("Location: news.php?start=$start&isset=mp_delnews&".SID);    exit;

} else {echo 
'<b>Ошибка удаления выбранной вами новости</b><br>';}
echo 
'<br><img src="../images/img/back.gif" alt=""> <a href="news.php?start='.$start.'&amp;'.SID.'">Вернуться</a>';    
}



//---------------------------------------- ПОДГОТОВКА К РЕДАКТИРОВАНИЮ НОВОСТИ -------------------------------------------//
if($action=="editnews") {
if (isset(
$_GET['id']) && $_GET['id']!="")  {
$id=(int)$_GET['id'];

$lines=file(BASEDIR."local/manage/news.dat");
$dt=explode("|"$lines[$id]);
$dt[1]=str_replace("<br>","rn",$dt[1]);
$dt[1] = nosmiles($dt[1]);

echo
'<b><big>Редактирование</big></b><br><br>';
if(
$config_themes!="wml"){
echo
'<form action="news.php?action=edit&amp;id='.$id.'&amp;start='.$start.'&amp;'.SID.'" method="POST">';
echo
'Заголовок: <br><input type="text" name="name" value="'.$dt[0].'"><br>'
echo
'Cообщение:<br>';
echo
'<textarea cols="25" rows="3" name="msg">'.$dt[1].'</textarea><br>';
echo
'<input type="hidden" name="timer" value="'.$dt[3].'">';
echo
'<input type="hidden" name="logins" value="'.$dt[4].'">';
echo
'<input type="hidden" name="koll" value="'.$dt[5].'">';
echo
'<br><input type="submit" value="Изменить"></form><hr>';

}else{

echo
'Заголовок:<br><input type="text" name="name" value="'.$dt[0].'"/><br>';
echo
'Cообщение:<br><input type="text" name="msg" value="'.$dt[1].'"/><br>';

echo
'<anchor>Изменить';
echo
'<go href="news.php?action=edit&amp;id='.$id.'&amp;start='.$start.'&amp;'.SID.'" method="post">';
echo
'<postfield name="name" value="$(name)"/>';
echo
'<postfield name="msg" value="$(msg)"/>';
echo
'<postfield name="timer" value="'.$dt[3].'"/>';
echo
'<postfield name="logins" value="'.$dt[4].'"/>';
echo
'<postfield name="koll" value="'.$dt[5].'"/>';

echo
'</go></anchor><br>--------------------<br>';
}

}else{ echo
'<b>Произошла ошибка, не выбрана новость для редактирования</b>!<br>';}

echo 
'<br><img src="../images/img/back.gif" alt=""> <a href="news.php?start='.$start.'&amp;'.SID.'">Вернуться</a>';    
}




//---------------------------------------- ПОДГОТОВКА К ДОБАВЛЕНИЮ НОВОСТИ -------------------------------------------//
if($action=="addnews"){
if(
$config_themes!=="wml"){

echo 
'<br><form action="news.php?action=add&amp;'.SID.'" method="post">';
echo 
'<b>Заголовок новости: </b><br>';
echo 
'<input type="text" name="themes" maxlength="50"><br>';
echo 
'<b>Новость: </b><br>';
echo 
'<textarea cols="25" rows="3" name="msg"></textarea><br><br>';
echo 
'Транслит: <input name="trans" type="checkbox" value="y"><br>';
echo 
'Рассылка:';
echo 
'<input name="subadd" type="checkbox" value="yes"><br><br>';
echo 
'<input type="submit" value="Добавить"></form><hr>';

}else{
echo
'<b>Заголовок новости: </b><br>';
echo
'<input name="themes" maxlength="50"/><br>';
echo
'<b>Новость: </b><br>';
echo
'<input name="msg" maxlength="1000"/><br>';
echo
'Транслит: <select name="trans"><option value="0">Нет</option>';
echo
'<option value="y">Да</option></select><br>';
echo
'Рассылка: <select name="subadd"><option value="no">Нет</option>';
echo
'<option value="yes">Да</option></select><br><br>';



echo
'<anchor>Добавить';
echo
'<go href="news.php?action=add&amp;'.SID.'" method="post">';
echo
'<postfield name="themes" value="$(themes)"/>';
echo
'<postfield name="msg" value="$(msg)"/>';
echo
'<postfield name="trans" value="$(trans)"/>';
echo
'<postfield name="subadd" value="$(subadd)"/>';
echo
'</go></anchor><br>--------------------<br>';
}

echo
'<br><img src="../images/img/back.gif" alt=""> <a href="news.php?'.SID.'">Вернуться</a>';
}






//---------------------------------------- РЕДАКТИРОВАНИЕ ВЫБРАННОЙ НОВОСТИ -------------------------------------------//
if($action=="edit"){
if (isset(
$_GET['id']) && $_GET['id']!=""){
if(
$_POST['name']!="" && $_POST['msg']!=""){

$id=(int)$_GET['id'];
$name=check($_POST['name']);
$msg=check($_POST['msg']);
$timer=check($_POST['timer']);
$logins=check($_POST['logins']);
$koll=(int)$_POST['koll'];

$msg smiles($msg);
$msg=no_br($msg,"<br>");

$text=$name.'|'.$msg.'||'.$timer.'|'.$logins.'|'.$koll.'|';
$text=no_br($text);

if(
$text!=""){
$file=file(BASEDIR."local/manage/news.dat");
$fp=fopen(BASEDIR."local/manage/news.dat","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
for (
$i=0;$isizeof($file);$i++) {if ($id!=$i) {fputs($fp,$file[$i]);} else {fputs($fp,"$textrn");}}
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
}

header ("Location: news.php?start=$start&isset=mp_editnews&".SID); exit;

} else {echo 
'<b>Ошибка редактирования, отсутствуют важные данные</b><br>';}
} else {echo 
'<b>Ошибка редактирования выбранной вами новости</b><br>';}
echo 
'<br><img src="../images/img/back.gif" alt=""> <a href="news.php?start='.$start.'&amp;'.SID.'">Вернуться</a>';    




//---------------------------------------- ДОБАВЛЕНИЕ НОВОСТИ -------------------------------------------//
if($action=="add"){
if(
$_POST['msg']!="" && $_POST['themes']!=""){

$msg=check($_POST['msg']);    
$themes=check($_POST['themes']);    
    
$msg=no_br($msg,"<br>");

if(
$trans=="y"){
$msg=transliter($msg);
$themes=transliter($themes);
}
    
$msg smiles($msg);

$file file(BASEDIR."local/manage/news.dat");
$ndata explode("|",end($file));
$me $ndata[5] + 1;

$textnews=$themes.'|'.$msg.'||'.$sitetime.'|'.$log.'|'.$me.'|';
$textnews=no_br($textnews);

$fp=fopen(BASEDIR."local/manage/news.dat","a+");
flock ($fp,LOCK_EX);
fputs ($fp,"$textnewsrn");
fflush($fp);
flock ($fp,LOCK_UN);
fclose($fp);


$textkomm=$brow.', '.$ip.'|'.$msg.'||'.$sitetime.'|'.$log.'|1|';
$textkomm=no_br($textkomm);

$fp=fopen(BASEDIR."local/datakomm/$me.dat","w");
flock ($fp,LOCK_EX);
fputs ($fp,"$textkommrn");
fflush($fp);
flock ($fp,LOCK_UN);
fclose($fp);
chmod ($fp0777);
chmod (BASEDIR."local/datakomm/$me.dat"0777);

$f file(BASEDIR."local/local.dat"); 
$u explode("|",$f[0]);

$u[4]++;
$t=$u[0].'|'.$u[1].'|'.$u[2].'|'.$u[3].'|'.$u[4].'|'.$u[5].'|'.$u[6].'|'.$u[7].'|'.$u[8].'|'.$u[9].'|'.$u[10].'|';

$fp fopen(BASEDIR."local/local.dat","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
fputs($fp,$t);
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);

$file=file(BASEDIR."local/manage/news.dat"); 
$i count($file);
if (
$i>=$config_maxpostnews) { 
$fp=fopen(BASEDIR."local/manage/news.dat","w");
flock ($fp,LOCK_EX);
unset (
$file[0]);
fputs ($fpimplode($file));
fflush($fp);
flock ($fp,LOCK_UN);
fclose($fp);

$datadel explode("|",$file[0]);
unlink (BASEDIR."local/datakomm/$datadel[5].dat");
}


}else{
header ("Location: news.php?action=addnews&isset=mp_noaddnews&".SID); exit;
}

echo 
'Новость успешно добавлена!<br>';

if(
$subadd!="yes"){
header ("Location: news.php?isset=mp_addnews&".SID); exit;
}
}

//---------------------------------------- БЛОК РАССЫЛКИ -------------------------------------------//
if($subadd=="yes"){

$dates=date("d.m.y / H:i",$sitetime);    

$msg nosmiles($msg);
$msg str_replace("<br>","n",$msg);
$msg strip_tags(bb_code($msg));

if (isset(
$_GET['last'])) {$last=$_GET['last'];} else {$last=0;}

$send_file=file(BASEDIR."local/sub.dat");
$send_count=count($send_file);

$next=$last+$config_submail;
if (
$next>$send_count) {$next=$send_count;}

for (
$i=$last$i<$next$i++) {
$udata explode("|",$send_file[$i]);

//---------------- Пассылка писем на E-mail --------------------------//
if($udata[0]!=""){
addmail($udata[0], "Рассылка новостей с сайта ".$config_title"$themes ($dates) n$msg nnВы получили это письмо, потому что являетесь подписчиком сайта ".$config_home." nОтписаться от рассылки вы можете в своем профиле на нашем сайтеnили клинув по этой ссылке n".$config_home."/pages/subdel.php?subdel=$udata[1]");

}

$last=$next;
if (
$last<$send_count) {
$per=round(100*$last/$send_count);

echo
'<br>Рассылка начата.<br>Успешно отправлено: '.(int)$per.'%<br><br>';
    
if(
$config_themes!=="wml"){    
echo
'<form action="news.php?subadd=yes&amp;action=mail&amp;last='.$last.'&amp;'.SID.'" method="post" />';
echo
'<input type="hidden" name="subject" value="'.$subject.'">';
echo
'<input type="hidden" name="themes" value="'.$themes.'">';
echo
'<input type="hidden" name="msg" value="'.$msg.'">';
echo
'<input type="hidden" name="trans" value="'.$trans.'">';    
echo
'<input type="submit" value="Продолжить рассылку"></form><hr>';

}else{
echo
'<anchor>Продолжить рассылку';
echo
'<go href="news.php?subadd=yes&amp;action=mail&amp;last='.$last.'&amp;'.SID.'" method="post">';

echo
'<postfield name="subject" value="'.$subject.'"/>';
echo
'<postfield name="themes" value="'.$themes.'"/>';
echo
'<postfield name="msg" value="'.$msg.'"/>';
echo
'<postfield name="trans" value="'.$trans.'"/>';

echo
'</go></anchor><br>--------------------<br>';    
}

}else{ echo 
'<b>Рассылка окончена</b><br>'; }

echo
'<br>Всего подписчиков: '.(int)$send_count.'<br>';
echo
'<br><img src="../images/img/back.gif" alt=""> <a href="news.php?'.SID.'">Вернуться к новостям</a>';
}



echo
'<br><img src="../images/img/panel.gif" alt=""> <a href="index.php?'.SID.'">В админку</a><br>';
echo
'<img src="../images/img/homepage.gif" alt=""> <a href="../index.php?'.SID.'">На главную</a><br>';

} else {
header ("Location: ../index.php?isset=404&".SID);}
} else {
header ("Location: ../index.php?isset=404&".SID);}

include_once
"../themes/$config_themes/foot.php";
?>
Онлайн: 0
Реклама