aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--languages/en.php11
-rw-r--r--upgrade.php21
-rw-r--r--views/default/page/upgrade.php2
3 files changed, 32 insertions, 2 deletions
diff --git a/languages/en.php b/languages/en.php
index c597743e9..c65aaefd3 100644
--- a/languages/en.php
+++ b/languages/en.php
@@ -955,6 +955,17 @@ Once you have logged in, we highly recommend that you change your password.
'upgrading' => 'Upgrading...',
'upgrade:db' => 'Your database was upgraded.',
'upgrade:core' => 'Your elgg installation was upgraded.',
+ 'upgrade:unable_to_upgrade' => 'Unable to upgrade.',
+ 'upgrade:unable_to_upgrade_info' =>
+ 'This installation cannot be upgraded because legacy views
+ were detected in the Elgg core views directory. These views have been deprecated and need to be
+ removed for Elgg to function correctly. If you have not made changes to Elgg core, you can
+ simply delete the views directory and replace it with the one from the latest
+ package of Elgg downloaded from <a href="http://elgg.org">elgg.org</a>.<br /><br />
+
+ If you need detailed instructions, please visit the <a href="http://docs.elgg.org/wiki/Upgrading_Elgg">
+ Upgrading Elgg documentation</a>. If you require assistance, please post to the
+ <a href="http://community.elgg.org/pg/groups/discussion/">Community Support Forums</a>.',
'deprecated:function' => '%s() was deprecated by %s()',
diff --git a/upgrade.php b/upgrade.php
index b21b32dd9..c235c3f3e 100644
--- a/upgrade.php
+++ b/upgrade.php
@@ -24,7 +24,26 @@ if (get_input('upgrade') == 'upgrade') {
elgg_invalidate_simplecache();
elgg_filepath_cache_reset();
} else {
- echo elgg_view_page(elgg_echo('upgrade'), '', 'upgrade');
+ // if upgrading from < 1.8.0, check for the core view 'welcome' and bail if it's found.
+ // see http://trac.elgg.org/ticket/3064
+ // we're checking the exact view location because it's likely themes will have this view.
+ // we're only concerned with core.
+ $welcome = dirname(__FILE__) . '/views/default/welcome.php';
+ if (file_exists($welcome)) {
+ $content = elgg_view_module('info', elgg_echo('upgrade:unable_to_upgrade'),
+ elgg_echo('upgrade:unable_to_upgrade_info'));
+
+ $params = array(
+ 'content' => $content,
+ 'title' => elgg_echo('upgrade:abort'),
+ );
+
+ $body = elgg_view_layout('one_column', $params);
+ echo elgg_view_page(elgg_echo('upgrade'), $body);
+ exit;
+ }
+
+ echo elgg_view_page(elgg_echo('upgrading'), '', 'upgrade');
exit;
}
diff --git a/views/default/page/upgrade.php b/views/default/page/upgrade.php
index 9cbd45944..1a92042be 100644
--- a/views/default/page/upgrade.php
+++ b/views/default/page/upgrade.php
@@ -7,7 +7,7 @@
?>
<html>
<head>
- <title><?php echo elgg_echo('upgrading'); ?></title>
+ <?php echo elgg_view('page/elements/head', $vars); ?>
<meta http-equiv="refresh" content="1;url=<?php echo elgg_get_site_url(); ?>upgrade.php?upgrade=upgrade"/>
</head>
<body>