Um ein PHPBB Forum in Joomla zu integrieren, ist es ersteinmal wichtig das sich die Benutzer nur an einer Stelle registrieren können.
Aus diesem Grund habe ich die PHPBB Registrierung umgelenkt:
Suche in der Datei PHPBBVerzeichnis/includes/usercp_register.php die Zeile 81 mit folgenden Text:
{
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
show_coppa();
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
Füge dort die fett markierte Zeile hinzu:
if ( $mode == 'register' && !isset($HTTP_POST_VARS['agreed']) && !isset($HTTP_GET_VARS['agreed']) )
{
<strong> header("location:../index.php?option=com_comprofiler&task=registers");</strong>
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
show_coppa();
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
}
Von nun an sollten bei einem Klick auf die Registrierfunktion des PHPBB Forums auf deine Registrierungsseite gewechselt werden.
Aber beachte: Die Nutzer werden noch nicht mit in die PHPBB Tabelle eingetragen
Dieser Schritt folgt jetzt:
Öffne im Verzeichnis /root/components/com_comprofiler/ die Datei comprofiler.php
Gehe in Zeile 1067 wo folgender Text steht:
$_PLUGINS->trigger( 'onAfterUserRegistrationMailsSent', array($row, $rowExtras, &$messagesToUser,
$ueConfig['reg_confirmation'], $ueConfig['reg_admin_approval'], true));
if($_PLUGINS->is_errors()) {
echo $_PLUGINS->getErrorMSG();
return;
}
Füge <strong>danach</strong> folgenden Code ein:
$database->setQuery("INSERT INTO `phpbb_users` (`user_id`, `user_active`, `username`, `user_password`,
`user_session_time`, `user_session_page`, `user_lastvisit`,
`user_regdate`, `user_level`, `user_posts`, `user_timezone`, `user_style`, `user_lang`,
`user_dateformat`, `user_new_privmsg`, `user_unread_privmsg`, `user_last_privmsg`, `user_login_tries`,
`user_last_login_try`, `user_emailtime`, `user_viewemail`, `user_attachsig`, `user_allowhtml`,
`user_allowbbcode`, `user_allowsmile`, `user_allowavatar`, `user_allow_pm`, `user_allow_viewonline`, `user_notify`,
`user_notify_pm`, `user_popup_pm`, `user_rank`, `user_avatar`,
`user_avatar_type`, `user_email`, `user_icq`, `user_website`, `user_from`, `user_sig`, `user_sig_bbcode_uid`,
`user_aim`, `user_yim`, `user_msnm`, `user_occ`, `user_interests`, `user_actkey`, `user_newpasswd`)
VALUES (".$user[0]->id.", '1', '".$user[0]->username."',
'".$user[0]->password."', '0', '0', UNIX_TIMESTAMP('0'), UNIX_TIMESTAMP('0'), '0', '0', '0.00', NULL,
'german', 'd M Y H:i', '0', '0', '0',
'0', '0', NULL, NULL, NULL, '1', '1', '1', '1', '1', '1', '1', '0', '0', '0', NULL, '0', '".$user[0]->email."', NULL,
'".$user[0]->website."', '".$user[0]->location."', '".<strong>$user[0]->cb_signatur</strong>."', NULL,
NULL, NULL, NULL, NULL, '".$user[0]->hobbies."', NULL, NULL)");
Wichtig: Die fettgedruckten Felder (cb_signatur) müssen nicht unbedingt bei eurem CBBuilder vorkommen.
Dies sind die freiangelegten Tabs. Also bei Bedarf anpassen ;)
Damit werden nun die Benutzer im Community Builder und im PHPBBForum gespeichert.
|