InvisionBoard как средство создания конференции

InvisionBoard как средство создания конференции

Здравствуйте. Прежде чем читать далее, задайте себе вопрос: "Каким образом я ищу ответы на необходимые мне вопросы, когда нахожусь в Сети?" В принципе, основных источников тут только два: первый — это поисковые машины (google.com, yandex.ru, punto.ru и т.д.), второй — веб-форумы или конференции.

Сетевые конференции существуют еще со времен сети FIDO и активно используются в Интернете и сегодня. Причиной такой их популярности является тот факт, что на конференции происходит обмен опытом и мнениями. К тому же, конференции — это нечто среднее между чатами и обыкновенными статичными веб-страничками. Ответ тут получить можно только тогда, когда на конференцию заглянет человек, знающий ответ на вопрос. Не факт, что при помощи поисковой машины вы всегда найдете то, что действительно нужно. В случае с конференцией такой ответ можно получить практически всегда. Однако конференции тоже бывают разной направленности. Есть конференции, посвященные разным вопросам. Это так называемые универсальные конференции. Примером таких может служить форум на портале tut.by. В принципе, он не посвящен какому-то конкретному вопросу и предлагает множество тем для обсуждения — от музыки до маркетинга. Есть некое промежуточное звено форумов — универсально-тематические. Примером такого форума может быть небезызвестный RU-Board (forum.ru-board.com). Он посвящен компьютерной тематике в широком смысле этого слова. Это значит, что тут обсуждается и hardware, и software, и мобильная связь. Однако самыми качественными форумами можно считать форумы тематические. На таких конференциях создается сообщество людей, интересующихся только конкретной тематикой и вопросами. Примером таких форумов могут быть Onliner (forums.onliner.by — мобильная связь), Проект белорусских программистов (forum.codeby.net), linux OS (linux.hitech.by/forum) и прочие. Именно последних в Сети больше всего. Однако от слов к делу.
Итак. Сегодня многие люди, имеющие домашние странички, мечтают превратить свое хобби в некоторое комьюнити, чтобы увеличить обратную связь с посетителями сайта. Электропочты, как правило, становится уже мало. Да и создать сообщество таким образом не получается. Нужна конференция. Однако какую выбрать? Существует огромное количество как платных, так и бесплатных конференций. В КГ уже описывалось несколько движков конференций. Единственным действительно хорошим был phpBB2. Он не использует CGI и сделан довольно качественно. Однако вдобавок к этому сегодня есть очень хорошо и динамично развивающийся форум, имя которому — InvisionBoard. Вот что он собой представляет.
Это современный быстро развивающийся движок на PHP + MySQL.
Непосредственные его требования: PHP 4.0.3 или выше (4.1+ рекомендуется ) и mySQL 3.22 или выше (3.23.33+ рекомендуется).

По заявлению разработчиков, основными фишками движка являются:
• Удобное и продуманное администрирование с отличным контролем над пользователями и форумом, возможность использовать скины (варианты дизайна) и language packs (языковые модули).
• Легкое модерирование. Вы сможете назначить модераторов, которые будут иметь все средства контроля над содержанием форума и поведением пользователей.
• Огромное количество функциональных возможностей для ваших пользователей: персональная почта, календарь, возможность подписки на темы вашего форума и получения уведомления по
e-mail'у и многое другое.
• Безопасность. Большое внимание уделено проблемам безопасности, реализованы такие вещи, как криптографическая защита паролей, возможность администратора запрещать использование html-тегов, блокировку пользователей, бан-лист для определенных слов (например, фильтрация матерных выражений), запрет на использование JavaScript в сообщениях и многое другое.
В итоге это современный, быстрый, с огромным числом функций форум, имеющий большое число приверженцев, и способный выдержать большие нагрузки движок.
Первый взгляд обманчив! После просмотра стандартного форума на сайте разработчика я бы не сказал, что он мне очень-то понравился. Опять очередной клон vBulletin с дизайном от phpBB (есть что-то общее!). Как я ошибался, я понял только скачав этот движок! И вот почему.

Очевидные плюсы:
• Бесплатность.
• Русская поддержка. А значит, и доступные переводы!
• Форумы поддержки, на мой взгляд, очень удобны! В частности, модификация с разделением важных тем и проч.
• Распространение Open Source позволяет не только быстро закрывать ошибки движка, более того: есть возможность поучаствовать в написании движка.
• Проект находится в постоянной работе!

Замеченные недостатки:
• Все-таки дизайн (начальный). Не знаю, как вам, но мне он особенно не понравился (хотя это, как известно, дело вкуса, но придраться-то к чему-то все же надо:)). Привык я к рубордовскому.
Я был поражен, когда увидел код движка! То, что он полностью написан с нуля, не вызывает никаких сомнений: весь движок построен на классах! А что это значит для рядового пользователя? Быстрота и удобство! Я как человек, имеющий отношение в большей степени к прикладному программированию, могу сказать, что все программы, написанные по принципу ООП, работают намного быстрее своих аналогов, написанных при помощи функционального программирования, и легко модернизируемы!
То, что движок продуман от начала до конца, не вызывает споров. Кроме того, он самый быстрый при работе с БД, ведь тот факт, что запрос LEFT JOIN... ON используется в скрипте единожды, говорит о многом, а точнее — о продуманности и быстродействии. Классовая структура при ее понимании открывает огромные возможности по развитию/модификации скрипта без потери быстродействия. Недаром уже сейчас существует огромное количество модификаций/хаков для Invision'а. Система поддержки тем, так же, как и у phpBB, написана на классах с вытекающей отсюда некоторой медлительностью, темы можно редактировать через Панель Администратора (о ней речь пойдет ниже), а вот с редактированием их напрямую у меня на локальном сервере возникли проблемы: обновление происходило не всегда, и приходилось редактировать тему в ACP — Панель Администратора). Вместе с системой шаблонов понравилась еще находка по выделению общей схемы следования блоков (пример: шапка — форумы — информация — копирайт) — очень удобно на мой взгляд! Да, замечу, что шаблоны попытались максимально избавить от php, и это удалось! Плюсы такого подхода в том, что любой человек, не знающий, кроме html, ничего, спокойно может изменять внешний вид страницы! Хотя от этого начинает страдать модифицируемость!

Скорость работы движка самая высокая среди всех рассмотренных мною за все время! Собственно, объяснять, почему, не стоит, все должно быть понятно — я уже об этом упомянул...
Панель Администратора. Ахиллесова пята такого красивого движка! Но, в отличие от phpBB, она богаче! По крайней мере, все важные функции, какие могут потребоваться администратору, есть! Несколько неудобна (в некоторой степени не продумана) система создания форумов. Например, для того, чтобы определенный форум имел конкретную тему (отличную от других), необходимо:
1) создать Sub Category Forum;
2) в этот Sub Category добавить нужный форум, и только уж потом изменить тему у Sub Category.
Мудрено, неправда ли? Совершенно нелогичной показалась мне возможность добавления спонсора категории форумов! Причем эта опция у меня так и не заработала! Однако удобно то, что сразу можно писать правила для каждого форума! Это очень полезная опция, и ни у какого другого движка (в стандартной реализации, имеется в виду) я ее не встретил! Мультиплатформенность — стабильное поведение и на *nix-платформах, и на Win32 — послужила только плюсом этому движку.

Модификации/хаки
Собственно, изначально движок имеет ограниченный набор функций, которых хватает только что для работы! Но это дело наживное, так как в Сети я нашел огромное количество свободно распространяемых модификаций. Для желающих получить сайт + форум есть хак IBF Portal. Это дает возможность связать сайт с форумом. В последней версии движка появился встроенный портал IP Dynamic Lite. Он немного проще IBF Portal, но в то же время встроенных функций ему хватает с лихвой. Правда, с установкой его, в отличие от самой конференции, почему-то часто возникают проблемы. Дело в том, что установка форумов достаточно хорошо документирована, не сильно отличается от установки других форумов, описанных в прошлых номерах газеты, и в нашем релизе (см. ниже) уже русифицирована и интуитивно понятна, тогда как с порталом дела обстоят хуже. Поэтому я хочу немножко описать саму установку портала в общих чертах, чтобы у вас не возникало никаких вопросов.

Установка портала
Установить этот портал в действительности проще простого. Для этого потребуется файл index.php из папки ipdynamiclite полного дистрибутива 1.2 Final.

Итак, возможно несколько вариантов.
1. Сам форум находится в какой-то вложенной папке, например, forums. Тогда просто залейте этот файл (index.php) в ваш базовый каталог, предварительно подправив его в любом текстовом редакторе:

define( 'ROOT_PATH', "./forums/" ); — здесь нужно указать путь к скриптам форума.
$this_script = 'index.php'; — здесь нужно указать название базового файла скрипта (т.е. если вы этот файл вы переименуете).

Теперь это будет ваша стартовая страничка. Включается портал и настраивается в админ-панельке.

2. Если вы хотите использовать этот скрипт в той же папке, что и форум, можно поступить следующим образом: переименовываем этот файл (любое имя), правим две указанные выше строчки, и все. Далее нужно вручную добавить ссылку на портал на форуме. Это можно сделать в админ-панельке: Skins & Templates -> HTML Templates -> Manage HTML -> Global HTML Elements -> Board Header.
Здесь находим <!--IBF. CHATLINK--> и выше вставляем:

<img src="{ibf.vars.img_url}/atb_chat.gif" border="0" alt="" /> <a href= '{ibf.vars.home_url}/ipd. php'> Portal</a>

где вместо ipd.php нужно вставить название файла (т.е. во что вы его переименовали). Теперь стартовой страницей будет форум, а в навигации будет ссылка на портал.

Если вы перед этим устанавливали хаки, связанные со скинами, то не забудьте их ресинхронизировать: Skins & Templates -> HTML Templates -> Resynchronise...
Необходимо сделать Run Tool.
Работу этого портала можно посмотреть по адресу: http://www.codeby.net . Что касается самого форума, то действующая его версия есть по адресу forum.codeby.net, там же вы можете посмотреть в действии и все установленные модификации. По адресу http://forum.codeby.net/topic152.html#entry790 вы можете скачать уже модифицированный и полностью русифицированный российской командой поддержки форум invisionboard с множеством установленных на него модификаций, которые уже протестированы и делают его просто превосходным местом для общения (для скачивания надо зарегистрироваться на форуме).

Общее впечатление от работы скрипта
Скорость, скорость и модернизируемость! В общем, очень хорошая, а главное — бесплатная альтернатива такому монстру, как vBulletin, но не во всем: администрирование, к сожалению, не на высоте! Да и вот еще есть проблема: разработчики предоставляют только одну, последнюю версию для скачивания, а, как известно, новые релизы грешат своей нестабильностью. Именно поэтому я рекомендую вам скачать модифицированную версию с вышеуказанного сайта. Она уже довольно неплохо протестирована, русифицирована и стабильна в работе.

Ресурсы
Нельзя не упомянуть, что при создании статьи использовалась помощь многих людей, занимающихся модификацией и изучением InvisionBoard. Посему хочу выразить огромную благодарность за поддержку посетителям форума www.ibresource.ru, которые помогли модифицировать прекрасный форум. Среди английских сайтов поддержки следует выделить официальный www.invisionboard.com и базу модификаций www.ibplanet.com . Наша, белорусская модификация установлена по адресу forum.codeby.net, где вы можете свободно ее скачать. Удачи.

Сергей Жуковский, http://www.codeby.net


Компьютерная газета. Статья была опубликована в номере 40 за 2003 год в рубрике программирование :: разное

©1997-2024 Компьютерная газета