Files
IPB/upload/upgrade/upg_20002/version_upgrade.php
T
2025-12-19 00:21:15 -08:00

258 lines
11 KiB
PHP

<?php
/*
+--------------------------------------------------------------------------
| Invision Power Board 2.1.7
| =============================================
| by Matthew Mecham
| (c) 2001 - 2005 Invision Power Services, Inc.
| http://www.invisionpower.com
| =============================================
| Web: http://www.invisionboard.com
| http://www.ibresource.ru/products/invisionpowerboard/
| Time: Tuesday 18th of July 2006 05:56:00 PM
| Release: 52f408a29988b02f45b5e6f4ba5af0ae
| Licence Info: http://www.invisionboard.com/?license
| http://www.ibresource.ru/license
+---------------------------------------------------------------------------
| INVISION POWER BOARD IS NOT FREE / OPEN SOURCE!
+---------------------------------------------------------------------------
| INVISION POWER BOARD ÍÅ ßÂËßÅÒÑß ÁÅÑÏËÀÒÍÛÌ ÏÐÎÃÐÀÌÌÍÛÌ ÎÁÅÑÏÅ×ÅÍÈÅÌ!
| Ïðàâà íà ÏÎ ïðèíàäëåæàò Invision Power Services
+---------------------------------------------------------------------------
|
| > 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 "<h1>Íåêîððåêòíûé àäðåñ</h1>Âû íå èìååòå äîñòóïà ê ýòîìó ôàéëó íàïðÿìóþ. Åñëè âû íåäàâíî îáíîâëÿëè ôîðóì, âû äîëæíû îáíîâèòü âñå ñîîòâåòñòâóþùèå ôàéëû.";
exit();
}
class version_upgrade
{
var $this_version = '20002';
var $upgrade_from = '20001';
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 .= "
<div class='tableborder'>
<div class='maintitle'>Äîáðî ïîæàëîâàòü â ñèñòåìó îáíîâëåíèÿ IPB</div>
<div class='tdrow1' style='padding:6px'>Ýòîò ìîäóëü îáíîâèò âàø ôîðóì ñ <b>{$this->ipsclass->versions[$this->upgrade_from]}</b> äî <b>{$this->ipsclass->versions[$this->this_version]}</b>
<br /><br />Ýòîò ïåðâûé ýòàï {$this->first_step}
<br /><br />
<div align='center'><span style='font-weight:bold;font-size:14px'>&raquo; <a href='{$this->base_url}&workact=sql'>Äàëåå...</a></span></div>
</div>
</div>
<br />
<div align='center'>Ïîñëå ýòîãî ìîäóëÿ áóäåò çàïóùåíî: {$this->mod_to_run}</div>
";
$this->ipsclass->template->output();
}
/*-------------------------------------------------------------------------*/
// SQL (ARRAY)
/*-------------------------------------------------------------------------*/
function _get_sql()
{
$SQL = array();
$SQL[]="create table ibf_announcements (
announce_id int(10) UNSIGNED NOT NULL auto_increment,
announce_title varchar(255) NOT NULL default '',
announce_post text NOT NULL default '',
announce_forum text NOT NULL default '',
announce_member_id mediumint(8) UNSIGNED NOT NULL default '0',
announce_html_enabled tinyint(1) NOT NULL default '0',
announce_views int(10) UNSIGNED NOT NULL default '0',
announce_start int(10) UNSIGNED NOT NULL default '0',
announce_end int(10) UNSIGNED NOT NULL default '0',
announce_active tinyint(1) NOT NULL default '1',
PRIMARY KEY (announce_id)
);";
$SQL[]="INSERT INTO ibf_task_manager (task_title, task_file, task_next_run, task_week_day,
task_month_day, task_hour, task_minute, task_cronkey, task_log, task_description, task_enabled)
VALUES ('Îáíîâëåíèå îáúÿâëåíèé', 'announcements.php', 1080747660, -1, -1, 4, -1, 'e82f2c19ab1ed57c140fccf8aea8b9fe', 1,
'Îáíîâëåíèå êåøà è óäàëåíèå îêîí÷åííûõ îáúÿâëåíèé', 1);";
$SQL[]="CREATE TABLE ibf_bulk_mail (
mail_id int(10) NOT NULL auto_increment,
mail_subject varchar(255) NOT NULL default '',
mail_content mediumtext NOT NULL default '',
mail_groups mediumtext NOT NULL default '',
mail_honor tinyint(1) NOT NULL default '1',
mail_opts mediumtext NOT NULL default '',
mail_start int(10) NOT NULL default '0',
mail_updated int(10) NOT NULL default '0',
mail_sentto int(10) NOT NULL default '0',
mail_active tinyint(1) NOT NULL default '0',
mail_pergo smallint(5) NOT NULL default '0',
PRIMARY KEY (mail_id)
);";
$SQL[]="alter table ibf_task_manager add task_key varchar(30) NOT NULL default '', add task_safemode tinyint(1) NOT NULL default '';";
$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 ('Äîáàâëÿòü &laquo;&lt;&raquo; è &laquo;&gt;&raquo; ê ïîëÿì &laquo;Êîìó&raquo; è &laquo;Îáðàòíûé àäðåñ&raquo; â îòïðàâëÿåìûõ ïèñüìàõ?',
'Íåêîòîðûå SMTP ñåðâåðà òðåáóåò, ÷òîáû e-mail àäðåñà áûëè â óãëîâûõ ñêîáêàõ. Åñëè âû ïîëó÷àåòå îøèáêó â æóðíàëå ïî÷òîâûõ îøèáîê, âêëþ÷èòå ýòó îïöèþ.', '12', 'yes_no', 'mail_wrap_brackets', '', '0', '', '', 1, 6, '', 0, '', 1);";
$SQL[]="create table ibf_mail_error_logs (
mlog_id int(10) auto_increment NOT NULL,
mlog_date int(10) NOT NULL default '0',
mlog_to varchar(250) NOT NULL default '',
mlog_from varchar(250) NOT NULL default '',
mlog_subject varchar(250) NOT NULL default '',
mlog_content varchar(250) NOT NULL default '',
mlog_msg text NOT NULL default '',
mlog_code varchar(200) NOT NULL default '',
mlog_smtp_msg text NOT NULL default '',
PRIMARY KEY (mlog_id)
);";
$SQL[]="alter table ibf_pfields_data
change fid pf_id smallint(5) NOT NULL auto_increment,
change ftitle pf_title varchar(250) NOT NULL default '',
change fdesc pf_desc varchar(250) NOT NULL default '',
change fcontent pf_content text NOT NULL default '',
change ftype pf_type varchar(250) NOT NULL default '',
change freq pf_not_null tinyint(1) NOT NULL default '0',
change fhide pf_member_hide tinyint(1) NOT NULL default '0',
change fmaxinput pf_max_input smallint(6) NOT NULL default '0',
change fedit pf_member_edit tinyint(1) NOT NULL default '0',
change forder pf_position smallint(6) NOT NULL default '0',
change fshowreg pf_show_on_reg tinyint(1) NOT NULL default '0',
add pf_input_format text NOT NULL default '',
add pf_admin_only tinyint(1) NOT NULL default '0',
add pf_topic_format text NOT NULL default '';";
$SQL[]="INSERT INTO ibf_skin_macro (macro_value, macro_replace, macro_set) VALUES ( 'POST_SNAPBACK', \"<img src='style_images/<#IMG_DIR#>/post_snapback.gif' alt='*' border='0' />\", 1);";
$SQL[]="alter table ibf_forum_tracker add forum_track_type varchar(100) NOT NULL default 'delayed';";
$SQL[]="alter table ibf_tracker add topic_track_type varchar(100) NOT NULL default 'delayed';";
$SQL[] ="INSERT INTO ibf_custom_bbcode (bbcode_title, bbcode_desc, bbcode_tag, bbcode_replace, bbcode_useoption, bbcode_example) VALUES ('Óêàçàòåëü ñîîáùåíèÿ', 'Ýòîò òýã ïîêàçûâàåò ìàëåíüêîå èçîáðàæåíèå, êîòîðîå ÿâëÿåòñÿ ññûëêîé íà öèòèðóåìîå ñîîáùåíèå &#151; èñïîëüçóåòñÿ, êîãäà öèòèðóþòñÿ ñîîáùåíèÿ ñ ôîðóìà. Îòêðûâàåòñÿ ïî óìîë÷àíèþ â òîì æå îêíå.', 'snapback', '<a href=\"index.php?act=findpost&amp;pid={content}\"><{POST_SNAPBACK}></a>', 0, '[snapback]100[/snapback]');";
$SQL[] ="INSERT INTO ibf_custom_bbcode (bbcode_title, bbcode_desc, bbcode_tag, bbcode_replace, bbcode_useoption, bbcode_example) VALUES ('Ïî ïðàâîìó êðàþ', 'Âûðàâíèâàíèå òåêñòà ïî ïðàâîìó êðàþ', 'right', '<div align=\'right\'>{content}</div>', 0, '[right]Ëþáîé òåêñò çäåñü[/right]');";
$SQL[] ="INSERT INTO ibf_custom_bbcode (bbcode_title, bbcode_desc, bbcode_tag, bbcode_replace, bbcode_useoption, bbcode_example) VALUES ('Ïî ëåâîìó êðàþ', 'Âûðàâíèâàíèå òåêñòà ïî ëåâîìó êðàþ', 'left', '<div align=\'left\'>{content}</div>', 0, '[left]Ýòîò òåêñò áóäåò èñïîëüçîâàòü âûðàâíèâàíèå ïî ëåâîìó êðàþ[/left]');";
$SQL[] ="INSERT INTO ibf_custom_bbcode (bbcode_title, bbcode_desc, bbcode_tag, bbcode_replace, bbcode_useoption, bbcode_example) VALUES ('Ïî öåíòðó', 'Âûðàâíèâàíèå òåêñòà ïî öåíòðó.', 'center', '<div align=\'center\'>{content}</div>', 0, '[center]Âûðàâíèâàíèå òåêñòà áóäåò ïî öåíòðó[/center]');";
$SQL[] ="INSERT INTO ibf_custom_bbcode (bbcode_title, bbcode_desc, bbcode_tag, bbcode_replace, bbcode_useoption, bbcode_example) VALUES ('Ññûëêà íà òåìó', 'Ýòîò òýã ïîçâîëÿåò ëåãêî îïóáëèêîâàòü ññûëêó íà òåìó, çíàÿ ëèøü åå íîìåð', 'topic', '<a href=\'index.php?showtopic={option}\'>{content}</a>', 1, '[topic=100]Íàæìè íà ìåíÿ![/topic]');";
$SQL[] ="INSERT INTO ibf_custom_bbcode (bbcode_title, bbcode_desc, bbcode_tag, bbcode_replace, bbcode_useoption, bbcode_example) VALUES ('Ññûëêà íà ñîîáùåíèå', 'Ýòîò òýã ïîçâîëÿåò ëåãêî îïóáëèêîâàòü ññûëêó íà ñîîáùåíèå, çíàÿ ëèøü åãî íîìåð.', 'post', '<a href=\'index.php?act=findpost&pid={option}\'>{content}</a>', 1, '[post=100]Íàæìè íà ìåíÿ![/post]');";
$SQL[]="alter table ibf_members change auto_track auto_track varchar(50) default '0';";
$SQL[]="alter table ibf_conf_settings_titles
add conf_title_noshow tinyint(1) NOT NULL default '0',
add conf_title_keyword varchar(200) NOT NULL default '0'";
return $SQL;
}
}
?>