Files
IPB/upload/install/index.php
T
2025-12-19 00:24:35 -08:00

137 lines
4.5 KiB
PHP

<?php
/*
+--------------------------------------------------------------------------
| Invision Power Board 2.2.2
| Invision Power Board INSTALLER
| ========================================
| 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: Monday 05th of March 2007 10:10:55 PM
| Release: e3790216629e5a2aaf37070b32237f06
| 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
| Ïðàâà íà ïåðåâîä IBResource (http://www.ibresource.ru)
+--------------------------------------------------------------------------
|
| > Script written by Matthew Mecham
| > Date started: 19th March 2004
| > Updated for 2.1: 23 June 2005
|
+--------------------------------------------------------------------------
*/
@set_time_limit(0);
//--------------------------------
// Setup
//--------------------------------
require( "./core/conf.php" );
//--------------------------------
// Define Constants
//--------------------------------
$INFO = array();
//--------------------------------
// Load our classes
//--------------------------------
require INS_ROOT_PATH . 'core/ipsclass.php';
require INS_KERNEL_PATH . 'class_converge.php';
require INS_ROOT_PATH . 'core/template.php';
require INS_KERNEL_PATH . 'class_xml.php';
require INS_ROOT_PATH . 'core/class_tar.php';
# Initiate super-class
$ipsclass = new ipsclass();
//--------------------------------
// Set up our vars
//--------------------------------
$ipsclass->parse_incoming();
$ipsclass->initiate_ipsclass();
//--------------------------------
// Setup Main Installer Class
//--------------------------------
require( INS_ROOT_PATH . 'core/class_installer.php' );
require( INS_ROOT_PATH . 'custom/app.php' );
$install = new application_installer();
$install->ipsclass =& $ipsclass;
$install->read_config();
$install->template = new install_template( $ipsclass );
$install->template->product_name = $install->product_name;
$install->template->product_version = $install->product_version;
$install->template->product_long_version = $install->product_long_version;
//--------------------------------
// Saved Data
//--------------------------------
$install->saved_data = unserialize( urldecode( stripslashes( $_POST['saved_data'] ) ) );
//--------------------------------
// Test lock
//--------------------------------
if ( $ipsclass->input['p'] != 'done' )
{
$got_lock = $install->check_lock();
if ( $got_lock )
{
$install->template->hide_next = 1;
$install->template->warning( array( "Ñêðèïò óñòàíîâêè çàáëîêèðîâàí!<br><br>Åñëè âàì íåîáõîäèìî ïîâòîðèòü óñòàíîâêó, ïîæàëóéñòà, óäàëèòå ôàéë 'installfiles/lock.php' è îáíîâèòå ñòðàíèöó." ) );
$install->template->output( $install->product_name, $install->product_version );
exit();
}
}
//--------------------------------
// Make sure we've renamed conf_global.php
//--------------------------------
if ( file_exists( INS_DOC_ROOT_PATH.'conf_global.php.dist') AND ! file_exists( INS_DOC_ROOT_PATH.'conf_global.php') )
{
if ( ! @rename( INS_DOC_ROOT_PATH.'conf_global.php.dist', INS_DOC_ROOT_PATH.'conf_global.php' ) )
{
$install->template->hide_next = 1;
$install->template->warning( array( "<strong>Äëÿ ïðîäîëæåíèÿ óñòàíîâêè âàì íåîáõîäèìî ïåðåèìåíîâàòü ôàéë 'conf_global.<b style='color:red'>php.dist</b>' â 'conf_global.<b style='color:red'>php</b>'.</strong>
Ýòîò ôàéë ìîæíî íàéòè â êîðíåâîé äèðåêòîðèè ôîðóìà, òàì æå ãäå íàõîäÿòñÿ 'admin.php' è 'index.php'." ) );
$install->template->output( $install->product_name, $install->product_version );
exit();
}
}
// -------------------------------
// Run Install Step
// -------------------------------
$install->pre_process();
$install->process();
$install->post_process();
// -------------------------------
// Output
// -------------------------------
$install->template->saved_data = serialize( $install->saved_data );
$install->template->output( $install->product_name, $install->product_version );
?>