IPB UPGRADE MODULE:: IPB 2.0.0 PDR1 -> PDR 2
| > Script written by Matt Mecham
| > Date started: 23rd April 2004
| > "So what, pop is dead - it's no great loss.
So many facelifts, it's face flew off"
+--------------------------------------------------------------------------
*/
if ( ! defined( 'IN_IPB' ) )
{
print "
Некорректный адрес
Вы не имеете доступа к этому файлу напрямую. Если вы недавно обновляли форум, вы должны обновить все соответствующие файлы.";
exit();
}
class version_upgrade
{
var $this_version = '20004';
var $upgrade_from = '20003';
var $first_step = 'обновит вашу базу данных для вставки новых полей и таблиц.';
var $md5_check = '';
var $base_url = '';
var $mod_to_run = '';
/*-------------------------------------------------------------------------*/
// CONSTRUCTOR
/*-------------------------------------------------------------------------*/
function version_upgrade()
{
}
function version_process()
{
$this->md5_check = $this->ipsclass->return_md5_check();
$this->base_url = "index.php?act=work&loginkey={$this->ipsclass->input['loginkey']}&securekey={$this->ipsclass->input['securekey']}&mid={$this->ipsclass->input['mid']}";
if ( is_array( $this->ipsclass->modules_to_run ) and count( $this->ipsclass->modules_to_run ) )
{
$tmp = array_shift( $this->ipsclass->modules_to_run );
$this->mod_to_run = implode( ', ', $this->ipsclass->modules_to_run );
}
if ( ! $this->mod_to_run )
{
$this->mod_to_run = 'None';
}
}
/*-------------------------------------------------------------------------*/
// Auto run..
/*-------------------------------------------------------------------------*/
function auto_run()
{
//--------------------------------
// What are we doing?
//--------------------------------
switch( $this->ipsclass->input['workact'] )
{
case 'sql':
$this->upgrade_sql();
break;
default:
$this->upgrade_intro();
break;
}
}
/*-------------------------------------------------------------------------*/
// SQL
/*-------------------------------------------------------------------------*/
function upgrade_sql()
{
$cnt = 0;
$sql = $this->_get_sql();
foreach( $sql as $q )
{
$this->ipsclass->DB->query( $q );
$cnt++;
}
//--------------------------------
// Next page...
//--------------------------------
$this->ipsclass->core->redirect( "index.php?act=done&loginkey={$this->ipsclass->input['loginkey']}&securekey={$this->ipsclass->input['securekey']}&mid={$this->ipsclass->input['mid']}", "$cnt запросов выполнено...." );
}
/*-------------------------------------------------------------------------*/
// INTRO
/*-------------------------------------------------------------------------*/
function upgrade_intro()
{
$this->ipsclass->template->content .= "
Добро пожаловать в систему обновления IPB
Этот модуль обновит ваш форум с
{$this->ipsclass->versions[$this->upgrade_from]} до
{$this->ipsclass->versions[$this->this_version]}
Этот первый этап {$this->first_step}
После этого модуля будет запущено: {$this->mod_to_run}
";
$this->ipsclass->template->output();
}
/*-------------------------------------------------------------------------*/
// SQL (ARRAY)
/*-------------------------------------------------------------------------*/
function _get_sql()
{
$SQL = array();
$SQL[] = "INSERT INTO ibf_conf_settings_titles (conf_title_id, conf_title_title, conf_title_desc, conf_title_count, conf_title_noshow, conf_title_keyword) VALUES (22,'IPB Портал', 'Эта настройки позволяют включить и настроить ваш IPB Портал.', 20, 0, 'ipbportal');";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Включить IPB портал?', 'Если «Да»,IPB Портал будет доступен, используя следующую запись в URL строке index.php?act=home, или через специальный php файл, который можно взять из директории /Tools_and_Scripts/ дистрибутива с форумом.', '22', 'yes_no', 'csite_on', '', '1', '', '', 1, 1, '', 0, '', 1);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Заголовок страницы портала', 'Это название будет выводиться в тэге <title>, то есть, в заголовке окна браузера.', '22', 'input', 'csite_title', '', 'IPB Портал', '', '', 1, 2, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Форумы для экспорта новостей', 'Форумы, темы из которых будут экспортироваться в портал, как новости. Вы можете выбрать несколько форумов, используя «Ctrl».', '22', 'input', 'csite_article_forum', '1,2,3,4,5,6', '', '', '', 1, 3, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Количество новостей, отображаемых в основном блоке', '', '22', 'input', 'csite_article_max', '', '15', '', '', 1, 4, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Включить последние новости (малый блок)?', 'Этот пункт будет отображать маленький блок заголовков последних новостей в портале.', '22', 'yes_no', 'csite_article_recent_on', '', '1', '', '', 1, 5, 'Маленький блок последних новостей', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Максимальное количество последних новостей', '', '22', 'input', 'csite_article_recent_max', '', '5', '', '', 1, 6, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Максимальная длина заголовков новостей', '', '22', 'input', 'csite_article_len', '', '30', '', '', 1, 7, '', 1, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Формат времени для новостей', 'Подробнее о датах времени на официальном сайте PHP: Даты в PHP.', '22', 'input', 'csite_article_date', '', 'j.n.Y, G:i', '', '', 1, 3, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Включить последние темы?', '', '22', 'yes_no', 'csite_discuss_on', '', '1', '', '', 1, 9, 'Последние обсуждения', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Максимальное количество последних тем', '', '22', 'input', 'csite_discuss_max', '', '10', '', '', 1, 10, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Максимальная длина заголовков тем', '', '22', 'input', 'csite_discuss_len', '', '30', '', '', 1, 11, '', 1, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Показывать блок информации пользователя/гостя?', '', '22', 'yes_no', 'csite_pm_show', '', '1', '', '', 1, 12, 'Компоненты портала', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Показывать блок активных пользователей?', '', '22', 'yes_no', 'csite_online_show', '', '1', '', '', 1, 13, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Показывать блок с формой поиска?', '', '22', 'yes_no', 'csite_search_show', '', '1', '', '', 1, 14, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Показывать блок с выпадающем меню выбора стиля?', '', '22', 'yes_no', 'csite_skinchange_show', '', '1', '', '', 1, 15, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Введите URL адрес темы с опросом', 'Оставьте поле пустым, если не хотите выводить в портал отдельным блоком опрос', '22', 'input', 'csite_poll_url', '', '', '', '', 1, 17, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Показывать навигационное меню?', '', '22', 'yes_no', 'csite_nav_show', '', '1', '', '', 1, 18, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Ссылки навигационного меню', 'Используйте одну ссылку на строку, вводите в следующем формате:
http://www.yandex.ru [Яndex]
Запись {board_url} будет заменена на URL вашего форума', '22', 'textarea', 'csite_nav_contents', '', '{board_url} [Форумыы]\r\n{board_url}act=Search&CODE=getactive [Активные темы]\r\n{board_url}act=Stats [Лучшие сегодня]\r\n{board_url}act=Stats&CODE=leaders [Администрация]', '', 'if ( $show == 1)\r\n{\r\n $value = preg_replace( \"/&(middot|quot|copy|amp)/\", \"&\\\\1\", $value );\r\n}', 1, 19, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Показывать блок с рекомендуемыми ссылками?', 'Например, ссылки на сайты ваших партнеров.', '22', 'yes_no', 'csite_fav_show', '', '0', '', '', 1, 20, '', 0, '', 0);";
$SQL[] = "INSERT INTO ibf_conf_settings (conf_title, conf_description, conf_group, conf_type, conf_key, conf_value, conf_default, conf_extra, conf_evalphp, conf_protected, conf_position, conf_start_group, conf_end_group, conf_help_key, conf_add_cache) VALUES ('Содержание блока с рекомендуемыми ссылками', 'HTML включе', '22', 'textarea', 'csite_fav_contents', '', '', '', 'if ( $show == 1)\r\n{\r\n $value = preg_replace( \"/&(middot|quot|copy|amp)/\", \"&\\\\1\", $value );\r\n}', 1, 21, '', 1, '', 0);";
return $SQL;
}
}
?>