Тема: Интеграция с 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 - конец

#---------[ Сохраните все файлы ]-------------------------
#
# ВСЕ!

Re: Интеграция с phpBB

Интеграция в процессе.
Уже почти сделана.

Просто я как Леха, ночной человек, и идеи появляются только ближе к ночи, но в отличии от него, мне никак не убить желание ко сну wink

До выхода плагина осталось 2 дня.

Re: Интеграция с phpBB

А для Strawberry 1.1.1 это уже работает? Просто реально хотелось бы чтобы пользователи с моего форума PhpBB2 автоматически стали пользователями Клубники и наоборот!

Re: Интеграция с phpBB

Ну короче, для Strawberry не подходит... Можете выложить код, который подходит?

Re: Интеграция с phpBB

Стоит такая же проблема - интеграция phpBB 2.21 и Strawberry 1.1.1 . Подскажите кто-нибудб, если не жалко??

Ну обрати те же внимание,  что эта тема прсмотрена самое максимальное количество раз !!

Отредактировано Derba (26 Oct 2006 01:29:56)

Re: Интеграция с phpBB

Помоему никому нету дела до этой интеграции

Re: Интеграция с phpBB

из тех кто это может сделать, видимо, никому. Но ждут эту интеграцию очень многие.

8

Re: Интеграция с phpBB

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

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

Признанный мастер чинпоко, а-ай ^_^

Re: Интеграция с phpBB

Да на данный момент это новостная лента , с поддержкой комментариев. Очень жаль конечно что в данной версии это не будет реализовано , а только в Strawberry 2. Я использую клубнику , и очень ей доволен, больше чем при работе с другими блогами или CMS , тут как говорится есть воля творчеству. Говоря о моём проекте , то у меня данный вопрос играет большую роль , так как у меня наоборот идёт работа с пользователями , но интегрировать сам я не смог бы , так как не владею таковыми знаниями , именно работы с таблицами и их переделывании и перешивании , а вот от клубники отказыватся не хочется.

Возможен ли будет переход с 1 клубники на 2 с тойже базой новостей ?

Отредактировано AndrewE (09 May 2007 22:36:55)

10

Re: Интеграция с phpBB

AndrewE,
Думаю без перехода не было бы смысла выпускать новую версию. Какой-то конвертер но будет.
А относительно интеграции - так почему бы вам не заказать тот же плагин у кого-нибудь.
Кода там на 20 кб, по цене это вам обойдется в стоимость одной ночи отдыха на тусовке в Larocca или VooDoo smile

Браться за это дело не хотят по той причине что не совсем это оправдывает затраченное время - потратить 2-3 часа ради 2 пользователей, как бы это грустно не звучало - ВЛОМ tongue

11

Re: Интеграция с phpBB

AndrewE, torqwemad прав, конвертация конечно же будет.

Признанный мастер чинпоко, а-ай ^_^

12

Re: Интеграция с phpBB

А как с интеграцией с phpBB 3 дела обстоят? Или о ней речь и шла?