mirror of
https://github.com/phpbb/phpbb.git
synced 2025-05-05 15:16:16 +02:00
Merge remote-tracking branch 'prototech/ticket/12160' into develop
* prototech/ticket/12160: [ticket/12160] Use phpbb_check_installation_exists() in the other modules. [ticket/12160] Move phpbb_check_installation_exists() to functions_install.php [ticket/12160] Check if phpBB is installed before creating phpBB container. [ticket/12160] Add function to check if phpBB is installed.
This commit is contained in:
commit
1af7697143
@ -581,3 +581,22 @@ function phpbb_ignore_new_file_on_update($phpbb_root_path, $file)
|
||||
|
||||
return $ignore_new_file;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check whether phpBB is installed.
|
||||
*
|
||||
* @param string $phpbb_root_path Path to the phpBB board root.
|
||||
* @param string $php_ext PHP file extension.
|
||||
*
|
||||
* @return bool Returns true if phpBB is installed.
|
||||
*/
|
||||
function phpbb_check_installation_exists($phpbb_root_path, $php_ext)
|
||||
{
|
||||
// Try opening config file
|
||||
if (file_exists($phpbb_root_path . 'config.' . $php_ext))
|
||||
{
|
||||
include($phpbb_root_path . 'config.' . $php_ext);
|
||||
}
|
||||
|
||||
return defined('PHPBB_INSTALLED');
|
||||
}
|
||||
|
@ -79,6 +79,21 @@ class convert
|
||||
*/
|
||||
class install_convert extends module
|
||||
{
|
||||
/** @var array */
|
||||
protected $lang;
|
||||
|
||||
/** @var string */
|
||||
protected $language;
|
||||
|
||||
/** @var \phpbb\template\template */
|
||||
protected $template;
|
||||
|
||||
/** @var string */
|
||||
protected $phpbb_root_path;
|
||||
|
||||
/** @var string */
|
||||
protected $php_ext;
|
||||
|
||||
/**
|
||||
* Variables used while converting, they are accessible from the global variable $convert
|
||||
*/
|
||||
@ -94,6 +109,16 @@ class install_convert extends module
|
||||
|
||||
$this->tpl_name = 'install_convert';
|
||||
$this->mode = $mode;
|
||||
$this->lang = $lang;
|
||||
$this->language = $language;
|
||||
$this->template = $template;
|
||||
$this->phpbb_root_path = $phpbb_root_path;
|
||||
$this->php_ext = $phpEx;
|
||||
|
||||
if (!$this->check_phpbb_installed())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
$convert = new convert($this->p_master);
|
||||
|
||||
@ -108,25 +133,6 @@ class install_convert extends module
|
||||
switch ($sub)
|
||||
{
|
||||
case 'intro':
|
||||
// Try opening config file
|
||||
// @todo If phpBB is not installed, we need to do a cut-down installation here
|
||||
// For now, we redirect to the installation script instead
|
||||
if (@file_exists($phpbb_root_path . 'config.' . $phpEx))
|
||||
{
|
||||
include($phpbb_root_path . 'config.' . $phpEx);
|
||||
}
|
||||
|
||||
if (!defined('PHPBB_INSTALLED'))
|
||||
{
|
||||
$template->assign_vars(array(
|
||||
'S_NOT_INSTALLED' => true,
|
||||
'TITLE' => $lang['BOARD_NOT_INSTALLED'],
|
||||
'BODY' => sprintf($lang['BOARD_NOT_INSTALLED_EXPLAIN'], append_sid($phpbb_root_path . 'install/index.' . $phpEx, 'mode=install&language=' . $language)),
|
||||
));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
require($phpbb_root_path . 'config.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/constants.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/functions_convert.' . $phpEx);
|
||||
@ -258,6 +264,30 @@ class install_convert extends module
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check whether phpBB is installed.
|
||||
* Assigns error template vars if not installed.
|
||||
*
|
||||
* @return bool Returns true if phpBB is installed.
|
||||
*/
|
||||
public function check_phpbb_installed()
|
||||
{
|
||||
if (phpbb_check_installation_exists($this->phpbb_root_path, $this->php_ext))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
$this->page_title = 'BOARD_NOT_INSTALLED';
|
||||
$install_url = append_sid($this->phpbb_root_path . 'install/index.' . $this->php_ext, 'mode=install&language=' . $this->language);
|
||||
|
||||
$this->template->assign_vars(array(
|
||||
'S_NOT_INSTALLED' => true,
|
||||
'BODY' => sprintf($this->lang['BOARD_NOT_INSTALLED_EXPLAIN'], $install_url),
|
||||
));
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a list of all available conversion modules
|
||||
*/
|
||||
|
@ -18,14 +18,9 @@ if (!defined('IN_INSTALL'))
|
||||
if (!empty($setmodules))
|
||||
{
|
||||
// If phpBB is already installed we do not include this module
|
||||
if (@file_exists($phpbb_root_path . 'config.' . $phpEx) && !file_exists($phpbb_root_path . 'cache/install_lock'))
|
||||
if (phpbb_check_installation_exists($phpbb_root_path, $phpEx) && !file_exists($phpbb_root_path . 'cache/install_lock'))
|
||||
{
|
||||
include_once($phpbb_root_path . 'config.' . $phpEx);
|
||||
|
||||
if (defined('PHPBB_INSTALLED'))
|
||||
{
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
$module[] = array(
|
||||
|
@ -19,16 +19,7 @@ if (!defined('IN_INSTALL'))
|
||||
if (!empty($setmodules))
|
||||
{
|
||||
// If phpBB is not installed we do not include this module
|
||||
if (@file_exists($phpbb_root_path . 'config.' . $phpEx) && !@file_exists($phpbb_root_path . 'cache/install_lock'))
|
||||
{
|
||||
include_once($phpbb_root_path . 'config.' . $phpEx);
|
||||
|
||||
if (!defined('PHPBB_INSTALLED'))
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
else
|
||||
if (!phpbb_check_installation_exists($phpbb_root_path, $phpEx) || file_exists($phpbb_root_path . 'cache/install_lock'))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user