Внимание!
Не все расширения для phpBB 3.2 совместимы с phpBB 3.3, главным образом из-за неверного синтаксиса в определениях сервисов (отсутствия обрамляющих кавычек - '...').
Перед обновлением необходимо убедиться в совместимости всех расширений.
Рекомендуется предварительно тестировать обновление на копии конференции (локально или на сервере).

Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.0

Проблемы с установкой или работой phpBB 3.1.x? Получите помощь здесь!
С 1 июля 2018 года phpBB Group прекращает поддержку phpBB версии 3.1.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.1 до 1 января 2019 года.
Подробнее: Окончание поддержки phpBB 3.1.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
RYUMASHKIN
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 21.12.2014 3:07
Откуда: Voronezh
Поблагодарили: 3 раза

Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.0

Сообщение RYUMASHKIN »

Так господа хорошие, как и обещал.
Вот вам рабочие настройки и работающий демо сайт. На текущий момент, регистрация на форуме отключена и доступна только авторизация.
Dual-login работает во всех направлениях без каких либо проблем и загвоздочек.
-Что касаемо вопроса установки на поддомен. Я пока утверждать не бурусь, но решение есть. Протестирую на локалке, выложу отдельно настройки. И скорее всего данное решение будет доступно не для всех хостингов.
Но на этом мы не заканчиваем нашу конфигурацию. Чуть позже выложу еще несколько дополнительных надстроек дабы довести до ума весь функционал.

На текущий момент замечен один недостаток в данной системе. Логин пользователя из Joomla используется на форуме в качестве имени пользователя. Надо будет подумать как решить данный вопрос.

Интеграция форума phpBB 3.1.2 с Joomla 3.3.6 через компонент JFusion 2.1.0
На борту мы имеем
-phpBB 3.1.2
-Joomla 3.3.6
-JFusion 2.1.0
-PHP Version 5.3.29
Конфигурация нашей настройки
Joomla - master
phpBB - slave
Dual Login - двух сторонняя аутентификация
Заметка от автора 
В большинстве случаев получается что форум добавляется уже на имеющуюся базу пользователей с настроенной до тонкостей системы регистрации через сайт от которой не хотелось бы отказываться и в будущем. К тому же проблема с миграцией пользователей с Joomla на phpBB так и не решена, хотя несколько лет назад связывался с разработчиками данного компонента и описывал суть проблемы и ее решение. В данном топике речь пойдет именно о настройке Joomla как основной системы регистрации пользователей и поддержкой двух сторонней аутентификации. С этим у меня как раз и возникали небольшие проблемы. Итак приступим
В дальнейшем мы рассмотрим настройку справедливую для случая когда Joomla установлена в основном домене а форум phpBB устанавливается в подпапку и не имеет отдельного домена.
В нашем конкретном случае мы имеем форум установленный в папку phpbb корневого домена http://world-on-line.ru/
Joomla - http://world-on-line.ru/
phpBB - http://world-on-line.ru/phpbb/


Настройка плагинов и компонентов в JOOMLA

Установка компонента (моста) JFusion в Joomla
Скрытый текст
К сожалению на текущий момент данный компонент не доступен для автоматической установки из JAD
Потому скачиваем и устанавливаем последнюю версию с сайта разработчика
Далее:
-Расширения > менеджер расширений
-Расширения > менеджер расширений->Загрузить файл пакета (если установлен JAD)
И выбираем скачанный нами архив jfusion_package
Устанавливаем пакет русской локализации для JFusion
Скрытый текст
-Компоненты > JFusion ->Language
Находим в списке ru-RU Russian (Russia) и нажимаем install (установить)
Устанавливаем плагин для интеграции phpBB
Скрытый текст
Компоненты > JFusion ->Cpanel->Настройка плагинов или Компоненты > JFusion ->Конфигурация
Находим автоматическую установку
-Установить От JFusion Сервер
И в выпадающем списке выбираем
Изображение
Жмем установить
В итоге мы имеем два установленных плагина которые нам понадобятся в настройке моста это phpbb3 и joomla_int
Изображение
Настройка плагина joomla_int для работы
Скрытый текст
В статусе joomla_int нажимаем не настроено и попадаем на первую страницу настроек
Далее настраиваем совой плагин как указано на скриншотах
Изображение
Изображение
Изображение
Изображение
Изображение
Не обращаем внимание на предупреждения в JFusion и идем далее
Настройка плагина phpbb3 для работы
Скрытый текст
В статусе phpbb3t нажимаем не настроено и попадаем на первую страницу настроек
Далее настраиваем совой плагин как указано на скриншотах со своими данными для подключения к БД и путями к форуму
Для того чтобы узнать полный(абсолютный) путь к папке создаем файл path.php
вставляем в него следующее содержание

Код: Выделить всё

<?php
echo 'Document root: '.$_SERVER['DOCUMENT_ROOT'].'<br>';
echo 'Полный путь к скрипту и его имя: '.$_SERVER['SCRIPT_FILENAME'].'<br>';
echo 'Имя скрипта: '.$_SERVER['SCRIPT_NAME'];
?>
загружаем в корень установленного форума и переходим по ссылке
http://ваш_сайт/папка_форума/path.php где скрипт и отобразит наш полный (абсолютный) путь до приложения
Далее как на скриншотах:
Изображение
Изображение
Изображение
Изображение
Изображение
Изображение
Изображение
Теперь для правильной синхронизации и создании пользователей в базе форума необходимо настроить группы по умолчанию
Если у вас в БД уже имеются определенное количество пользователей рекомендую для начала сделать бекап базы данных и только после этого приступать к синхронизации. Хотя создавать бекапы всех и вся перед изменением должно жить у вас в крови.
Настройка групп по умолчанию
Скрытый текст
Компоненты > JFusion ->Cpanel->Usergroups или Компоненты > JFusion ->Usergroups
Все же рекомендую именно таким образом выставить настройки групп. При данном варианте все администраторы сайта останутся таковыми и на форуме, все остальные пользователи попадут в группу зарегистрированные. Ну и если вы создали учетную запись при установке форума = вашей на сайте то не прийдется лишний раз лезть в БД и менять ручками группу с простого юзверя на админа
Изображение
На этом основная настройка наших плагинов закончена.
Задаем основной(master) и подчиненный(slave) плагины в настройках. CMS выбранная основной берет на себя функционал по регистрации пользователя, в подчиненной же регистрацию мы будем отключать.
Изображение
Теперь переходим в сPanel JFusion и включаем Плагин JFusion
ВключаемПлагин JFusion
Скрытый текст
Компоненты > JFusion ->Cpanel
И нажимаем включить плагин
Изображение
Изображение
Включение и настройка System - JFusion
Скрытый текст
Расширения > менеджер плагинов > System - JFusion
Изображение
Изображение
Изображение
Изображение
Итого из плагинов JFusion мы имеем включенные
Изображение
На этом настройка компонента JFusion и плагинов завершена.

Настройка phpBB
Все теперь смело переходим на форум , залогиниваемся, в панели выбираем пункт Администрировать
Авторизуемся в админ панели далее идем
1) Общие->настройки cookies
Скрытый текст
проверяем чтобы все выглядело следующим образом. Внимание!!! тут домен куки оставляем без точки в начале
Изображение
2) Общие->Аутентификация
Скрытый текст
В качестве метода аутентификации указываем Db
Как видите Jfusion тут отсутствует
Изображение
3) Общие->Регистрация пользователей
Скрытый текст
И отключаем регистрацию через форум
Изображение
На этом настройки плагинов, компонентов и CMS у нас закончены. Но осталось одно большое недоразумение которое не позволяет нам автоматически создавать пользоватеелй в базе форума после регистрации на сайте а так же не позволяет синхронизировать базу пользователей сайта и форума.
Для решения этого вопроса нам необходимо перейти к нашей базе данных форума для последнего штриха в завершении интеграции Joomla и phpBB когда сайт является у нас основой.
Ну что же идем в phpMyAdmin и выбираем базу данных нашего форума.
Настройки в phpMyAdmin
Скрытый текст
Переходим в таблицу с пользователями -- > префиксБД_users
Выбираем вкладку структура, прокручиваем в самый низ и добавляем три поля в нашу с вами таблицу
Изображение
1) имя - user_pass_convert тип - VARCHAR длина значения 255 сравнение utf8_bin
2) имя - user_occ тип - VARCHAR длина значения 255 сравнение utf8_bin
3) имя - user_interests тип - TEXT сравнение utf8_general_ci
И нажимаем сохранить.
Изображение
Вот и все, на этом настройка интеграции закончена, новые пользователи будут создаваться как БД сайта, так и в БД форума. И теперь то мы со спокойной душой можем провести синхронизацию пользователей через компонент JFusion

Для этого переходим в админку Joomla.
Компонеты->JFusion->Новая Синхронизация
В направлении синхронизации выбираем: Импорт пользователей во вспомогательную систему.
В настройке phpbb3 выбираем: Включить этот плагин в синхронизацию
И жмем кнопочку начать.
Все господа. Я вас поздравляю. На этом интеграция полностью закончена. Двухсторонняя аутентификация выполняется в обоих направлениях (авторизация, разлогин)

Теперь что касается поле имени в Joomla которое не передается Jfusion в БД phpBB.
Небольшой хак который не решает данный вопрос если говорить непосредственно установке форума на уже имеющуюся базу данных, но является отличным решением для регистрации новых пользователей через Joomla.
Небольшое отступление 
Итак данный способ не убирает поле имя как таковое из формы регистрации а скрывает его и создает правило что имя=логин.
Решение подсмотрено на данном ресурсе.
Для начала переопределяем в нашем шаблоне вывод вида registration для компонента com_users (Как переопределять шаблоны можете прочесть в этой статье).
Простым языком нашей задачей является создать условие когда система будет использовать не системные файлы компонента а непосредственно брать их из папки шаблона. Для чего это нужно? Все просто.
а) Меньше шансов что либо сломать, особенно если вы не придерживаетесь политики создания бекапов.
б) Ваши изменения останутся даже после системного обновления компонента. Так что после очередного обновления джумлы не прийдется хватаясь за голову вспоминать чего же вы там натворили то за этот период))
Первое что нам необходимо сделать, это проверить есть ли в нашем шаблоне уже переназначенные компоненты и имеется ли среди них нас интересующий.
Для этого переходим в каталог

Код: Выделить всё

каталог joomla/templates/ваш стиль/html/
В данной ситуации нас интересует компонент com_users
Если папка com_users существует переходим в нее, если нет то создаем.
Если папки не оказалось 
Создаем папку в каталоге

Код: Выделить всё

каталог joomla/templates/ваш стиль/html/
Далее возвращаемся назад переходим в

Код: Выделить всё

каталог joomla/components/com_users/views
копируем ее содержимое и вставляем его в созданную нами папку папку

Код: Выделить всё

каталог joomla/templates/ваш стиль/html/com_users
переходим в каталог /registration/
Открываем редактором файл default.php
И в самый конец после

Код: Выделить всё

<?php echo JHtml::_('form.token');?>
Вставляем

Код: Выделить всё

			
<?php
$doc = & JFactory::getDocument();
$doc->addStyleDeclaration( '#jform_name, #jform_name-lbl{display: none;}' );
$doc->addScriptDeclaration('
window.addEvent("domready", function () {
        $("jform_username").addEvent("keyup", function (event) {
            $("jform_name").value = $("jform_username").value;
        });
    });
');
?>
Вот и все, проверяем нашу форму регистрации.
ВАЖНО!!: Данный хак будет работать если вы используете стандартную форму регистрации
Последний раз редактировалось RYUMASHKIN 25.12.2014 1:29, всего редактировалось 7 раз.
Не говорите мне что делать и я не скажу куда Вам идти!

Аватара пользователя
владимир1983
phpBB 3.1.9
Сообщения: 5954
Зарегистрирован: 27.04.2010 2:17
Откуда: Сергиев Посад
Благодарил (а): 391 раз
Поблагодарили: 731 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение владимир1983 »

RYUMASHKIN писал(а):Но не беда, решили.
Подробнее напиши о проблеме и решении.
RYUMASHKIN писал(а):Проблему с дуал логин тоже домучил
Аналогично.
RYUMASHKIN писал(а):у меня отсутствует JFusion.
Но как сказано выше все работает отлично
Интересно как это возможно :?

Добавлено спустя 1 минуту 1 секунду:
Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.0 -
Покажи скрины настроек. Многим пригодится.
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)

Аватара пользователя
RYUMASHKIN
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 21.12.2014 3:07
Откуда: Voronezh
Поблагодарили: 3 раза

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение RYUMASHKIN »

Я так понимаю вынес в отдельную тему.
Тогда доползу домой и оформлю все подробненько.
А то с планшетика не удобненько.
Не говорите мне что делать и я не скажу куда Вам идти!

Аватара пользователя
WinSSLioN
phpBB 1.4.4
Сообщения: 106
Зарегистрирован: 28.08.2014 1:41
Благодарил (а): 11 раз
Поблагодарили: 18 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение WinSSLioN »

RYUMASHKIN
Сделай пожалуйста инструкцию как сделать мост, у меня не выходит..
С уважением, Николай

Аватара пользователя
WinSSLioN
phpBB 1.4.4
Сообщения: 106
Зарегистрирован: 28.08.2014 1:41
Благодарил (а): 11 раз
Поблагодарили: 18 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение WinSSLioN »

при попытке регистрации на форуме появляется ошибка

Код: Выделить всё

Общая ошибка
SQL ERROR [ mysqli ]

Field 'user_pass_convert' doesn't have a default value [1364]

Произошла ошибка SQL при выборке на этой странице. Пожалуйста, сообщите администратору, если ошибка будет повторяться.

с регистрацией на сайте все в порядке
С уважением, Николай

Аватара пользователя
Anvar
Former team member
Сообщения: 1962
Зарегистрирован: 26.03.2010 9:09
Благодарил (а): 67 раз
Поблагодарили: 785 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение Anvar »

WinSSLioN, Разве её не нужно отключить?

Аватара пользователя
WinSSLioN
phpBB 1.4.4
Сообщения: 106
Зарегистрирован: 28.08.2014 1:41
Благодарил (а): 11 раз
Поблагодарили: 18 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение WinSSLioN »

Конечно нужно, просто я сразу подумал что инструкция подразумевает рег из под phpbb, и пробовал регистрироваться на его форуме
С уважением, Николай

Аватара пользователя
RYUMASHKIN
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 21.12.2014 3:07
Откуда: Voronezh
Поблагодарили: 3 раза

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение RYUMASHKIN »

Обновление первого поста
Последний раз редактировалось RYUMASHKIN 22.12.2014 4:45, всего редактировалось 1 раз.
Не говорите мне что делать и я не скажу куда Вам идти!

Аватара пользователя
WinSSLioN
phpBB 1.4.4
Сообщения: 106
Зарегистрирован: 28.08.2014 1:41
Благодарил (а): 11 раз
Поблагодарили: 18 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение WinSSLioN »

RYUMASHKIN писал(а):для поддомена
где то читал что для поддомена не работает, по моему на phpbbguru было
С уважением, Николай

Аватара пользователя
RYUMASHKIN
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 21.12.2014 3:07
Откуда: Voronezh
Поблагодарили: 3 раза

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение RYUMASHKIN »

WinSSLioN, владимир1983 Первый пост обновил, все проверил,все работает.
Надеюсь пригодится .
Не говорите мне что делать и я не скажу куда Вам идти!

Аватара пользователя
владимир1983
phpBB 3.1.9
Сообщения: 5954
Зарегистрирован: 27.04.2010 2:17
Откуда: Сергиев Посад
Благодарил (а): 391 раз
Поблагодарили: 731 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение владимир1983 »

RYUMASHKIN писал(а):Настройка плагина phpbb3 для работы
Тут ошибка которая приводит к
RYUMASHKIN писал(а): у меня отсутствует JFusion.
Но как сказано выше все работает отлично
и дальнейшим проблемам которые заставили тебя лезть в бд форума.
Ошибка тут
Изображение
Должно быть обязательно
Изображение
Ну и конечно надо синхронизировать подчиненного с мастером. Т.е. необходимо перенести бзеров из форума в жумлу если таковые есть.
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)

Аватара пользователя
RYUMASHKIN
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 21.12.2014 3:07
Откуда: Voronezh
Поблагодарили: 3 раза

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение RYUMASHKIN »

владимир1983 писал(а):и дальнейшим проблемам которые заставили тебя лезть в бд форума.
Ошибка тут
Нет, дело как раз таки не в этом. Первоначально настраивалось как раз таки по ману с данного форума. Но там мануал написан для ситуации
Joomla - slave.
Я с этим вопросом столкнулся еще несколько лет назад. И другого способа, кроме как вручную добавить нужные строки в таблицу нет.
Если интересно, можешь проверить на локалке. Сейчас даже специально проверил. Не появляется аутентификация JFusion в админке форума при включении данных модулей.
Что касается метода аутентификации на форуме, то как видно и без него все работает.
владимир1983 писал(а):Ну и конечно надо синхронизировать подчиненного с мастером. Т.е. необходимо перенести бзеров из форума в жумлу если таковые есть
Что касается синхронизации подчиненного с мастером в данной ситуации. Здесь речь идет о том случае, когда форум расширяет функционал сайта и ставится с нуля. Потому я и не вел разговора об обратной синхронизации.
Если Джумла мастер, то просто не дает синхронизировать пользователей как раз из за отсутствия данных строк в таблице пользователей форума.
Тут такой кстати интересный момент во всей этой интриге. В сети полно манов по интеграции Joomla и phpBB с помощью Jfusion. Но вот найти честно говоря именно настройку Джумлы мастера лично мне не удалось. Либо мало искал, либо плохо))))
Не говорите мне что делать и я не скажу куда Вам идти!

Аватара пользователя
владимир1983
phpBB 3.1.9
Сообщения: 5954
Зарегистрирован: 27.04.2010 2:17
Откуда: Сергиев Посад
Благодарил (а): 391 раз
Поблагодарили: 731 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение владимир1983 »

RYUMASHKIN писал(а):Сейчас даже специально проверил. Не появляется аутентификация JFusion
При включении должен создаваться файл аутентификации JFusion в папке форума. Надо смотреть лог ошибок. Возможно не хватает прав у скрипта на создание и перемещение файла.
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)

shvager
phpBB 1.4.4
Сообщения: 158
Зарегистрирован: 12.04.2008 9:20
Благодарил (а): 103 раза
Поблагодарили: 8 раз

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение shvager »

А что эта тема делает в поддержке 3.0 ? )))

Аватара пользователя
RYUMASHKIN
phpBB 1.0.0
Сообщения: 7
Зарегистрирован: 21.12.2014 3:07
Откуда: Voronezh
Поблагодарили: 3 раза

Re: Интеграция phpBB 3.1.2 - Joomla 3.3.6 через JFusion 2.1.

Сообщение RYUMASHKIN »

владимир1983 писал(а):При включении должен создаваться файл аутентификации JFusion в папке форума. Надо смотреть лог ошибок. Возможно не хватает прав у скрипта на создание и перемещение файла.
)))) Посмотрел лог, проблем нет, я счастлив))))
При включении файл аутентификации создается

Код: Выделить всё

/phpbb/auth/auth_jfusion.php
Так что с правами тоже все ок. Но в качестве метода аутентификации его нет.
Но если мы делаем одну простую вещь. А именно меняем мастера и подчиненного местами. То в методе аутентификации Jfusion появляется. ))))
Не говорите мне что делать и я не скажу куда Вам идти!

Вернуться в «Поддержка phpBB 3.1.x»