Размер файла: 6.17Kb
<?php
Error_Reporting(E_ALL & ~E_NOTICE);
/***************************************************************************
* guestbook.php (S-A WAP)
* -------------------
* Разработка: Антон Федорченко.
* Оптимизация под WAP: Felis.
* 2008 год
***************************************************************************/
?>
<?
session_start();
require_once('functions.php');
require_once('config.php');
require_once("lang/{$Lng}_lng.php");
require_once('filename.php');
require_once ('templates/header.php');
$Mess = $_SESSION['msg_added'];
if($Antiflood != 'yes')
session_unregister('msg_added');
?>
<?php
//Определяем страницу
if(empty($_GET['currpage']))
$CurrPage=1; else $CurrPage=$_GET['currpage'];
$MessagesArray=@file($File);
// Если в книге нет ни одного сообщения - выводим соответствующий текст
if((count($MessagesArray)<4) or (!file_exists($File)))
{
include('menu.php');
} else
{
//Обрезаем заголовок xml и корневой элемент guestbook
$MessagesArray=array_slice($MessagesArray, 2);
array_pop($MessagesArray);
$MessagesArray=array_chunk($MessagesArray, 9);
$CountMessages=count($MessagesArray);
$Tags=array('name', 'date', 'city', 'email', 'url', 'messagebody', 'admin');//массив, содержащий атрибуты сообщения
//Определяем начальное и конечное сообщения (нумерация с 0), которые должны появиться на странице
if($CurrPage==1)
$Begin=0; else
$Begin=($CurrPage-1)*$MessagesPerPage;
$End=$MessagesPerPage*$CurrPage-1;
//Из массива MessagesArray формируем 2-х мерный массив Messages, содержащий выбранные сообщения
//1 измерение - номер сообщения (начинается с 0)
//2 измерение - набор атрибутов сообщения: перечислены выше в массиве $Tags
for($i = $Begin; $i <= $End; $i++)
{
if($i > ($CountMessages-1))
break;
//Убираем теги <message> и </message>
$MessagesArray[$i]=array_slice($MessagesArray[$i], 1);
array_pop($MessagesArray[$i]);
//Формируем набор атрибутов сообщения
for($inx=0; $inx<7; $inx++)
{
$Str=$MessagesArray[$i][$inx];
$Str=ereg_replace('<[/a-z]+>', '', $Str);
$Str=trim($Str);
if($Str=='%nbsp%') $Str='';
$Attribute=$Tags[$inx];
$Messages[$i][$Attribute]=$Str;
}
} // for($i=$Begin; $i<=$End; $i++)
?>
<!--Заголовок + блок со ссылками-->
<? # include('menu.php'); ?>
<!--Сообщения-->
<?
if(!empty($Mess))
print $Mess;
foreach($Messages as $key => $Attributes)
{
//Показываем смайлики
if($ShowSmiles == 'yes')
{
$Attributes['messagebody'] = ConvertToSmile($Attributes['messagebody']);
$Attributes['admin'] = ConvertToSmile($Attributes['admin']);
} else
{
$Attributes['messagebody'] = ConvertSmilesToSpaces($Attributes['messagebody']);
$Attributes['admin'] = ConvertSmilesToSpaces($Attributes['admin']);
}
$Attributes['messagebody']=str_replace("+endln+", "<br>", $Attributes['messagebody']);
$Attributes['admin']=str_replace("+endln+", "<br>", $Attributes['admin']);
if ($Attributes['city'] != '')
$Attributes['city']='('.$Attributes['city'].')';
Print "<center>";
Print "<div class=onquote>[<a href='mailto:{$Attributes['email']}'>@</a>] <a href={$Attributes['url']}><b>{$Attributes['name']}</b></a> {$Attributes['city']}<br>{$Cpt_Date} {$Attributes['date']}</div>";
//автор, дата
Print "<div class=quote>{$Attributes['messagebody']}<br>";
if($Attributes['admin'] != '')
{
$Attributes['admin']=ConvertIntoTags($Attributes['admin']);
Print "<div class=header><b>{$Cpt_Admin}</b>{$Attributes['admin']}</div>";
}
Print "</div>";
//e-mail, url
# Print "<br>";
$Attributes['messagebody']=ConvertIntoTags($Attributes['messagebody']);
//комментарий администратора
Print '<br>';
Print "</center>";
}
//<!--Постраничная навигация-->
//определяем количество страниц
$PagesCount=ceil($CountMessages/$MessagesPerPage);
$PreviousPage=$CurrPage - 1;
$NextPage=$CurrPage + 1;
$Offset = $CurrPage - 8;
if($Offset < 0) $Offset = 0;
for($i = 1; $i <= 10; $i++)
{
$Tmp = $i + $Offset;
$GbPages[] = $Tmp;
if($Tmp == $PagesCount)
break;
}
Print "<table align=center border=0 cellspacing=0 cellpadding=0 border=0 class='GbNav'>";
Print "<tr>";
if($PreviousPage > 0)
{
Print "<td align='right' width='20'><a href='guestbook.php?currpage=1'><b><<</b></a> </td>";
Print "<td align='right' width='15'><a href='guestbook.php?currpage={$PreviousPage}'><<Пред.</a></td>";
print "<td width='5'> </td>";
} else
Print "<td width='40'> </td>";
Print "<td align='center'>";
$Count = count($GbPages);
for($i = 0; $i<=$Count; $i++)
{
if($GbPages[$i]==$CurrPage)
Print("<span class='mustred'>".$GbPages[$i].' </span>'); else
Print "<a href='guestbook.php?currpage={$GbPages[$i]}'>{$GbPages[$i]}</a> ";
}
Print "</td>";
if($NextPage <= $PagesCount)
{
print "<td width='5'> </td>";
print "<td align='left' width='15'><a href='guestbook.php?currpage={$NextPage}'>След.>></a></td>";
print "<td align='left' width='20'> <a href='guestbook.php?currpage={$PagesCount}'><b>>></b></a></td>";
} else
Print "<td width='40'> </td>";
Print "</tr>";
Print "</table><br>";
}
require_once ('templates/footer.php');
?>