Быстрый лёгкий надёжный форумный движок
Вы не вошли.
Страницы 1
Здравствуйте!
Есть форум на PunBB 1.4, хочу переехать с него на FluxBB (потому что, насколько я понял, есть решение для интеграции DokuWiki). Возникло несколько вопросов:
Есть ли расширение для личных сообщений?
Есть ли расширение для репутации пользователей, как в PunBB?
Какие существуют расширения "портала" на главной для последней версии FluxBB?
Существуют ли конвертер из PunBB 1.4 в последнюю версию FluxBB? Насколько сложно будет перенести также репутацию и ЛС (разумеется если есть такие расширения)?
Спасибо)
Offline
Во первых, во flux нет "расширений", есть только "моды". Этим они и отличаются. То есть во флаксе, как правило, недостаточно скопировать новые файлы, надо еще по инструкции внести некоторые изменения в код.
Все перечисленные моды есть. Советую обратить внимание на сборку Visman-а. На официальном сайте есть раздел доступных модов.
Про сохранение данных из расширений ничего утешительного не могу сказать, прогноз пессиместический Только с применением рук.
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Offline
Да легче написать для punbb расширение для интеграции с DokuWiki, чем переносить данные во fluxbb (имею в виду из личных сообщений и репутации).
Моя сборка FluxBB 1.5, ForkBB · сообщество
Offline
@artoodetoo, @Visman, спасибо за ответы.
Мне больше приглянулась сборка FluxBB with mods от artoodetoo — там есть портал и нет ненужного мне функционала. При всём уважении к @Visman, мне больше нравится идея взять чистую сборку и добавить туда нужные моды, чем брать «навороченную» сборку и удалять оттуда ненужный мне функционал. Пока пробую флакс на тестовом домене, конверт базы прошел без проблем, всё нравится.
По поводу переноса ЛС и репутации — поговорив со своими пользователями в конфе, решили, что это не критично. Репу перенести я попытаюсь, но если не смогу, то всё равно перееду на флакс. Готовое решение для интеграции с DokuWiki для меня огромный плюс, написать самостоятельно такую штуку для PunBB я не осилю. К тому же очень порадовал мод портала, аналога для PunBB я не нашел.
У меня есть вопрос по связке DokuWiki + FluxBB. Авторизацию я настроить смог, работает без проблем. Но как я могу отобразить в DokuWiki header из FluxBB? Без визуальной интеграции связка не выглядит единым целым. Понравилось как это реализовано на официальном сайте флакса, и на сайте французского сообщества.
Спасибо.
Редактировался PNG (2014-03-27 13:46:51)
Offline
Но как я могу отобразить в DokuWiki header из FluxBB? Без визуальной интеграции связка не выглядит единым целым. Понравилось как это реализовано на официальном сайте флакса, и на сайте французского сообщества.
Точнее сказать: хидер сайта интегрирован и на форум, и на вики. Я думаю так: в обоих случаях есть что-то вроде
include 'site_header.php';
Да, вот так просто! На форуме я бы эту вставку оформил в шаблоне, там можно подключить php в <pun_include >
А в вики буквально include. Осталось только создать этот самый файл шапки.
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Offline
@artoodetoo, я подключаю в вики свой header.php со следующим содержимым:
<?php
echo "Привет мир!";
if ($pun_user['is_guest'])
{
$links[] = '<li id="navregister"'.((PUN_ACTIVE_PAGE == 'register') ? ' class="isactive"' : '').'><a href="register.php">Регистрация</a></li>';
$links[] = '<li id="navlogin"'.((PUN_ACTIVE_PAGE == 'login') ? ' class="isactive"' : '').'><a href="login.php">Вход</a></li>';
}
else
{
$links[] = '<li id="navprofile"'.((PUN_ACTIVE_PAGE == 'profile') ? ' class="isactive"' : '').'><a href="profile.php?id='.$pun_user['id'].'">Профиль</a></li>';
if ($pun_config['o_pms_enabled'] == '1' && ($pun_user['g_pm'] == 1 || $pun_user['messages_new'] > 0))
$links[] = '<li id="navpmsnew"'.(((PUN_ACTIVE_PAGE == 'pms_new') || ($pun_user['messages_new'] > 0)) ? ' class="isactive"' : '').'><a href="pmsnew.php">ЛС'.(($pun_user['messages_new'] > 0) ? ' ('.$pun_user['messages_new'].(empty($pun_config['o_pms_flasher']) ? '' : ' <img style="border: 0 none; vertical-align: middle;" src="img/flasher.gif" alt="flasher" />' ).')' : '').'</a></li>';
if ($pun_user['is_admmod'])
$links[] = '<li id="navadmin"'.((PUN_ACTIVE_PAGE == 'admin') ? ' class="isactive"' : '').'><a href="admin_index.php">Админка</a></li>';
$links[] = '<li id="navlogout"><a href="login.php?action=out&id='.$pun_user['id'].'&csrf_token='.pun_hash($pun_user['id'].pun_hash(get_remote_address())).'">Выход</a></li>';
}
?>
При этом "Привет, мир!" я вижу, значит пути я указал правильно. Но больше ничего не выводится.. я в PHP не разбираюсь, но насколько понимаю, нужно еще что-то где-то подключить)
Буду очень благодарен за помощь в этом вопросе.
Offline
@PNG, не то.
Что на fluxbb.org, что на fluxbb.fr, заголовок общий, который виден на всех страницах, ни как не относится к заголовку форума. Это отдельный код.
На обоих сайтах заголовок форума виден только на страницах форума.
Моя сборка FluxBB 1.5, ForkBB · сообщество
Offline
Хотя, вру. На французском сайте заголовок от форума на всех страницах.
Видать там заголовок и футер встроены в файл doku.php.
Моя сборка FluxBB 1.5, ForkBB · сообщество
Offline
@Visman, я хотел бы встроить именно заголовок форума в вики. Не обязательно целиком, но что бы выводились ссылки вход/регистрация (если пользователь не авторизован) и профиль/ЛС/выход (если авторизован). Но как это сделать не знаю
Offline
@PNG, обращайся лучше с этим на форум dokuwiki. Там есть русский раздел.
Я глянул у них на сайте инфу. dokuwiki поддерживает шаблоны, в шаблонах можно вписывать php код. Вероятно все это можно так реализовать, но так как я с dokuwiki не работал, более точно ни чего не подскажу.
Моя сборка FluxBB 1.5, ForkBB · сообщество
Offline
Не без помощи добрых людей вопросе решен. Может быть кому-нибудь пригодится:
Сперва устанавливаем и настраиваем плагин (для докувики), связывающий FluxBB 1.5.6 и DokuWiki "Weatherwax" (_https://gist.github.com/franzliedke/5743534). После установки плагина при авторизации на форуме должна автоматом происходить авторизация в вики.
Затем правим шаблон вики для вывода элементов из заголовка форума. Пример на стандартном шаблоне DokuWiki:
откройте файл lib/tpl/dokuwiki/tpl_header.php
найдите строку:
if (!defined('DOKU_INC')) die();
после добавьте строку:
global $pun_user, $jsHelper, $pun_config;
если на форуме используется мод личных сообщений от Visman, то ниже добавьте еще одну строку:
require PUN_ROOT.'include/pms_new/common_pmsn.php';
затем найдите следующий код:
<ul>
<?php
if ($_SERVER['REMOTE_USER']) {
echo '<li class="user">';
tpl_userinfo(); /* 'Logged in as ...' */
echo '</li>';
}
tpl_action('admin', 1, 'li');
tpl_action('profile', 1, 'li');
tpl_action('register', 1, 'li');
tpl_action('login', 1, 'li');
?>
</ul>
и замените его на (строки, отвечающие за вывод информации о ЛС закомментированны, раскомментируйте их при необходимости):
<ul>
<?php
if ($_SERVER['REMOTE_USER']) {
echo '<li><a href="http://'.$_SERVER['SERVER_NAME'].'/forum/profile.php?id='.$pun_user['id'].'">Профиль ('.pun_htmlspecialchars($pun_user['username']).')</a></li>';
//if ($pun_config['o_pms_enabled'] == '1' && ($pun_user['g_pm'] == 1 || $pun_user['messages_new'] > 0))
//echo '<li id="navpmsnew"'.(((PUN_ACTIVE_PAGE == 'pms_new') || ($pun_user['messages_new'] > 0)) ? ' class="isactive"' : '').'><a href="http://'.$_SERVER['SERVER_NAME'].'/forum/pmsnew.php">ЛС'.(($pun_user['messages_new'] > 0) ? ' ('.$pun_user['messages_new'].(empty($pun_config['o_pms_flasher']) ? '' : '' ).')' : '').'</a></li>';
if ($pun_user['g_id'] == PUN_ADMIN)
echo '<li><a href="http://'.$_SERVER['SERVER_NAME'].'/forum/admin_index.php">Админка</a></li>';
echo '<li><a href="http://'.$_SERVER['SERVER_NAME'].'/forum/login.php?action=out&id='.$pun_user['id'].'&csrf_token='.pun_hash($pun_user['id'].pun_hash(get_remote_address())).'">Выход</a></li>';
}
else
{
echo '<li><a href="http://'.$_SERVER['SERVER_NAME'].'/forum/register.php">Регистрация</a> | <a href="http://'.$_SERVER['SERVER_NAME'].'/forum/login.php">Вход</a></li>';
}
tpl_action('admin', 1, 'li');
?>
</ul>
Результат: _http://elementary-os.ru/forum/ и _http://elementary-os.ru/docs/
Offline
спасибо!
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Offline
Добавочка:
Захотелось получать готовый распарсенный текст страницы wiki в свою CMS. Нашел руководство:
Integrate DokuWiki to your website
дело сводится к наследованию от стандартного парсера (в doku он называется "рендерер") чтобы подменять base url у локальных ссылок.
Упрощенно так:
require DOKU_PATH . '/inc/init.php';
require './include/My_Renderer.php';
$renderer = & new My_Renderer();
$renderer->set_base_url(MY_BASE);
/*...
обработка специфичных для doku цепочек инструкций
... */
$html = $renderer->doc;
После чего $html содержит текст страницы (только контент без интерфейсных штучек). Этот текст можно вставлять в свой шаблон какой захочешь.
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Offline
Страницы 1