aboutsummaryrefslogtreecommitdiff
path: root/install/ElggInstaller.php
diff options
context:
space:
mode:
Diffstat (limited to 'install/ElggInstaller.php')
-rw-r--r--install/ElggInstaller.php58
1 files changed, 38 insertions, 20 deletions
diff --git a/install/ElggInstaller.php b/install/ElggInstaller.php
index 2070f15e9..03c84a43e 100644
--- a/install/ElggInstaller.php
+++ b/install/ElggInstaller.php
@@ -391,7 +391,7 @@ class ElggInstaller {
$formVars = array(
'sitename' => array(
'type' => 'text',
- 'value' => 'New Elgg site',
+ 'value' => 'My New Community',
'required' => TRUE,
),
'siteemail' => array(
@@ -535,8 +535,6 @@ class ElggInstaller {
$params['destination'] = 'index.php';
}
- elgg_invalidate_simplecache();
-
$this->render('complete', $params);
}
@@ -754,6 +752,7 @@ class ElggInstaller {
protected function finishBootstraping($step) {
$dbIndex = array_search('database', $this->getSteps());
+ $settingsIndex = array_search('settings', $this->getSteps());
$adminIndex = array_search('admin', $this->getSteps());
$completeIndex = array_search('complete', $this->getSteps());
$stepIndex = array_search($step, $this->getSteps());
@@ -780,7 +779,7 @@ class ElggInstaller {
'database.php', 'actions.php',
'admin.php', 'annotations.php',
- 'cron.php', 'entities.php',
+ 'calendar.php', 'cron.php', 'entities.php',
'extender.php', 'filestore.php', 'group.php',
'location.php', 'mb_wrapper.php',
'memcache.php', 'metadata.php', 'metastrings.php',
@@ -790,8 +789,8 @@ class ElggInstaller {
'private_settings.php', 'relationships.php', 'river.php',
'sites.php', 'statistics.php', 'tags.php', 'user_settings.php',
'users.php', 'upgrade.php', 'web_services.php',
- 'widgets.php', 'xml.php', 'deprecated-1.7.php',
- 'deprecated-1.8.php', 'deprecated-1.9.php'
+ 'widgets.php', 'xml.php', 'xml-rpc.php',
+ 'deprecated-1.7.php', 'deprecated-1.8.php',
);
foreach ($lib_files as $file) {
@@ -802,9 +801,17 @@ class ElggInstaller {
}
}
- set_default_config();
+ setup_db_connections();
+ register_translations(dirname(dirname(__FILE__)) . "/languages/");
+
+ if ($stepIndex > $settingsIndex) {
+ $CONFIG->site_guid = (int) datalist_get('default_site');
+ $CONFIG->site_id = $CONFIG->site_guid;
+ $CONFIG->site = get_entity($CONFIG->site_guid);
+ $CONFIG->dataroot = datalist_get('dataroot');
+ _elgg_session_boot(NULL, NULL, NULL);
+ }
- elgg_trigger_event('boot', 'system');
elgg_trigger_event('init', 'system');
}
}
@@ -823,8 +830,10 @@ class ElggInstaller {
$CONFIG->wwwroot = $this->getBaseUrl();
$CONFIG->url = $CONFIG->wwwroot;
$CONFIG->path = dirname(dirname(__FILE__)) . '/';
- $CONFIG->lastcache = 0;
+ $CONFIG->viewpath = $CONFIG->path . 'views/';
+ $CONFIG->pluginspath = $CONFIG->path . 'mod/';
$CONFIG->context = array();
+ $CONFIG->entity_types = array('group', 'object', 'site', 'user');
}
/**
@@ -1328,6 +1337,21 @@ class ElggInstaller {
}
}
+ // check that data root is absolute path
+ if (stripos(PHP_OS, 'win') === 0) {
+ if (strpos($submissionVars['dataroot'], ':') !== 1) {
+ $msg = elgg_echo('install:error:relative_path', array($submissionVars['dataroot']));
+ register_error($msg);
+ return FALSE;
+ }
+ } else {
+ if (strpos($submissionVars['dataroot'], '/') !== 0) {
+ $msg = elgg_echo('install:error:relative_path', array($submissionVars['dataroot']));
+ register_error($msg);
+ return FALSE;
+ }
+ }
+
// check that data root exists
if (!file_exists($submissionVars['dataroot'])) {
$msg = elgg_echo('install:error:datadirectoryexists', array($submissionVars['dataroot']));
@@ -1380,11 +1404,11 @@ class ElggInstaller {
$submissionVars['wwwroot'] = sanitise_filepath($submissionVars['wwwroot']);
$site = new ElggSite();
- $site->name = $submissionVars['sitename'];
- $site->url = $submissionVars['wwwroot'];
+ $site->name = $submissionVars['sitename'];
+ $site->url = $submissionVars['wwwroot'];
$site->access_id = ACCESS_PUBLIC;
- $site->email = $submissionVars['siteemail'];
- $guid = $site->save();
+ $site->email = $submissionVars['siteemail'];
+ $guid = $site->save();
if (!$guid) {
register_error(elgg_echo('install:error:createsite'));
@@ -1401,7 +1425,7 @@ class ElggInstaller {
datalist_set('default_site', $site->getGUID());
datalist_set('version', get_version());
datalist_set('simplecache_enabled', 1);
- datalist_set('viewpath_cache_enabled', 1);
+ datalist_set('system_cache_enabled', 1);
// new installations have run all the upgrades
$upgrades = elgg_get_upgrade_files($submissionVars['path'] . 'engine/lib/upgrades/');
@@ -1416,12 +1440,6 @@ class ElggInstaller {
$this->enablePlugins();
- // reset the views path in case of installing over an old data dir.
- $dataroot = $submissionVars['dataroot'];
- $CONFIG->dataroot = $dataroot;
- $cache = new ElggFileCache($dataroot);
- $cache->delete('view_paths');
-
return TRUE;
}