File size: 8.83Kb
<? // [email protected] http://w-s.wapland.org
header("Content-type:text/html; charset=utf-8");
error_reporting (E_ALL);
include "config.php";
if (!isset($_GET['pswrd'])) // Авторизация
{echo "
<html><head><META HTTP-EQUIV='Pragma' CONTENT='no-cache'><META HTTP-EQUIV='Cache-Control' CONTENT='no-cache'><META content='text/html; charset=windows-1251' http-equiv=Content-Type><link rel=stylesheet type='text/css' href='style.css'></head><body>
<BR><BR><BR><center>
<form action='admin.php' method=GET name=pass>Введите пароль: <BR><input type=password size=17 name=pswrd><BR><input type=submit value='Войти'>
<BR><BR><BR>";}
else {if ($_GET['pswrd']=="$password")
{ // Авторизация пройдена успешно
$shapka="<html><head>
<title>Информер - Админка</title>
<META HTTP-EQUIV=Pragma\" CONTENT='no-cache'>
<META HTTP-EQUIV='Cache-Control' CONTENT='no-cache'>
<META content='text/html; charset=windows-1251' http-equiv=Content-Type>
<STYLE>
BODY {FONT-FAMILY: Verdana}
a {text-decoration: underline; color: #000000;}
a:visited {text-decoration: underline; color: #000000;}
a:hover, a:active {text-decoration: underline; color: #FF9C00;}
input {FONT-SIZE: 12px; WIDTH: 30px; font-size: 13; color: 000000; border: #808080 1 solid;}
.text {FONT-SIZE: 12px; WIDTH: 400px; font-size: 13; color: 000000; border: #808080 1 solid;}
.midle {FONT-SIZE: 12px; WIDTH: 100px; font-size: 13; color: 000000; border: #808080 1 solid;}
.small {FONT-SIZE: 11px;}
.smallest {FONT-SIZE: 9px;}
TD {FONT-SIZE: 11px}
TD.menu {FONT-SIZE: 11px; FONT-WEIGHT: bold}
TD.big_item_title {FONT-SIZE: 13px; FONT-WEIGHT: bold}
TD.pagesLine {FONT-SIZE: 10px}
</STYLE>
</head>
<body bgcolor=#F3F3F3><center>
<center><a href=admin.php?pswrd=$password><h3>Информер - Админка</h3></a>
<table width=100% cellpadding=1 cellspacing=0 border=1 bordercolor=#666666>
<TR height=30><TD align=center class=big_item_title>
<b>
:: <a href=admin.php?pswrd=$password&event=skin>Конфигурирование</a> ::
<a href='admin.php?pswrd=$password'>Главная админки</a> ::
<a href='index.php'>Вернуться на главную</a> ::</B>
</td></tr>
<tr><td width=100%>
";
// Блок УДАЛЕНИЯ выбранного сообщения
if (isset($_GET['id'])) { $page=$_GET['page'];
$file=file($datafile); $itogo=count($file)-1;
$id=$itogo-$_GET['id'];
if ($itogo<1) {print"$back. Нужно оставить хотябы одно событие!"; exit;}
$fp=fopen($datafile,"w");
flock ($fp,LOCK_EX);
for ($i=0;$i< sizeof($file);$i++) { if ($i==$id) {unset($file[$i]);} }
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);
Header("Location: admin.php?pswrd=$password&page=$page"); exit; }
if (isset($_GET['event'])) {
if ($_GET['event']=="add") { // if ($event =="add")
$newmonth=$_POST['newmonth']; $msg=$_POST['msg']; $newday=$_POST['newday'];
if (isset($_POST['page'])) {$page=$_POST['page'];} else {$page=1;}
$msg=stripslashes($msg);
$msg=htmlspecialchars($msg);
$msg=str_replace("|","I",$msg);
$msg=str_replace("\r\n","<br>",$msg);
$text="$newday|$newmonth|$msg|";
// если выбрано - редактирование
if (isset($_GET['rd'])) { $rd=$_GET['rd']; //$rd - номер РЕДАКТИРУЕМОЙ ячейки
$file=file($datafile);
$fp=fopen($datafile,"a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);//УДАЛЯЕМ СОДЕРЖИМОЕ ФАЙЛА
for ($i=0;$i< sizeof($file);$i++) {if ($rd!=$i) {fputs($fp,$file[$i]);} else {fputs($fp,"$text\r\n");}}
fflush ($fp);//очищение файлового буфера
flock ($fp,LOCK_UN);
fclose($fp);
}
else {
$fp=fopen($datafile,"a+");
flock ($fp,LOCK_EX);
fputs($fp,"$text\r\n");
fflush ($fp);//очищение файлового буфера
flock ($fp,LOCK_UN);
fclose($fp);
}
Header("Location: admin.php?pswrd=$password&page=$page"); exit; }
if ($_GET['event']=="skin") {
print "$shapka
<table width=100%><TR><TD>
<center><B><font size=+1>Конфигурирование</font></b>
<form action=admin.php?pswrd=$password&event=config method=POST name=REPLIER>
<table>
<tr><td>Пароль админа</td><td><input type=text value='$password' name=password size=15 class=midle></tr></td>
<tr><td>Cколько выводить дат</td><td><input type=text value='$klvmsg' name=klvmsg size=10></tr></td>
<tr><td>Максимальное удалённое событие</td><td><input type=text value='$klvdays' name=klvdays size=10></tr></td>
<tr><td>Сообщений на страницу</td><td><input type=text value='$qq' name=qq size=10></tr></td>
<tr><td>Файл данных</td><td><input type=text value='$datafile' name=datafile size=20 class=midle></tr></td>
<tr><td colspan=2><center><table><tr><td><input type=submit value='Сохранить конфигурацию' class=text></form></td></tr></table>
</td></tr></table>
</TD></TR></TABLE>
</TD></TR></TBODY></TABLE>";
exit; }
if ($_GET['event']=="config") {
$configdata="<? // [email protected] w-s.wapland.org\r\n".
"$"."password=\"$_POST[password]\"; // Пароль админа\r\n".
"$"."klvmsg=\"$_POST[klvmsg]\"; // Сколько выводить дат?\r\n".
"$"."klvdays=\"$_POST[klvdays]\"; // Максимальное удалённое событие\r\n".
"$"."datafile=\"$_POST[datafile]\"; // Имя файла базы данных\r\n".
"$"."qq=\"$_POST[qq]\"; // кол-во отображаемых событий в админке на странице\r\n".
"$"."date=date(\"d.m.Y\"); // число.месяц.год\r\n".
"$"."time=date(\"H:i:s\"); // часы:минуты:секунды \r\n?>";
$file=file("config.php");
$fp=fopen("config.php","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);//УДАЛЯЕМ СОДЕРЖИМОЕ ФАЙЛА
fputs($fp,$configdata);
fflush ($fp);//очищение файлового буфера
flock ($fp,LOCK_UN);
fclose($fp);
Header("Location: admin.php?pswrd=$password&event=skin"); exit; }
} // if isset['event']
print "$shapka <BR>";
$lines=file($datafile);
$itogo=count($lines);
$maxi=$itogo-1;
if (isset($_GET['page'])) {$page=$_GET['page'];} else {$page="1";}
if ($page=="0") {$page="1";} else {$page=abs($page);}
$maxpage=ceil(($maxi+1)/$qq); if ($page>$maxpage) {$page=$maxpage;}
$fm=$qq*($page-1); if ($fm>$maxi) {$fm=$maxi-$qq;}
$lm=$fm+$qq; if ($lm>$maxi) {$lm=$maxi+1;}
do {$dt=explode("|", $lines[$fm]); $fm++;
$num=$itogo-$fm;
print"
<TABLE border=0 width=780 align=center cellPadding=0 cellSpacing=0><TBODY>
<TR><TD width=50><B>$dt[0] $dt[1]</B></td><td><b>$dt[2]</b></TD>
<TD width=70><table><TR><TD bgcolor=#22FF44><B><a href='admin.php?pswrd=$password&rd=$num&page=$page'>.P.</a></TD><TD> </TD><TD bgcolor=#FF2244><a href='admin.php?pswrd=$password&id=$num&page=$page'>.X.</a></B></TD><TD> </TD></TR></TABLE>
</TD></TR></TBODY></TABLE><BR>";
} while($fm < $lm);
// выводим СПИСОК СТРАНИЦ
print "<center>Страницы: ";
for($i=0; $i<$maxi+1;) {$ip=$i/$qq+1;
if ($page==$ip) {print "<B>$ip</B> ";} else {print "<a href='admin.php?pswrd=$password&page=$ip'>$ip</a> ";}
$i=$i+$qq;} print "(дробление = <B>$qq</B>). Всего - <font color=red><B>$itogo<B></font>";
print"<BR><BR><TABLE border=0 width=500 align=center cellPadding=0 cellSpacing=0>
<TR height=20 align=center><TD><B>дата Д/М</B></TD><TD><B>Событие</B></TD></TR>";
// ищем сообщение для редактирования и выводим его в форму
if (isset($_GET['rd'])) { $rd=$maxi-$_GET['rd'];
$dt=explode("|",$lines[$rd]);
$dt[0]=str_replace("<br>", "\r\n", $dt[0]);
print "<form action=admin.php?pswrd=$password&event=add&rd=$rd method=POST name=REPLIER>
<TR><TD> <input type=text name=newday value='$dt[0]' size=3 maxlength=2> <input type=text value='$dt[1]' name=newmonth size=3 maxlength=2> </TD><TD>
<textarea class=text cols=50 rows=2 size=500 name=msg>$dt[2]</textarea>
</TD></TR>
<input type=hidden name=page value='$page'>
<TR><TD> </TD><TD><BR><input class=text type=submit value='Изменить и сохранить'></form></TD></TR>";
} else {
print "
<form action=admin.php?pswrd=$password&event=add method=POST name=REPLIER>
<TR><TD> <input type=text name=newday size=3 maxlength=2> <input type=text name=newmonth size=3 maxlength=2> </TD><TD>
<textarea class=text cols=50 rows=2 size=500 name=msg></textarea>
</TD></TR>
<TR><TD> </TD><TD><BR><input class=text type=submit value='Добавить'></form></TD></TR>";
}
print"</TD></TR></TABLE>";
}
}
print "</td></tr></table>
<BR><center><font size=-2>Powered by <a href='http://w-s.wapland.org/'>W_S скрипты</a> для WAP</font></body></html>";
?>