OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 12 Декабрь, 2017 01:45

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Визуализация процедур и HTML
СообщениеДобавлено: Понедельник, 29 Июль, 2013 21:23 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 111
ПРОГРАММА DAL_2_HTML v.0.84
Вложение:
dal2_084.rar [720.39 КБ]
Скачиваний: 79


Среда разработки: Delphi 4, проект может быть загружен в Delphi 2009
и выше и собран там без ошибок.
Общий размер файлов исходного кода - чуть меньше 6800 строк исходного
кода и чуть больше 221 Кбайт.
Для запуска программы кроме исполняемого файла dalvjaz2.exe и
задаваемых в конфигурации текстовых файлов нужны файлы dal2htm.cfg и
styles.cfg.
В архиве dal2_084.rar находятся исполняемый файл программы dal2html,
файлы исходного кода, файлы проекта, файлы конфигурации программы
dal2html и каталоги с jpg-файлами.

Сначала несколько рисунков, а пояснения будут ниже.

схема в классическом стиле "черные линии на белом фоне":
Вложение:
51_8.jpg
51_8.jpg [ 34.42 КБ | Просмотров: 3446 ]

__коэф_выравн_блоков = 85 :
Вложение:
1_23.jpg
1_23.jpg [ 347.2 КБ | Просмотров: 3446 ]

Вложение:
51_10.jpg
51_10.jpg [ 156.36 КБ | Просмотров: 3446 ]

__коэф_выравн_блоков = 100, отключена цветность и задан вывод для блоков
их начальных номеров строк в текстовом файле:
Вложение:
1_23_2.jpg
1_23_2.jpg [ 274.63 КБ | Просмотров: 3446 ]

Вложение:
51_10_2.jpg
51_10_2.jpg [ 126.13 КБ | Просмотров: 3446 ]


Краткое описание работы с программой dal2html

После запуска программы dal2html окно схемы на экране не появляется,
а отображаются список заданных в конфигурации файлов, 2 кнопки -
"создать html-файл" и "о программе" - и строка состояния в нижней
части окна программы.
Чтение конфигурации сразу после запуска программы занимает несколько
секунд.
Чтобы сгенерировать htm-файл, нужно выбрать в окне программы один из
списка заданных в конфигурации файлов исходного кода или документации,
после чего нажать кнопку "создать htm-файл".
htm-файл и вызываемые при его просмотре jpg-изображения будут созданы
(jpg-файлы структурных блок-схем создаются из комментариев в исходном
коде программы или из текста псевдокода в файле документации) и
помещены в рабочий каталог программы, после чего этот htm-файл можно
будет просматривать любым интернет-браузером.
Для отображения в окне браузера внесеных в текстовый файл изменений
нужно заново сгенерировать htm-файл для этого текстового файла, после
чего нажать кнопку "обновить" в окне браузера.


Логика работы программы dal2html

Программа начинает формировать htm-файл с создания его заголовка с
параметрами просмотра нижеследующего текста <tt><pre>, что обеспечивает
просмотр текста в том виде, как он был набран в текстовом редакторе.

После этого программа автоматически генерирует первую запись htm-файла
001 со ссылками на остальные записи файла. На эту запись можно будет
ссылаться из других htm-файлов при совместном просмотре в браузере
нескольких файлов.
Пример 1-й записи сгенерированного htm-файла:
Код:
001 - список записей

ТЕКСТ.01
--------
СХЕМА.1. u_ls.52 - создание htm-файла 
-------------------------------------
СХЕМА.2. u_ls.57 - получение html-ссылки
----------------------------------------
СХЕМА.3. u_files.56 - запись ссылочной карты в htm-файл
-------------------------------------------------------
СХЕМА.8. простой цикл-силуэт
----------------------------
СХЕМА.10. пробная процедура    РИС . .2
---------------------------------------

ТЕКСТ.01  вторая запись htm-файла

это ссылки на первые записи других файлов
формат
ДАЛВЯЗ 2   полученная html-ссылка

_>1.001    1.001   
           -----
_>2.001    2.001
           -----
_>3.001    3.001
           -----
_>4.001    4.001
           -----

В процессе генерации htm-файла программа переводит гипертекстовые ссылки
из формата ДАЛВЯЗ 2 в формат HTML, генерирует из текстов программных
записей jpg-файлы и привязывает к блокам созданных структурных блок-схем
ссылки на другие записи htm-файла при помощи ссылочной карты map. Для
каждого блока карты формируется своя строка area со следующими
параметрами:
- coords: задание координат блока на схеме
- href: гипертекстовая ссылка
- title: задание текста для всплывающего окна блока

Т.к. ссылочная карта при просмотре в браузере не отображается, то сразу
после схемы следует некоторое количество пустых строк, ограниченных
сверху и снизу строками "ссылки cхемы:" и "конец ссылок схемы".


Главные улучшения по сравнению с версией 0.83 программы dalvjaz2

* Переход к html-формату, являющемуся одним из общепризнанных
стандартов документирования программ.

* Проделана значительная работа по оптимизации построения схемы, в
том числе с учетом замечаний Алексея Донского по выравниванию левых
границ блоков действий вертикали. В конфигурации введен параметр
"__коэф_выравн_блоков" - коэффициент выравнивания блоков вертикали по
по левой границе, допустимые значения: 0 и от 65 до 100.
Если __коэф_выравн_блоков = 0, то блоки не выравниваются, у каждого из
них свой размер и все они центрированы по отношению к своей вертикали.
Если __коэф_выравн_блоков >= 65, то блоки выравнимаются по левому краю,
при этом если размер блока < "__коэф_выравн_блоков" процентов от ширины
максимального блока вертикали, то размер блока по ширине задается
равным значению "0.__коэф_выравн_блоков" от размера самого широкого
блока вертикали.
Когда __коэф_выравн_блоков = 100, то все блоки вертикали, кроме блоков
условий и переходов к другим веткам, становятся одинаковыми по ширине
и центрированными по отношению к вертикали.

* Введен файл стилей, позволяющий по желанию пользователя создавать
как традиционные схемы с черными линиями на белом фоне, так и схемы в
стиле "оттенки серого" и цветные схемы со вставкой в блоки пиктограмм,
полноценных jpg-изображений и с возможностью менять цвета и фонты для
всей схемы в целом или для каждого ее блока по отдельности.

Более подробное описание настройки конфигурации программы dal2html
см. в файлах dal2htm.cfg и styles.cfg.



Текст, формирующий приведенный выше цветастый рисунок:
Код:
СХЕМА.10. пробная процедура    РИС . .2

    * начало                                                 РИС .11

    * если (условие 1 = 10)                                  РИС .12

        * если  (условие 2 = 20)                             РИС .13

            * действие 1                                     РИС .14

        * иначе если  (условие 3 = 30)                       РИС .15 .3

            * действие 2                                     РИС .002

        * иначе если  (условие 4 = 40)                       РИС .16

            * действие 3                                     РИС .004  [-]

        * конец

    * конец

    * выход

* КОНЕЦ СХЕМЫ




И в заключение небольшое рассуждение на отвлеченную тему.

В чем разница между автоматным и силуэтным программированием ?

У них практически одинаковый логический аппарат, т.к. switch - это
(если не использовать фокусы с отсутствием break в конце вариантов
switch) всего лишь альтернативный вариант сложного условия:
* если
* иначе если
...
* иначе если
* иначе
* конец


Разница в целях.

В автоматном программировании ставится задача - логика программного
кода должна описывать логику работы автомата, и эта задача может
решаться либо путем использования switch, либо путем использования
сложного условия.

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

К тому же, в отличие от текстового структурного программирования,
просматривается не сам текст процедуры, а комментарии к нему,
обведенные в рамки, соединенные линиями логических переходов, что
позволяет уменьшить информационное давление на программиста.
При необходимости текст процедуры может быть быстро просмотрен во
всплывающем окне выбранного блока схемы, или путем перехода к нему
по щелчку левой кнопки мыши на выбранном блоке схемы.

В силуэтном программировании ветки силуэта могут:
- либо соответствовать состояниям автомата в случае решения задачи
автоматного программирования;
- либо являться средством деления логики процедуры на размещаемые по
горизонтали и умещающиеся по высоте в окно просмотра логические
фрагменты с целью сделать отображение схемы алгоритма более удобным
для восприятия, чем при вертикальной логике отображения алгоритма.

Т.е силуэтное программирование кроме решения задачи автоматного
программирования может решать и другую задачу, которая и является
главной задачей силуэтного программирования - обеспечить удобный
для программиса визуальный контроль за развитием логики процедуры в
процессе написания процедуры вне зависимости от того, описывает ли эта
процедура логику работы автомата или нет.

Если процедура не является автоматом, то для ДАЛВЯЗ 2 выравнивать
ветки по высоте можно просто перенося в текстовом редакторе фрагменты
исходного кода из одной ветки в другую.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Вторник, 30 Июль, 2013 15:04 

Зарегистрирован: Воскресенье, 24 Февраль, 2008 15:32
Сообщения: 332
Откуда: Москва
Дмитрий_ВБ писал(а):
В силуэтном программировании правилу структурного текстового
программирования "текст процедуры должен целиком умещаться в экран" соответствует правило "ветка силуэта должна целиком умещаться в экран".

Использование горизонтальной полосы прокрутки позволяет с бОльшим комфортом для глаз, чем при использовании вертикальной полосы прокрутки, просматривать схему алгоритма процедуры.


Дмитрий Владимирович, у меня два вопроса.

1. Какой размер экрана у Вашего компьютера в дюймах — 13" или 15" или 15,6" или 17"?
Или что-нибудь иное?

2. В некоторых популярных программах горизонтальная прокрутка выполняется колесиком мыши при нажатой клавише Shift.
А что Вы рекомендуете?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Вторник, 30 Июль, 2013 19:09 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 111
Здравствуйте, Владимир Даниелович.

У меня монитор 17" с разрешением 1280 * 1024.
А по горизонтали я обычно сдвигаю экран, перетаскивая бегунок скроллера мышью с нажатой левой кнопкой.
Хотя и колесиком бы неплохо, но в значительной части программ оно по умолчанию работает с вертикальной полосой прокрутки,
поэтому я уже привык двигать по горизонтали мышью с нажатой левой кнопкой.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Суббота, 03 Август, 2013 20:47 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 111
РАБОТА С БОЛЬШИМИ ИЗОБРАЖЕНИЯМИ В ПРОГРАММЕ DAL_2_HTML v.0.85

Вложение:
dal2_085.rar [776.04 КБ]
Скачиваний: 73


В архиве dal2_085.rar, кроме исполняемого файла, файлов исходного кода, файлов проекта
и файлов конфигурации программы содержатся текстовый файл и все изображения,
нужные для создания схемы "Дачные прогулки"

Вложение:
52_3.jpg
52_3.jpg [ 818.35 КБ | Просмотров: 3340 ]


Все делается в спешке, т.к. свободного времени как обычно не хватает.
Да и на этой неделе свободного времени было мало, поэтому работу с
большими визуальными схемами мне удалось проверить только вчера.
(но, вообще говоря, как концептуальный макет, пригодный для развития
другими программистами, версия 0.84 свою задачу решает, внесенные
в версию 0.85 исправления касаются частностей, хотя и имеющих
значение при практической работе по созданию визуальных схем)

Выяснилась такая вещь.
При приближении размера jpg-файла к 1 Мб и размера bmp-файла к 100 Мб
библиотеки Delphi 4 (а может, Windows XP) отказываются работать с
графическими файлами таких размеров, кстати браузер тоже отказывается
открывать bmp-файл такого размера.
Понятно, что конкретные цифры тут зависят от объема оперативной памяти
компьютера и еще много от чего, но тенденция понятна.

Как отказываются ?
При генерации htm-файла начинают всплывать окна с сообщениями
"JPEG error #36" и "недостаточно памяти для выполнения задачи".
Это только одна из причин, почему я не захотел встраивать генерацию
htm-файла в графическую оболочку dalvjaz2.
А ведь если ты встроил, а у тебя постоянно лезут при малейшем чихе
системные сообщения об ошибках, то потенциальные пользователи вряд ли
будут в восторге от этого.
Понятно, как с этим бороться - нужно искать и подключать
специализированные графические библиотеки, а для этого у меня нет ни
свободных моральных сил, ни свободного времени, ни желания.


Как я это проверял - просто копировал весь текст начиная с первого
"* если" и заканчивая последним "* конец" в буфер обмена и вставлял
прямо перед действием "* выход"
подсистема jpeg не выдержала даже удвоения, т.е. для нее визуальные
схемы размера "Морозко" или "Дачные прогулки" уже приближаются к
максимальной границе.
Подсистема bmp выдержала четырехкратное увеличение размера и заткнулась
с сообщением "недостаточно памяти для выполнения задачи" при
пятикратном увеличении размера исходного текстового файла.

(кстати напомню, что схема "Дачные прогулки" выполнена в формате
"таблица-силуэт", где внутри цикла-силуэта друг за другом следуют
несколько сложных условий, образующих строки таблицы-силуэта)

Для справки приведу сравнительные размеры jpg и bmp файлов:
для существующего размера схемы "Дачные прогулки" получаем, что размеры
jpg в зависимости от используемых стилей колеблются в пределах от 815Кб
до 850Кб, а размер bmp составляет чуть больше 33Мб.

(для сравнения - размер цикла-силуэта u_dalvj.23 "подсчитываем размер схемы",
не включающего рисунков, равен чуть меньше 315Кб)

При двукратном увеличении размера исходного текстового файла, когда
jpg уже не работает, размер bmp превышает 52Мб, и браузер этот файл
просматривает.

Я включил в dal2htm.cfg параметр
__генерация_bmp "0" ; 0/1 - установить в 1, если возникают
; проблемы с генерацией jpg

Казалось бы - тупик.
Даже увеличение схемы "Дачные прогулки" в 2 раза визуально не производит
особого впечатления: типа, можно было бы и побольше.

Вот тут и вступает в дело html.

Допустим, у нас в сгенерированном файле с десяток схем размером со
схему "Дачные прогулки".
Тогда в действии "* выход" каждой из них можно сделать ссылку "_>.N"
на ту схему, которая будет продолжением.
Кстати, необязательно в действии "* выход" - ссылку на другие схемы
можно вставлять в любом действии.
Кроме того я подумал, что было бы удобно, если бы по ссылке действия
можно было бы открыть произвольный html-файл.
Теперь эта проблема решается так:

* если [-] _><a href="../dalvj2.htm#i.2">dalvj2.2</a>

т.е. после определителя ссылки программы dal2html помещаем стандартную
html-ссылку.



html-файл, содержащий только схемы

Теперь описание модуля в dal2htm.cfg выглядит так:
Код:
;                                                        в htm-файл:
; N модуля     N    ссылочный  имя                       1: схемы
;            ката-  N модуля   файла                     2: схемы и
;            лога   м.б.>100                ПРОСМ/---       текстовые записи       
;                                                        3: схемы и все записи
...
__модуль07   "02>     52       dacha.txt      ПРОСМ           1"

Т.е. html-файл превратился в галерею рисунков, но не простых, а таких,
в которых можно задавать логические связи между элементами рисунка, а
также гиперссылки на другие рисунки и на произвольные html-файлы.

Теперь файлы схем не обязаны находиться в рабочем каталоге, куда будут
помещаться сгенерированные html-файлы, а могут находиться и в одном
из подкаталогов рабочего каталога, имя которого задается в dal2htm.cfg.

При тестировании программы dal2html со схемой "Морозко" (выложенной
в конце прошлого года в теме "Программы AB_VJAZ и DAL_VJAZ", у которой
размер по вертикали значительно больше размера по горизонтали) с разными
стилями отдельных блоков выяснилось, как минимум по оси У есть небольшая
погрешность в подсчете размеров схемы, которая при большом размере схемы
по У привела к тому, что половина блока "* выход" (конец схемы)
выехала за границы схемы.
В чем тут дело, я пока не разобрался, поэтому на всякий случай решил
окружить схему на листе схемы рамкой размером 100 пикселей и вообще
вынести задание расстояний схемы от границ листа схемы в dal2htm.cfg.

Кроме того, я вынес в dal2htm.cfg задание базовых размеров схемы bdx
и bdy, от размеров которых зависят размеры между элементами схемы
по вертикали и горизонтали, а также размеры выступающих треугольников
блоков условий.
Сейчас bdx и bdy равны:
bdx = ширина символа фонта 'Courier New', 9
bdy = (высота символа фонта 'Courier New', 9) + 2


И еще одна особенность, которая была введена в 0.84, но о которой
я не упомянул в прошлый раз - теперь возможен одновременный
просмотр файлов исходного кода и документации (псевдокода) и
задание взаимных ссылок между ними. Эта возможность может быть
полезной тем, кто в принципе не хочет писать никаких комментариев
в своем исходном коде.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Понедельник, 05 Август, 2013 20:11 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 111
Что-то вязко идет у меня процесс обновления версии в этот раз.

К сожалению, в программу вкралась ошибка, которая помешает
просматривать сгенерированные htm-файлы под linux.

Чтобы преодолеть ее, нужно внести 2 исправления:
Код:
1) в файл u_ls.pas:

2210          form_ls.polnoe_imq_shemy :=cfg_ctlg_shem + '\' + stm;
2211 ***      form_ls.poln_imq_sh_htm :=cfg_ctlg_shem_htm  + '/' + stm;
2212          form_ls.imq_shemy := stm;

в строке 2211 '\' нужно заменить на '/'
(строка показана после исправления)

2) в файл dal2htm.cfg:

__каталог_схем_htm       "./gfiles"
(строка показана после исправления)


Выкладываю архив с исправленными u_ls.pas и dal2html.exe

А в файл dal2htm.cfg уж пожалуйста, те кому это интересно,
внесите исправление сами.

Вложение:
085_exe.rar [224.13 КБ]
Скачиваний: 72


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Среда, 16 Октябрь, 2013 22:18 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 111
DAL_2_HTML v.0.86

Реализовано разделение проекта на 2 части:
- исполняемый файл собирается в BB, его исходный код написан на КП и содержит логику верхнего уровня;
- дельфийские формы и процедуры собраны в DLL
(подробнее см. в первом сообщении темы "Визуальное программирование\Программная логика верхнего уровня")

Вложение:
dal2_086.rar [308.47 КБ]
Скачиваний: 67


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Четверг, 17 Октябрь, 2013 05:32 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 311
Откуда: Россия, Стерлитамак
А что надо запустить, что программу открыть?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Четверг, 17 Октябрь, 2013 18:47 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 111
Надо разархивировать файл в какой-нибудь каталог, например dal2html, и запустить выполняемый файл
dal2html.exe. После этого программа должна запуститься с заданной демонстрационной конфигурацией,
включающей написанный на русскоязычной версии КП файл MyD4.txt - в нем только 1 английский
идентификатор - название модуля в начале и в конце файла.
Чтобы осмысленно начать пользаваться программой, нужно ознакомиться с содержимым файлов
dal2htm.cfg и styles.cfg, прочитать с первого сообщения тему "Визуализация процедур и HTML" и скачать
одну из предыдущих версий, например, 0.84, чтобы поиграться с файлами, заданными там в конфигурации.

Чтобы осмысленно начать редактировать текст программы, надо ознакомиться с работой в средах
программирования Delphi (4 и выше) и BlackBox, уметь программировать на паскале и КП и понимать, что
такое DLL и как организована работа с ними в вышеуказанных средах программирования.

--------------------------------------------------------------

Конечно можно сказать, что программа dalvjaz2, а теперь dal2html развивается медленно.
Одна из причин этого в том, что я не знаю, нужна ли эта программа кому-нибудь еще кроме меня.
Попробуйте использовать программу dal2html для работы с вашими алгоритмами - ничего сложного
тут нет, надо только набрать в текстовом редакторе файл с псевдокодом, вызвать программу и
создать одним нажатием кнопки html-файл с подключенными к нему схемами, созданными из псевдокода
(программистам я советовать не буду - сами разберутся, если захотят).
Пробуйте, задавайте вопросы, делайте замечания, а я по возможности буду на них реагировать.
Тогда и программа начнет развиваться быстрее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Пятница, 18 Октябрь, 2013 03:48 

Зарегистрирован: Суббота, 16 Февраль, 2008 07:58
Сообщения: 311
Откуда: Россия, Стерлитамак
Попробую как будет время, но сразу скажу, мне нужна не сама программа, а лишь некоторые идеи из нее, и возможно алгоритмы посмотреть. Но это тоже пока в планах, хотел просто взглянуть, есть ли чего, что меня заинтересует.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Воскресенье, 22 Декабрь, 2013 18:52 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 111
Выкладываю версию 0.85.1, подробные пояснения см. в моем сообщении от 22.12.2013 в теме "КУБ-СИЛУЭТ..."
Планирую все обсуждения своих программ перенести туда, а здесь будут новые версии без комментариев.

Вложение:
dal2851.rar [592.54 КБ]
Скачиваний: 78


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Визуализация процедур и HTML
СообщениеДобавлено: Среда, 17 Июнь, 2015 22:37 

Зарегистрирован: Вторник, 15 Декабрь, 2009 11:43
Сообщения: 111
Выкладываю версию 0.87.1, пояснения см. в посте от 17.06.2015 в теме "КУБ-СИЛУЭТ ..."
Вложение:
dal2871.rar [660.59 КБ]
Скачиваний: 55


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2017, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB