Данный файл является инструкцией по установке форума LogicBoard.

Версия форума: 2.0 (DLE Edition)
Официальный сайт: LogicBoard.ru
Автор: Курдин Никита (ShapeShifter)

Установка
Инструкция

Введение CHMOD атрибуты Инструкция Помощь Файлы шаблона | Установка форума LogicBoard (DLE Edition)
Важно! Форум может быть установлен как в папке основного домена Вашего сайта на CMS DLE, так и на поддомене. Главное, чтобы у форума и сайта была единая база данных. 1) Загрузите все папки и файлы форума из папки upload_forum в созданную папку на серерве. Например: если Вы хотите, чтобы форум был доступен по адресу http://www.domain.ru/forum/ - Вам нужно в корневой папке домена создать папку forum. 2) Если Вы устанавливаете не в корневую папку домена и в корневой папке содержиться файл .htaccess, то откройте данный файл: 2.1) Найдите в файле строчку: RewriteEngine On Добавьте после неё: RewriteRule ^forum/(.*)$ forum/$1 [L] * где forum - это название папки, в которую Вы загрузили файлы форума. Если вы не нашли указаную строку, тогда вам не нужно ничего добавлять в указанный файл. 3) Выставите права на папки. Смотрите раздел "CHMOD атрибуты". 4) Запустите установку форума. Введите в адресной строке браузера адрес: http://www.domain.ru/forum/install/index.php (где domain.ru Вам нужно заменить на адрес вашего домена). 5) После установки обязательно удалите папку install (forum/install). Не забудьте изменить CHMOD на папку components/config (forum/components/config) - 755
Установка компонентов LogicBoard (DLE Edition) в CMS DLE
1) Загрузите все папки и файлы из папки upload_DLE в папку с CMS DLE на сервере. 2) Откройте файл index.php Найдите: $tpl->load_template ( 'main.tpl' ); Добавьте ВЫШЕ: include ENGINE_DIR . '/modules/logicboard/last_topics.php'; Найдите: $tpl->set ( '{speedbar}', $tpl->result['speedbar'] ); Добавьте ниже: $tpl->set ( '{last_topics}', $logicboard_topics ); 3) Откройте файл engine/init.php Найдите: @include (ENGINE_DIR . '/data/config.php'); Добавьте после: @include (ENGINE_DIR . '/data/logicboard_conf.php'); require_once ENGINE_DIR . '/modules/logicboard/functions.php'; Найдите (если версия CMS DLE 9.2 и выше): $tpl->set( '{all-pm}', $member_id['pm_all'] ); Добавьте ниже: $tpl->set( '{lb_options_link}', $logicboard_conf['url']."?do=users&op=options&member_name=".urlencode($member_id['name']) ); $tpl->set( '{lb_status_link}', $logicboard_conf['url']."?do=users&op=edit_status&member_name=".urlencode($member_id['name']) ); $tpl->set( '{lb_favorites_link}', $logicboard_conf['url']."?do=users&op=favorite" ); $tpl->set( '{lb_subscribe_link}', $logicboard_conf['url']."?do=users&op=subscribe" ); Найдите: if ($config['allow_tags']) include_once ENGINE_DIR . '/modules/tagscloud.php'; Добавьте ниже: require_once ENGINE_DIR . '/modules/logicboard/online.php'; 4) Откройте файл engine/inc/options.php (Если версия CMS DLE 8.0 и ниже) Найдите: $options['others'] = array ( Добавьте ниже: array ( 'name' => "LogicBoard (DLE Edition)", 'url' => "$PHP_SELF?mod=admin_logicboard_dle", 'descr' => "Настройки LogicBoard (DLE Edition).", 'image' => "logicboard_img.png", 'access' => "1" ), 5) Откройте файл engine/inc/include/functions.inc.php (Если версия CMS DLE 8.0 и выше) Найдите: if( $result ) { Добавьте ниже: if ($post) { if (!$member_id['secret_key']) { $member_id['secret_key'] = md5(md5($password_md2.time().$_IP)); $db->query( "UPDATE " . USERPREFIX . "_users SET secret_key='{$member_id['secret_key']}' WHERE user_id='{$member_id['user_id']}'" ); } set_cookie( "LB_member_sc", $member_id['secret_key'], 365 ); $_SESSION['LB_member_sc'] = $member_id['secret_key']; } 6) Откройте файл admin.php (Если версия CMS DLE 8.0 и ниже) Найдите (если версия CMS DLE ниже 8.0): 'rssinform' => 'admin', Добавьте ниже (если версия CMS DLE ниже 8.0): 'admin_logicboard_dle' => 'admin', Найдите (если версия CMS DLE = 8.0): 'rssinform', Добавьте ниже (если версия CMS DLE = 8.0): 'admin_logicboard_dle', 7) Откройте файл engine/inc/usergroup.php Найдите: if( ! $row['count'] ) { Добавьте ниже: ########### Start. LogicBoard (DLE Edition) - ShapeShifter ########### $action_logicboard['group_edit'] = 2; include ENGINE_DIR . '/modules/logicboard/group_edit.php'; ########### End. LogicBoard (DLE Edition) - ShapeShifter ########### Найдите: if( $grouplevel and $grouplevel != $id ) { Добавьте ниже: ########### Start. LogicBoard (DLE Edition) - ShapeShifter ########### $action_logicboard['group_edit'] = 2; include ENGINE_DIR . '/modules/logicboard/group_edit.php'; ########### End. LogicBoard (DLE Edition) - ShapeShifter ########### Найдите: msg( "info", $lang['all_info'], $lang['group_ok1'], "$PHP_SELF?mod=usergroup" ); Добавьте ВЫШЕ: ########### Start. LogicBoard (DLE Edition) - ShapeShifter ########### $new_group = $db->insert_id(); $action_logicboard['group_edit'] = 1; include ENGINE_DIR . '/modules/logicboard/group_edit.php'; ########### End. LogicBoard (DLE Edition) - ShapeShifter ########### Найдите: <td width="480" style="padding-top:2px;padding-bottom:2px;"><input class="edit bk" type="text" size="25" name="group_name" value="{$group_name_value}"></td> </tr> Добавьте ниже: HTML; ########### Start. LogicBoard (DLE Edition) - ShapeShifter ########### if( $action == "add" ) { $lb_list = ""; foreach ($user_group as $value) { if ($value['id'] == "4") $lb_list .= "<option value=\"".$value['id']."\" selected>".$value['group_name']."</option>"; else $lb_list .= "<option value=\"".$value['id']."\">".$value['group_name']."</option>"; } echo <<<HTML <tr><td background="engine/skins/images/mline.gif" height=1 colspan=2></td></tr> <tr> <td style="padding:4px;" class="option"><b>Маска группы:</b><br /><span class="small">Выберите группу, на основе которой новой группе будут присвоены такие же права на форуме.</span></td> <td style="padding-top:2px;padding-bottom:2px;"><select name="group_mask">{$lb_list}"></select></td> </tr> HTML; } ########### End. LogicBoard (DLE Edition) - ShapeShifter ########### echo <<<HTML 8) Откройте файл engine/inc/editusers.php Найдите: $row['descr'] = $parse->decodeBBCodes( $row['descr'], false ); Добавьте ниже: $action_logicboard['profile_edit'] = 1; include ENGINE_DIR . '/modules/logicboard/profile_edit.php'; Найдите: {$output} Добавьте ВЫШЕ: {$LB_output} Найдите: $sql_update .= " WHERE user_id='$id'"; Добавьте ВЫШЕ: $action_logicboard['profile_edit'] = 2; include ENGINE_DIR . '/modules/logicboard/profile_edit.php'; 9) Откройте файл engine/data/dbconfig.php Найдите: $db = new db; Добавьте ВЫШЕ (где "ПРЕФИКС" это префикс таблиц форума, по умолчанию - "LB"): define ("LB_DB_PREFIX", "ПРЕФИКС"); 10) Откройте файл engine/modules/sitelogin.php Найдите: if( $member_id['user_id'] ) { Добавьте ниже: ########### Start. LogicBoard (DLE Edition) - ShapeShifter ########### if ($logicboard_conf['online_status']) { $db->query( "DELETE FROM " . LB_DB_PREFIX . "_members_online WHERE mo_ip = '{$_IP}'" ); } if (!$member_id['secret_key']) { $member_id['secret_key'] = md5(md5($password_md2.time().$_IP)); $db->query( "UPDATE " . USERPREFIX . "_users SET secret_key='{$member_id['secret_key']}' WHERE user_id='{$member_id['user_id']}'" ); } set_cookie( "LB_member_sc", $member_id['secret_key'], 365 ); $_SESSION['LB_member_sc'] = $member_id['secret_key']; ########### End. LogicBoard (DLE Edition) - ShapeShifter ########### Найдите: $_SESSION['dle_password'] = $_COOKIE['dle_password']; Добавьте ниже: $_SESSION['LB_member_sc'] = $member_id['secret_key']; 11) Откройте файл engine/modules/profile.php Найдите: $xfieldsaction = "init"; Добавьте ВЫШЕ: $action_logicboard['profile_edit'] = 3; include ENGINE_DIR . '/modules/logicboard/profile_edit.php'; Найдите (2 раза): $sql_user = "UPDATE " . USERPREFIX . "_users set Замените на (2 раза): $sql_user = "UPDATE " . USERPREFIX . "_users set ".$where_lb.", Найдите: $user_found = TRUE; Добавьте ниже: $action_logicboard['profile_edit'] = 4; include ENGINE_DIR . '/modules/logicboard/profile_edit.php'; Найдите: $tpl->set( '{xfields}', $output ); Замените на: $tpl->set( '{xfields}', $LB_output.$output ); 12) Откройте файл templates/ВАШ_ШАБЛОН/main.tpl Добавить в нужное место тег вывод последних тем: {last_topics} {last_topics} - данный тег выводит последние темы с форума. 13) Откройте файл templates/ВАШ_ШАБЛОН/userinfo.tpl Добавить в нужное место теги: [personal_title]<br />Личное звание: {personal_title}[/personal_title] [lb_mstatus] <br />Личный статус: {lb_status} <br />Изменён: {lb_status_date} [/lb_mstatus] [lb_sex]<br />Пол: {lb_sex}[/lb_sex] [lb_b_day]<br />Дата рождения: {lb_b_day}.{lb_b_month}.{lb_b_year} ({lb_age})[/lb_b_day] [lb_skype]<br />Skype: {lb_skype}[/lb_skype] [lb_twitter]<br />Twitter: {lb_twitter}[/lb_twitter] [lb_vkontakte]<br />В контакте: {lb_vkontakte}[/lb_vkontakte] <br />Количество ответов на форуме: {lb_posts} [ [lb_posts_link]Все ответы[/lb_posts_link] ] <br />Количество тем на форуме: {lb_topics} [ [lb_topics_link]Все темы[/lb_topics_link] ] Инструкция по тегам #### [personal_title]Текст[/personal_title] - теги выводят содержимое, если у пользователя заполнено поле "личное звание" (настраивается при редактировании профиля в админке). Между тегами должен быть следующий тег: {personal_title} #### {personal_title} - личное звание пользователя. #### [lb_mstatus]Текст[/lb_mstatus] - теги выводят содержимое, если пользователь заполнил поле "личный статус". Между тегами должены быть следующие теги: {lb_status}, {lb_status_date} #### {lb_status} - текст статуса. #### {lb_status_date} - дата последнего изменения статуса. #### [lb_sex]Текст[/lb_sex] - теги выводят содержимое, если пользователь заполнил поле "пол". Между тегами должен быть следующий тег: {lb_sex} #### {lb_sex} - пол пользователя. #### [lb_b_day]Текст[/lb_b_day] - теги выводят содержимое, если пользователь заполнил поле "дата рождения". Между тегами должены быть следующие теги: {lb_b_day}, {lb_b_month}, {lb_b_year}, {lb_age} #### {lb_b_day} - день рождения. #### {lb_b_month} - месяц рождения. #### {lb_b_year} - год рождения. #### {lb_age} - возраст. #### [lb_skype]Текст[/lb_skype] - теги выводят содержимое, если пользователь заполнил поле "Skype". Между тегами должен быть следующий тег: {lb_skype} #### {lb_skype} - логин в Skype. #### [lb_twitter]Текст[/lb_twitter] - теги выводят содержимое, если пользователь заполнил поле "Twitter". Между тегами должен быть следующий тег: {lb_twitter} #### {lb_twitter} - логин в Twitter. #### [lb_vkontakte]Текст[/lb_vkontakte] - теги выводят содержимое, если пользователь заполнил поле "В контакте". Между тегами должен быть следующий тег: {lb_vkontakte} #### {lb_vkontakte} - логин в соц. сети "В контакте". #### {lb_posts} - всего ответов на форуме. #### [lb_posts_link]Текст[/lb_posts_link] - теги заменяются ссылками на страницу со всеми ответами пользователя на форуме. Если счётчик ответов равен 0 - теги не выводят ссылку. #### {lb_topics} - всего тем на форуме. #### [lb_topics_link]Текст[/lb_topics_link] - теги заменяются ссылками на страницу со всеми темами пользователя на форуме. Если счётчик тем равен 0 - теги не выводят ссылку. 14) Откройте файл templates/ВАШ_ШАБЛОН/login.tpl Добавить в нужное место теги (если версия CMS DLE 9.2 и выше: между тегами [not-group=5] и [/not-group]): <a href="{lb_options_link}">Настройки форума</a> <a href="{lb_status_link}">Личный статус</a> <a href="{lb_favorites_link}">Избранные темы</a> <a href="{lb_subscribe_link}">Подписка на темы</a> Найдите (если версия CMS DLE 9.0 и ниже): if ($is_logged == TRUE){ Добавьте ниже (если версия CMS DLE 9.0 и ниже): $lb_options_link = $logicboard_conf['url']."?do=users&op=options&member_name=".urlencode($member_id['name']); $lb_status_link = $logicboard_conf['url']."?do=users&op=edit_status&member_name=".urlencode($member_id['name']); $lb_favorites_link = $logicboard_conf['url']."?do=users&op=favorite"; $lb_subscribe_link = $logicboard_conf['url']."?do=users&op=subscribe"; Найдите (если версия CMS DLE 9.0 и ниже): <a href="{$link_favorites}">Мои закладки</a> Добавьте рядом ссылки (если версия CMS DLE 9.0 и ниже): <a href="{$lb_options_link}">Настройки форума</a> <a href="{$lb_status_link}">Личный статус</a> <a href="{$lb_favorites_link}">Избранные темы</a> <a href="{$lb_subscribe_link}">Подписка на темы</a> 15) Запустите установку компонентов. Введите в адресной строке браузера адрес: http://www.domain.ru/install.php (где domain.ru вам нужно заменить на адрес вашего домена). ====================================================================================================== Если Вам не нужны такие поля как "Twitter", "В контакте", "Skype" и "Пол". Нажмите здесь. Откройте файл engine/modules/logicboard/profile_edit.php Найдите: $LB_rows_save = array("twitter", "vk", "skype", "sex"); Удалите из скобок ненужное Вам поле. "twitter" - Поле "Twitter". "vk" - Поле "В контакте". "skype" - Поле "Skype". "sex" - Поле "Пол". Если Вы никогда не планируете использовать данные поля, то дополнительно их можно удалить из Вашей базы данных. Для этого откройте БД, зайдите в таблицу ПРЕФИКС_users (ПРЕФИКС - префикс таблицы CMS DLE) и удалите поля из неё.

©2011 LogicBoard