Index: steps/CreateConfigFileStep.class =================================================================== RCS file: /cvsroot/gallery/gallery2/install/steps/CreateConfigFileStep.class,v retrieving revision 1.23 diff -u -w -r1.23 CreateConfigFileStep.class --- steps/CreateConfigFileStep.class 10 Jul 2005 19:26:30 -0000 1.23 +++ steps/CreateConfigFileStep.class 31 Jul 2005 12:35:17 -0000 @@ -91,8 +91,7 @@ $this->setComplete(false); $templateData['recommendUpgrade'] = $upgradeRecommended; $templateData['versions'] = $versions; - $templateData['isMultisite'] = - $_SESSION['configPath'] != dirname(dirname(dirname(__FILE__))); + $templateData['isMultisite'] = $galleryStub->getConfig('isMultisite'); $templateData['galleryDir'] = basename($_SESSION['configPath']); $templateData['configFileWritten'] = $writeConfigFile; $templateData['bodyFile'] = 'VersionCheckFailed.html'; Index: steps/DatabaseSetupStep.class =================================================================== RCS file: /cvsroot/gallery/gallery2/install/steps/DatabaseSetupStep.class,v retrieving revision 1.29 diff -u -w -r1.29 DatabaseSetupStep.class --- steps/DatabaseSetupStep.class 23 Jul 2005 04:30:17 -0000 1.29 +++ steps/DatabaseSetupStep.class 31 Jul 2005 12:35:17 -0000 @@ -235,6 +235,8 @@ } } + $templateData['isMultisite'] = $galleryStub->getConfig('isMultisite'); + if ($this->isComplete()) { $galleryStub->setConfig('storage.config', $this->_config); if (empty($_POST['confirmReuseTables'])) { Index: steps/FinishedStep.class =================================================================== RCS file: /cvsroot/gallery/gallery2/install/steps/FinishedStep.class,v retrieving revision 1.5 diff -u -w -r1.5 FinishedStep.class --- steps/FinishedStep.class 26 May 2005 17:45:38 -0000 1.5 +++ steps/FinishedStep.class 31 Jul 2005 12:35:17 -0000 @@ -26,8 +26,9 @@ } function loadTemplateData(&$templateData) { - $templateData['isMultisite'] = - $_SESSION['configPath'] != dirname(dirname(dirname(__FILE__))); + global $galleryStub; + + $templateData['isMultisite'] = $galleryStub->getConfig('isMultisite'); $templateData['galleryDir'] = basename($_SESSION['configPath']); $templateData['bodyFile'] = 'Finished.html'; $this->setComplete(true); Index: steps/MultisiteStep.class =================================================================== RCS file: /cvsroot/gallery/gallery2/install/steps/MultisiteStep.class,v retrieving revision 1.1 diff -u -w -r1.1 MultisiteStep.class --- steps/MultisiteStep.class 26 May 2005 17:45:38 -0000 1.1 +++ steps/MultisiteStep.class 31 Jul 2005 12:35:18 -0000 @@ -25,7 +25,7 @@ var $_configPath; function stepName() { - return _('Multisite Setup'); + return _('Installation Type'); } function isRedoable() { @@ -33,6 +33,8 @@ } function processRequest() { + global $galleryStub; + if (!empty($_GET['doAutoComplete'])) { processAutoCompleteRequest(); return false; @@ -45,6 +47,8 @@ $_SESSION['configPath'] = $baseDir; $this->setComplete(true); $this->readConfigFile(); + /* Remember the value also for the storage and database setup steps */ + $galleryStub->setConfig('isMultisite', false); require_once($baseDir . '/modules/core/classes/GalleryUrlGenerator.class'); $uri = preg_replace('{\?.*}', '', GalleryUrlGenerator::getCurrentRequestUri()); header('Location: ' . @@ -56,17 +60,24 @@ } function loadTemplateData(&$templateData) { + global $galleryStub; + if (!isset($this->_isMultisite)) { $this->_isMultisite = false; $this->_configPath = ''; } + $galleryDir = dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR; + if (isset($_POST['isMultisite']) && $_POST['isMultisite'] == '1') { $this->_isMultisite = true; if (empty($this->_configPath)) { $templateData['error']['missing_value'] = 1; } else if (!is_dir($this->_configPath)) { $templateData['error']['missing_dir'] = 1; + } else if ($this->_configPath == $galleryDir || + $this->_configPath . DIRECTORY_SEPARATOR == $galleryDir) { + $templateData['error']['codebase_dir'] = 1; } else if (!is_readable($this->_configPath)) { $templateData['error']['inaccessible_dir'] = 1; } else if (!MultisiteStep::populateMultisiteDirectory($this->_configPath)) { @@ -75,19 +86,21 @@ $_SESSION['configPath'] = $this->_configPath; $this->setComplete(true); $this->readConfigFile(); + $galleryStub->setConfig('isMultisite', true); } } - $galleryDir = dirname(dirname(dirname(__FILE__))); - if (isset($_SERVER['DOCUMENT_ROOT']) - && preg_match('#^' . $_SERVER['DOCUMENT_ROOT'] . '/(.*)#', - $galleryDir, $matches)) { - $galleryDir = $matches[1]; - } + /* + * Show full filesystem path and the full URL to config file dir. + */ + require_once($galleryDir . '/modules/core/classes/GalleryUrlGenerator.class'); + $urlPath = preg_replace('|^(.*/)install/index.php(?:\?.*)?$|s', '$1', + GalleryUrlGenerator::getCurrentRequestUri()); $templateData['isMultisite'] = $this->_isMultisite; $templateData['configPath'] = $this->_configPath; $templateData['galleryDir'] = $galleryDir; + $templateData['galleryUrl'] = GalleryUrlGenerator::makeUrl($urlPath); $templateData['bodyFile'] = $this->isComplete() ? 'MultisiteSuccess.html' : 'Multisite.html'; } Index: steps/StorageSetupStep.class =================================================================== RCS file: /cvsroot/gallery/gallery2/install/steps/StorageSetupStep.class,v retrieving revision 1.23 diff -u -w -r1.23 StorageSetupStep.class --- steps/StorageSetupStep.class 19 Jul 2005 15:51:25 -0000 1.23 +++ steps/StorageSetupStep.class 31 Jul 2005 12:35:18 -0000 @@ -35,6 +35,8 @@ } } + $templateData['isMultisite'] = $galleryStub->getConfig('isMultisite'); + if (!empty($_POST['action']) && $_POST['action'] == 'save') { if (empty($_POST['dir'])) { $templateData['error']['missing_value'] = 1; Index: styles/style.css =================================================================== RCS file: /cvsroot/gallery/gallery2/install/styles/style.css,v retrieving revision 1.26 diff -u -w -r1.26 style.css --- styles/style.css 26 Jul 2005 01:17:33 -0000 1.26 +++ styles/style.css 31 Jul 2005 12:35:18 -0000 @@ -331,3 +331,12 @@ padding: 4px 4px 4px 0; } +label.radio { + padding: 2px; + padding-left: 5px; + margin: 0 5px 0 0; + font-weight: bold; + background-color: #f9f9f9; + border:1px solid #f0f0f0; +} + Index: templates/DatabaseSetupRequest.html =================================================================== RCS file: /cvsroot/gallery/gallery2/install/templates/DatabaseSetupRequest.html,v retrieving revision 1.14 diff -u -w -r1.14 DatabaseSetupRequest.html --- templates/DatabaseSetupRequest.html 23 Jul 2005 04:03:17 -0000 1.14 +++ templates/DatabaseSetupRequest.html 31 Jul 2005 12:35:18 -0000 @@ -2,6 +2,12 @@

+ +

+ +

+ +
Index: templates/Multisite.html =================================================================== RCS file: /cvsroot/gallery/gallery2/install/templates/Multisite.html,v retrieving revision 1.2 diff -u -w -r1.2 Multisite.html --- templates/Multisite.html 1 Jul 2005 18:54:31 -0000 1.2 +++ templates/Multisite.html 31 Jul 2005 12:35:18 -0000 @@ -1,29 +1,37 @@ -

Multisite Setup

+

Installation Type

- +

> -

> -

+ +

+ +

+ +