Тема: Интеграция с phpBB
Возможно ли сделать интеграцию Клубники с форумом phpBB, чтобы пользователи регистрируемые на форуме сразу регистрировались в Клубнике. Мне тут попался код мода который интегрировал CuteNews с phpBB, есть ли возможность его поправить для Клубники, разобраться я с этим не смогу, познаний в php не хватает.
#########################################################################
## Название мода: Интеграция PHPBB2 и CuteNews
## Автор мода: SMKiller2 <smk2@xs4all.nl>
## Описание мода: Мод добавляет всех зарегившихся юзеров на форуме в CuteNews.
## Версия мода: 1.0.0
##
##
## Файлы для редактирования:
## admin/admin_users.php
## includes/usercp_register.php
## includes/usercp_activate
##
#########################################################################
## Замечание:
##
## Если у вас возникнут проблемы по использованию мода, то вы можете
## обратиться с вашими вопросами на официальный форум поддержки
## русскоязычных пользователей CuteNews (http://cutenews.ru/forum)
##
#########################################################################
## Перед установкой мода, пожалуйста, сделайте резервные копии файлов для редактирования!
#########################################################################
##
## Замечание по установке мода:
## Не забудьте поменять пути ($cutepath) на свои там, где стоят указания!
## И не ставьте в конец слэш (/)!
##
#########################################################################
# Итак, приступим!
#
#-----[ Открываем ]-------------------------------------
#
admin/admin_users.php
#
#-----[ Ищем ]--------------------------------------
#
$sql = "DELETE FROM " . USERS_TABLE . "
WHERE user_id = $user_id";
if( !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Невозможно удалить пользователя', '', __LINE__, __FILE__, $sql);
}
#
#-----[ Ниже добавляем ]-------------------------
#
// Хак интеграции с CuteNews - начало
/* Исправьте путь на свой */
$cutepath = "../../phpBB2 - cutenews";
$old_db = file("$cutepath/data/users.db.php");
$new_db = fopen("$cutepath/data/users.db.php", "w");
foreach ($old_db as $old_db_line) {
$old_db_arr = explode("|", $old_db_line);
if ($username != $old_db_arr[2]) {
fwrite($new_db, "$old_db_line");
}
}
fclose($new_db);
// Хак интеграции с CuteNews - конец
#
#-----[ Ищем ]--------------------------------------
#
if( $result = $db->sql_query($sql) )
{
if( isset($rename_user) )
{
$sql = "UPDATE " . GROUPS_TABLE . "
SET group_name = '".str_replace("\'", "''", $rename_user)."'
WHERE group_name = '".str_replace("'", "''", $this_userdata['username'] )."'";
if( !$result = $db->sql_query($sql) )
#
#-----[ Выше добавляем ]-------------------------------------
#
// Хак интеграции с CuteNews - начало
/* Исправьте путь на свой */
$cutepath = "../../phpBB2 - cutenews";
$old_db = file("$cutepath/data/users.db.php");
$new_db = fopen("$cutepath/data/users.db.php", "w");
foreach ($old_db as $old_db_line) {
$old_db_arr = explode("|", $old_db_line);
if ($username != $old_db_arr[2]) {
fwrite($new_db, "$old_db_line");
} else {
if (empty($new_password))
$new_password = $old_db_arr[3];
fwrite($new_db, "$old_db_arr[0]|$old_db_arr[1]|$username|$password|$username|$email|$old_db_arr[6]|$old_db_arr[7]|$old_db_arr[8]|$old_db_arr[9]||\n");
}
}
fclose($new_db);
// Хак интеграции с CuteNews - конец
#
#-----[ Открываем ]---------------------------------------------
#
includes/usercp_register.php
#
#-----[ Ищем ]------------------------------------------------
#
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Невозможно обновить таблицу с пользователями', '', __LINE__, __FILE__, $sql);
}
#
#-----[ Ниже добавляем ]-------------------------------------
#
// Хак интеграции с CuteNews - начало
/* Исправьте путь на свой */
$cutepath = "../phpBB2 - cutenews";
$old_db = file("$cutepath/data/users.db.php");
$new_db = fopen("$cutepath/data/users.db.php", "w");
foreach ($old_db as $old_db_line) {
$old_db_arr = explode("|", $old_db_line);
if ($username != $old_db_arr[2]) {
fwrite($new_db, "$old_db_line");
} else {
if (empty($new_password))
$new_password = $old_db_arr[3];
fwrite($new_db, "$old_db_arr[0]|$old_db_arr[1]|$username|$new_password|$username|$email|$old_db_arr[6]|$old_db_arr[7]|$old_db_arr[8]|$old_db_arr[9]||\n");
}
}
fclose($new_db);
// Хак интеграции с CuteNews - конец
#
#-----[ Ищем ]-------------------------------------
#
$sql .= "1, '')";
#
#-----[ Ниже добавляем ]-------------------------------------
#
// Хак интеграции с CuteNews - начало
/* Исправьте путь на свой */
$cutepath = "../phpBB2 - cutenews";
$add_time = time() + ($config_date_adjust * 60);
$new_users_file = fopen("$cutepath/data/users.db.php", "a");
fwrite($new_users_file, "$add_time|4|$username|$new_password|$username|$email|0|0||||\n");
fclose($new_users_file);
// Хак интеграции с CuteNews - конец
#
#-----[ Открываем ]-------------------------------------
#
includes/usercp_activate.php
#
#-----[ Ищем ]----------------------------------------
#
{
message_die(GENERAL_ERROR, 'Невозможно обновить таблицу с пользователями', '', __LINE__, __FILE__, $sql_update);
}
#
#-----[ Ниже добавляем ]----------------------------------------
#
// Хак интеграции с CuteNews - начало
/* Исправьте путь на свой */
$cutepath = "../phpBB2 - cutenews";
$sql = "SELECT user_regdate, username, user_password, user_email FROM " . USERS_TABLE . "
WHERE user_id = " . $row['user_id'];
if ( !($result = $db->sql_query($sql)) ) {
message_die(GENERAL_ERROR, 'Невозможно изменить информацию пользователя', '', __LINE__, __FILE__, $sql_update);
}
if (!($cndata = $db->sql_fetchrow($result))) {
message_die(GENERAL_MESSAGE, $lang['No_such_user']);
}
$cndata["user_regdate"] = $cndata["user_regdate"] + ($config_date_adjust * 60);
$old_db = file("$cutepath/data/users.db.php");
$new_db = fopen("$cutepath/data/users.db.php", "w");
foreach ($old_db as $old_db_line) {
$old_db_arr = explode("|", $old_db_line);
if ($cndata["username"] != $old_db_arr[2]) {
fwrite($new_db, "$old_db_line");
} else {
fwrite($new_db, "{$cndata["user_regdate"]}|$old_db_arr[1]|{$cndata["username"]}|{$cndata["user_password"]}|{$cndata["username"]}|{$cndata["user_email"]}|$old_db_arr[6]|$old_db_arr[7]|$old_db_arr[8]|$old_db_arr[9]||\n");
$cninfowritten = true;
}
}
if (!$cninfowritten)
fwrite($new_db, "{$cndata["user_regdate"]}|4|{$cndata["username"]}|{$cndata["user_password"]}|{$cndata["username"]}|{$cndata["user_email"]}|0|0||||\n");
fclose($new_db);
// Хак интеграции с CuteNews - конец
#---------[ Сохраните все файлы ]-------------------------
#
# ВСЕ!