From 227980c7d1efc3bfd0bf0bd89777b79b584c15f7 Mon Sep 17 00:00:00 2001 From: Graham Eames Date: Fri, 8 Sep 2006 20:06:00 +0000 Subject: [PATCH] Add the lock file to allow dynamic menus git-svn-id: file:///svn/phpbb/trunk@6361 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/install/index.php | 4 ++++ phpBB/install/install_install.php | 15 +++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/phpBB/install/index.php b/phpBB/install/index.php index fed5b67545..6668416c7d 100755 --- a/phpBB/install/index.php +++ b/phpBB/install/index.php @@ -286,6 +286,10 @@ class module } $module = $this->filename; + if (!class_exists($module)) + { + $this->error('Module not accessible', __LINE__, __FILE__); + } $this->module = new $module($this); if (method_exists($this->module, 'main')) diff --git a/phpBB/install/install_install.php b/phpBB/install/install_install.php index e0b7333f5a..b2db402067 100755 --- a/phpBB/install/install_install.php +++ b/phpBB/install/install_install.php @@ -19,7 +19,7 @@ if ( !defined('IN_INSTALL') ) if (!empty($setmodules)) { - /* If phpBB is already installed we do not include this module + // 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')) { include_once($phpbb_root_path . 'config.' . $phpEx); @@ -28,7 +28,7 @@ if (!empty($setmodules)) { return; } - }*/ + } $module[] = array( 'module_type' => 'install', @@ -54,7 +54,7 @@ class install_install extends module function main($mode, $sub) { - global $lang, $template, $language; + global $lang, $template, $language, $phpbb_root_path; switch ($sub) { @@ -106,7 +106,10 @@ class install_install extends module $this->add_language($mode, $sub); $this->add_bots($mode, $sub); $this->email_admin($mode, $sub); - + + // Remove the lock file + @unlink($phpbb_root_path . 'cache/install_lock'); + break; } @@ -743,6 +746,10 @@ class install_install extends module } } + // Create a lock file to indicate that there is an install in progress + $fp = @fopen($phpbb_root_path . 'cache/install_lock', 'wb'); + @fclose($fp); + $dbpasswd = html_entity_decode($dbpasswd); $load_extensions = implode(',', $load_extensions);