summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoas Schilling <nickvergessen@gmx.de>2014-08-18 09:40:42 +0200
committerJoas Schilling <nickvergessen@gmx.de>2014-08-18 16:32:16 +0200
commit86009a564e45553efef23444c435d20235095463 (patch)
tree0ce1b57ed08cd301853e5913a8c4fd49217f427c
parent9d5d0cca7a2a1b9aa49058b195ee24f49b1173c8 (diff)
downloadnextcloud-server-86009a564e45553efef23444c435d20235095463.tar.gz
nextcloud-server-86009a564e45553efef23444c435d20235095463.zip
Add a note about overwritewebroot when using system cron
If the current webroot is non-empty but the webroot from the config is, and system cron is used, the URL generator fails to build valid URLs. So we notify the admin to set it up correctly. Fix #9995
-rwxr-xr-xsettings/admin.php15
-rw-r--r--settings/templates/admin.php19
2 files changed, 27 insertions, 7 deletions
diff --git a/settings/admin.php b/settings/admin.php
index dd5f969fa1a..a9f90aca747 100755
--- a/settings/admin.php
+++ b/settings/admin.php
@@ -19,6 +19,7 @@ $htaccessworking=OC_Util::isHtaccessWorking();
$entries=OC_Log_Owncloud::getEntries(3);
$entriesremain = count(OC_Log_Owncloud::getEntries(4)) > 3;
+$config = \OC::$server->getConfig();
// Should we display sendmail as an option?
$tmpl->assign('sendmail_is_available', (bool) findBinaryPath('sendmail'));
@@ -70,14 +71,16 @@ $tmpl->assign('groups', $groups);
// Check if connected using HTTPS
-if (OC_Request::serverProtocol() === 'https') {
- $connectedHTTPS = true;
-} else {
- $connectedHTTPS = false;
-}
-$tmpl->assign('isConnectedViaHTTPS', $connectedHTTPS);
+$tmpl->assign('isConnectedViaHTTPS', OC_Request::serverProtocol() === 'https');
$tmpl->assign('enforceHTTPSEnabled', OC_Config::getValue( "forcessl", false));
+// If the current webroot is non-empty but the webroot from the config is,
+// and system cron is used, the URL generator fails to build valid URLs.
+$shouldSuggestOverwriteWebroot = $config->getAppValue('core', 'backgroundjobs_mode', 'ajax') === 'cron' &&
+ \OC::$WEBROOT && \OC::$WEBROOT !== '/' &&
+ !$config->getSystemValue('overwritewebroot', '');
+$tmpl->assign('suggestedOverwriteWebroot', ($shouldSuggestOverwriteWebroot) ? \OC::$WEBROOT : '');
+
$tmpl->assign('allowLinks', OC_Appconfig::getValue('core', 'shareapi_allow_links', 'yes'));
$tmpl->assign('enforceLinkPassword', \OCP\Util::isPublicLinkPasswordRequired());
$tmpl->assign('allowPublicUpload', OC_Appconfig::getValue('core', 'shareapi_allow_public_upload', 'yes'));
diff --git a/settings/templates/admin.php b/settings/templates/admin.php
index 03f3efd7aae..5426e10477e 100644
--- a/settings/templates/admin.php
+++ b/settings/templates/admin.php
@@ -1,8 +1,12 @@
-<?php /**
+<?php
+/**
* Copyright (c) 2011, Robin Appelman <icewind1991@gmail.com>
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*/
+/**
+ * @var array $_
+ */
$levels = array('Debug', 'Info', 'Warning', 'Error', 'Fatal');
$levelLabels = array(
$l->t( 'Everything (fatal issues, errors, warnings, info, debug)' ),
@@ -178,6 +182,19 @@ if (!$_['internetconnectionworking']) {
</div>
<?php
}
+
+if ($_['suggestedOverwriteWebroot']) {
+ ?>
+ <div class="section">
+ <h2><?php p($l->t('URL generation in notification emails'));?></h2>
+
+ <span class="connectionwarning">
+ <?php p($l->t('If your installation is not installed in the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the "overwritewebroot" option in your config.php file to the webroot path of your installation (Suggested: "%s")', $_['suggestedOverwriteWebroot'])); ?>
+ </span>
+
+ </div>
+<?php
+}
?>
<?php foreach ($_['forms'] as $form) {