Merge pull request #1313 from owncloud/updater-CSP

Make update page with CSP compatible
This commit is contained in:
Lukas Reschke 2013-01-28 05:43:47 -08:00
commit 99ec26578a
3 changed files with 27 additions and 27 deletions

23
core/js/update.js Normal file
View File

@ -0,0 +1,23 @@
$(document).ready(function () {
var updateEventSource = new OC.EventSource(OC.webroot+'/core/ajax/update.php');
updateEventSource.listen('success', function(message) {
$('<span>').append(message).append('<br />').appendTo($('.update'));
});
updateEventSource.listen('error', function(message) {
$('<span>').addClass('error').append(message).append('<br />').appendTo($('.update'));
});
updateEventSource.listen('failure', function(message) {
$('<span>').addClass('error').append(message).append('<br />').appendTo($('.update'));
$('<span>')
.addClass('error bold')
.append('<br />')
.append(t('core', 'The update was unsuccessful. Please report this issue to the <a href="https://github.com/owncloud/core/issues" target="_blank">ownCloud community</a>.'))
.appendTo($('.update'));
});
updateEventSource.listen('done', function(message) {
$('<span>').addClass('bold').append('<br />').append(t('core', 'The update was successful. Redirecting you to ownCloud now.')).appendTo($('.update'));
setTimeout(function () {
window.location.href = OC.webroot;
}, 3000);
});
});

View File

@ -3,28 +3,3 @@
<?php echo $l->t('Updating ownCloud to version %s, this may take a while.', array($_['version'])); ?><br /><br /> <?php echo $l->t('Updating ownCloud to version %s, this may take a while.', array($_['version'])); ?><br /><br />
</li> </li>
</ul> </ul>
<script>
$(document).ready(function () {
var updateEventSource = new OC.EventSource(OC.webroot+'/core/ajax/update.php');
updateEventSource.listen('success', function(message) {
$('<span>').append(message).append('<br />').appendTo($('.update'));
});
updateEventSource.listen('error', function(message) {
$('<span>').addClass('error').append(message).append('<br />').appendTo($('.update'));
});
updateEventSource.listen('failure', function(message) {
$('<span>').addClass('error').append(message).append('<br />').appendTo($('.update'));
$('<span>')
.addClass('error bold')
.append('<br />')
.append(t('core', 'The update was unsuccessful. Please report this issue to the <a href="https://github.com/owncloud/core/issues" target="_blank">ownCloud community</a>.'))
.appendTo($('.update'));
});
updateEventSource.listen('done', function(message) {
$('<span>').addClass('bold').append('<br />').append(t('core', 'The update was successful. Redirecting you to ownCloud now.')).appendTo($('.update'));
setTimeout(function () {
window.location.href = OC.webroot;
}, 3000);
});
});
</script>

View File

@ -259,6 +259,7 @@ class OC
if ($showTemplate && !OC_Config::getValue('maintenance', false)) { if ($showTemplate && !OC_Config::getValue('maintenance', false)) {
OC_Config::setValue('maintenance', true); OC_Config::setValue('maintenance', true);
OC_Log::write('core', 'starting upgrade from ' . $installedVersion . ' to ' . $currentVersion, OC_Log::DEBUG); OC_Log::write('core', 'starting upgrade from ' . $installedVersion . ' to ' . $currentVersion, OC_Log::DEBUG);
OC_Util::addscript('update');
$tmpl = new OC_Template('', 'update', 'guest'); $tmpl = new OC_Template('', 'update', 'guest');
$tmpl->assign('version', OC_Util::getVersionString()); $tmpl->assign('version', OC_Util::getVersionString());
$tmpl->printPage(); $tmpl->printPage();
@ -429,8 +430,6 @@ class OC
self::checkSSL(); self::checkSSL();
self::initSession(); self::initSession();
self::initTemplateEngine(); self::initTemplateEngine();
self::checkMaintenanceMode();
self::checkUpgrade();
$errors = OC_Util::checkServer(); $errors = OC_Util::checkServer();
if (count($errors) > 0) { if (count($errors) > 0) {
@ -570,10 +569,13 @@ class OC
return; return;
} }
// Check if ownCloud is installed or in maintenance (update) mode
if (!OC_Config::getValue('installed', false)) { if (!OC_Config::getValue('installed', false)) {
require_once 'core/setup.php'; require_once 'core/setup.php';
exit(); exit();
} }
self::checkMaintenanceMode();
self::checkUpgrade();
// Handle redirect URL for logged in users // Handle redirect URL for logged in users
if (isset($_REQUEST['redirect_url']) && OC_User::isLoggedIn()) { if (isset($_REQUEST['redirect_url']) && OC_User::isLoggedIn()) {