Version 3.3.4
This commit is contained in:
1 parent
78706903a2
commit
fb6b5baabc
2206 files changed
+409828
-382984
No files matched your search
@@ -1,159 +1,159 @@
|
||||
<?php
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.2.3
|
||||
* Installer: Index file
|
||||
* Last Updated: $LastChangedDate: 2011-05-05 07:03:47 -0400 (Thu, 05 May 2011) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: ips_terabyte $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license This is NULLED!
|
||||
* @package IP.Board
|
||||
* @link http://hatynka.in
|
||||
* @version $Rev: 8644 $
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
class install_index extends ipsCommand
|
||||
{
|
||||
/**
|
||||
* Execute selected method
|
||||
*
|
||||
* @access public
|
||||
* @param object Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function doExecute( ipsRegistry $registry )
|
||||
{
|
||||
/* INIT */
|
||||
$filesOK = NULL;
|
||||
$extensions = get_loaded_extensions();
|
||||
$extensionsOK = TRUE;
|
||||
$extensionData = array();
|
||||
|
||||
/* Test Extensions */
|
||||
$INSTALLDATA = array();
|
||||
include( IPS_ROOT_PATH . 'setup/xml/requiredextensions.php' );/*noLibHook*/
|
||||
|
||||
if ( is_array( $INSTALLDATA ) && count( $INSTALLDATA ) )
|
||||
{
|
||||
foreach( $INSTALLDATA as $data )
|
||||
{
|
||||
if ( ! in_array( $data['testfor'], $extensions ) )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// Added 'nohault' key which will show a
|
||||
// warning but not prohibit installation
|
||||
//-----------------------------------------
|
||||
|
||||
if( $data['nohault'] )
|
||||
{
|
||||
$data['_ok'] = 1; // Anything but true or false
|
||||
$extensionsOK = 1; // Anything but true or false
|
||||
}
|
||||
else
|
||||
{
|
||||
$extensionsOK = FALSE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['_ok'] = TRUE;
|
||||
}
|
||||
|
||||
$extensionData[] = $data;
|
||||
}
|
||||
}
|
||||
|
||||
/* Check for conf_global.dist.php */
|
||||
if ( is_file( DOC_IPS_ROOT_PATH . 'conf_global.dist.php') AND ! is_file( DOC_IPS_ROOT_PATH.'conf_global.php') )
|
||||
{
|
||||
if ( ! @rename( DOC_IPS_ROOT_PATH.'conf_global.dist.php', DOC_IPS_ROOT_PATH.'conf_global.php' ) )
|
||||
{
|
||||
$filesOK = FALSE;
|
||||
$this->registry->output->addError( "<strong>Вы должны переименовать файл 'conf_global.<b style='color:red'>dist.php</b>' в 'conf_global.<b style='color:red'>php</b>' перед продолжением.</strong>
|
||||
Этот файл можно найти в корневой директории IP.Board." );
|
||||
}
|
||||
}
|
||||
|
||||
/* All extensions loaded OK? */
|
||||
if ( $extensionsOK == TRUE AND $filesOK === NULL )
|
||||
{
|
||||
$filesOK = FALSE;
|
||||
|
||||
/* Fetch core writeable files */
|
||||
require_once( IPS_KERNEL_PATH . 'classXML.php' );/*noLibHook*/
|
||||
$xml = new classXML( IPSSetUp::charSet );
|
||||
|
||||
try
|
||||
{
|
||||
$xml->load( IPS_ROOT_PATH . 'setup/xml/writeablefiles.xml' );
|
||||
|
||||
foreach( $xml->fetchElements( 'file' ) as $xmlelement )
|
||||
{
|
||||
$data = $xml->fetchElementsFromRecord( $xmlelement );
|
||||
|
||||
if ( $data['path'] )
|
||||
{
|
||||
$_path = DOC_IPS_ROOT_PATH . $data['path'];
|
||||
|
||||
if ( ! file_exists( $_path ) )
|
||||
{
|
||||
if ( $data['dir'] )
|
||||
{
|
||||
if ( ! @mkdir( $_path, IPS_FOLDER_PERMISSION, TRUE ) )
|
||||
{
|
||||
$this->registry->output->addError( 'Директория "' . $data['path'] . '" не существует, создайте ее' );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->registry->output->addError( 'Файл "' . $data['path'] . '" не существует, создайте его' );
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! is_writeable( $_path ) )
|
||||
{
|
||||
if ( ! @chmod( $_path, is_dir( $_path ) ? IPS_FOLDER_PERMISSION : IPS_FILE_PERMISSION ) )
|
||||
{
|
||||
if ( is_dir( $_path ) )
|
||||
{
|
||||
$this->registry->output->addError( 'Запись в директорию: "' . $data['path'] . '" невозможна , измените права доступа' );
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->registry->output->addError( 'Запись в файл "' . $data['path'] . '" невозможна, измените права доступа' );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! count( $this->registry->output->fetchErrors() ) )
|
||||
{
|
||||
$filesOK = TRUE;
|
||||
}
|
||||
}
|
||||
catch( Exception $error )
|
||||
{
|
||||
$filesOK = FALSE;
|
||||
$this->registry->output->addError( "Файл " . IPS_ROOT_PATH . 'setup/xml/writeablefiles.xml не найден' );
|
||||
}
|
||||
}
|
||||
|
||||
/* Hide buttons? */
|
||||
if ( $filesOK !== TRUE OR $extensionsOK != TRUE )
|
||||
{
|
||||
$this->registry->output->setNextAction( '' );
|
||||
$this->registry->output->setHideButton( TRUE );
|
||||
}
|
||||
|
||||
/* Simply return the requirements page */
|
||||
$this->registry->output->setTitle( "Требования" );
|
||||
$this->registry->output->addContent( $this->registry->output->template()->page_requirements( $filesOK, $extensionsOK, $extensionData ) );
|
||||
$this->registry->output->sendOutput();
|
||||
}
|
||||
<?php
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* Installer: Index file
|
||||
* Last Updated: $LastChangedDate: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
* @copyright (c) 2001 - 2009 Invision Power Services, Inc.
|
||||
* @license http://www.invisionpower.com/company/standards.php#license
|
||||
* @package IP.Board
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Rev: 10914 $
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
class install_index extends ipsCommand
|
||||
{
|
||||
/**
|
||||
* Execute selected method
|
||||
*
|
||||
* @access public
|
||||
* @param object Registry object
|
||||
* @return @e void
|
||||
*/
|
||||
public function doExecute( ipsRegistry $registry )
|
||||
{
|
||||
/* INIT */
|
||||
$filesOK = NULL;
|
||||
$extensions = get_loaded_extensions();
|
||||
$extensionsOK = TRUE;
|
||||
$extensionData = array();
|
||||
|
||||
/* Test Extensions */
|
||||
$INSTALLDATA = array();
|
||||
include( IPS_ROOT_PATH . 'setup/xml/requiredextensions.php' );/*noLibHook*/
|
||||
|
||||
if ( is_array( $INSTALLDATA ) && count( $INSTALLDATA ) )
|
||||
{
|
||||
foreach( $INSTALLDATA as $data )
|
||||
{
|
||||
if ( ! in_array( $data['testfor'], $extensions ) )
|
||||
{
|
||||
//-----------------------------------------
|
||||
// Added 'nohault' key which will show a
|
||||
// warning but not prohibit installation
|
||||
//-----------------------------------------
|
||||
|
||||
if( $data['nohault'] )
|
||||
{
|
||||
$data['_ok'] = 1; // Anything but true or false
|
||||
$extensionsOK = 1; // Anything but true or false
|
||||
}
|
||||
else
|
||||
{
|
||||
$extensionsOK = FALSE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['_ok'] = TRUE;
|
||||
}
|
||||
|
||||
$extensionData[] = $data;
|
||||
}
|
||||
}
|
||||
|
||||
/* Check for conf_global.dist.php */
|
||||
if ( is_file( DOC_IPS_ROOT_PATH . 'conf_global.dist.php') AND ! is_file( DOC_IPS_ROOT_PATH.'conf_global.php') )
|
||||
{
|
||||
if ( ! @rename( DOC_IPS_ROOT_PATH.'conf_global.dist.php', DOC_IPS_ROOT_PATH.'conf_global.php' ) )
|
||||
{
|
||||
$filesOK = FALSE;
|
||||
$this->registry->output->addError( "<strong>You MUST rename the file 'conf_global.<b style='color:red'>dist.php</b>' TO 'conf_global.<b style='color:red'>php</b>' before continuing.</strong>
|
||||
This file can be found in the 'root' directory on your IP.Board install." );
|
||||
}
|
||||
}
|
||||
|
||||
/* All extensions loaded OK? */
|
||||
if ( $extensionsOK == TRUE AND $filesOK === NULL )
|
||||
{
|
||||
$filesOK = FALSE;
|
||||
|
||||
/* Fetch core writeable files */
|
||||
require_once( IPS_KERNEL_PATH . 'classXML.php' );/*noLibHook*/
|
||||
$xml = new classXML( IPSSetUp::charSet );
|
||||
|
||||
try
|
||||
{
|
||||
$xml->load( IPS_ROOT_PATH . 'setup/xml/writeablefiles.xml' );
|
||||
|
||||
foreach( $xml->fetchElements( 'file' ) as $xmlelement )
|
||||
{
|
||||
$data = $xml->fetchElementsFromRecord( $xmlelement );
|
||||
|
||||
if ( $data['path'] )
|
||||
{
|
||||
$_path = DOC_IPS_ROOT_PATH . $data['path'];
|
||||
|
||||
if ( ! file_exists( $_path ) )
|
||||
{
|
||||
if ( $data['dir'] )
|
||||
{
|
||||
if ( ! @mkdir( $_path, IPS_FOLDER_PERMISSION, TRUE ) )
|
||||
{
|
||||
$this->registry->output->addError( 'Directory does not exist: "' . $data['path'] . '", please create it via FTP' );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->registry->output->addError( 'File does not exist: "' . $data['path'] . '", please create it via FTP' );
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! is_writeable( $_path ) )
|
||||
{
|
||||
if ( ! @chmod( $_path, is_dir( $_path ) ? IPS_FOLDER_PERMISSION : IPS_FILE_PERMISSION ) )
|
||||
{
|
||||
if ( is_dir( $_path ) )
|
||||
{
|
||||
$this->registry->output->addError( 'Can not write to directory: "' . $data['path'] . '", please CHMOD to 777' );
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->registry->output->addError( 'Can not write to file: "' . $data['path'] . '", please CHMOD to 777' );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! count( $this->registry->output->fetchErrors() ) )
|
||||
{
|
||||
$filesOK = TRUE;
|
||||
}
|
||||
}
|
||||
catch( Exception $error )
|
||||
{
|
||||
$filesOK = FALSE;
|
||||
$this->registry->output->addError( "Cannot locate: " . IPS_ROOT_PATH . 'setup/xml/writeablefiles.xml' );
|
||||
}
|
||||
}
|
||||
|
||||
/* Hide buttons? */
|
||||
if ( $filesOK !== TRUE OR $extensionsOK != TRUE )
|
||||
{
|
||||
$this->registry->output->setNextAction( '' );
|
||||
$this->registry->output->setHideButton( TRUE );
|
||||
}
|
||||
|
||||
/* Simply return the requirements page */
|
||||
$this->registry->output->setTitle( "Requirements" );
|
||||
$this->registry->output->addContent( $this->registry->output->template()->page_requirements( $filesOK, $extensionsOK, $extensionData ) );
|
||||
$this->registry->output->sendOutput();
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user