PunBB wrote:Как то давненько видел похожее расширение еа одном форуме
Не уверен, что это было на нашем форуме, но на древней версии 1.2.x было написано расширение, которое "Новые сообщение" делал одной большой лентой. Так действительно было интересно читать. Может на версию 1.4.x кто оживит расширение. Скидываю исходный код
<?php
/***********************************************************************
Copyright (C) 2006 2rist (2ristSoft@nm.ru)
This software is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published
by the Free Software Foundation; either version 2 of the License,
or (at your option) any later version.
This software is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston,
MA 02111-1307 USA
************************************************************************/
// Make sure no one attempts to run this script "directly"
if (!defined('PUN'))
exit;
// Tell admin_loader.php that this is indeed a plugin and that it is loaded
define('PUN_PLUGIN_LOADED', 1);
define('PLUGIN_VERSION', '1.0.1');
if (isset($_POST['form_sent']))
{
// Lazy referer check (in case base_url isn't correct)
if (!preg_match('#/admin_loader\.php#i', $_SERVER['HTTP_REFERER']))
message($lang_common['Bad referrer']);
$form = array_map('trim', $_POST['form']);
while (list($key, $input) = @each($form))
{
// Only update values that have changed
if ((isset($pun_config['o_'.$key])) || ($pun_config['o_'.$key] == NULL)) {
if ($pun_config['o_'.$key] != $input)
{
if ($input != '' || is_int($input))
$value = '\''.$db->escape($input).'\'';
else
$value = 'NULL';
$db->query('UPDATE '.$db->prefix.'config SET conf_value='.$value.' WHERE conf_name=\'o_'.$key.'\'') or error('Unable to update board config', __FILE__, __LINE__, $db->error());
}
}
}
// Regenerate the config cache
require_once PUN_ROOT.'include/cache.php';
generate_config_cache();
redirect('admin_loader.php?plugin=AP_ANPOOP.php', 'Опции обновлены. Переадресация …');
}
else
{
// Display the admin navigation menu
generate_admin_menu($plugin);
?>
<div class="block">
<h2><span>ANPOOP (All New Messages On One Page) - v<?php echo PLUGIN_VERSION ?></span></h2>
<div class="box">
<div class="inbox">
<p>Этот плагин используется для управлениея ANPOOP модом.</p>
</div>
</div>
</div>
<div class="blockform">
<h2 class="block2"><span>Опции</span></h2>
<div class="box">
<form method="post" action="admin_loader.php?plugin=AP_ANPOOP.php">
<div class="inform">
<input type="hidden" name="form_sent" value="1" />
<fieldset>
<legend>Настройки</legend>
<div class="infldset">
<table class="aligntop" cellspacing="0">
<tr>
<th scope="row">Включить ANPOOP</th>
<td>
<input type="radio" name="form[anpoop_enabled]" value="1"<?php if ($pun_config['o_anpoop_enabled'] == '1') echo ' checked="checked"' ?> /> <strong>Да</strong> <input type="radio" name="form[anpoop_enabled]" value="0"<?php if ($pun_config['o_anpoop_enabled'] == '0') echo ' checked="checked"' ?> /> <strong>Нет</strong>
<span>Если выбрано "Нет", мод не будет функционировать.</span>
</td>
</tr>
</table>
</div>
</fieldset>
</div>
<p class="submitend"><input type="submit" name="save" value="Сохранить изменения" /></p>
</form>
</div>
</div>
<?php
}
?>