diff options
author | Morris Jobke <hey@morrisjobke.de> | 2015-01-05 11:50:05 +0100 |
---|---|---|
committer | Morris Jobke <hey@morrisjobke.de> | 2015-01-05 11:50:05 +0100 |
commit | 28c8f5a0f9c79229a24af3f8a95bef0f8f43da09 (patch) | |
tree | a005f14cfc3846e2cd43aa1826bc683c583eaddb | |
parent | a0023974e3c1127cfcc9b2f42aecc5825329e3e9 (diff) | |
download | nextcloud-server-28c8f5a0f9c79229a24af3f8a95bef0f8f43da09.tar.gz nextcloud-server-28c8f5a0f9c79229a24af3f8a95bef0f8f43da09.zip |
Check for version before mounting a public link
* ownCloud 7.0.0 is needed - version of merge of server <-> server
sharing - https://github.com/owncloud/core/pull/8399
* adjust error message
-rw-r--r-- | apps/files_sharing/ajax/testremote.php | 3 | ||||
-rw-r--r-- | apps/files_sharing/js/public.js | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/apps/files_sharing/ajax/testremote.php b/apps/files_sharing/ajax/testremote.php index 89581794698..08149bf7ecc 100644 --- a/apps/files_sharing/ajax/testremote.php +++ b/apps/files_sharing/ajax/testremote.php @@ -14,7 +14,8 @@ function testUrl($url) { try { $result = file_get_contents($url); $data = json_decode($result); - return is_object($data) and !empty($data->version); + // public link mount is only supported in ownCloud 7+ + return is_object($data) and !empty($data->version) and version_compare($data->version, '7.0.0', '>='); } catch (Exception $e) { return false; } diff --git a/apps/files_sharing/js/public.js b/apps/files_sharing/js/public.js index 861da2065ea..02ecf56fa09 100644 --- a/apps/files_sharing/js/public.js +++ b/apps/files_sharing/js/public.js @@ -217,7 +217,7 @@ OCA.Sharing.PublicApp = { // this check needs to happen on the server due to the Content Security Policy directive $.get(OC.generateUrl('apps/files_sharing/testremote'), {remote: remote}).then(function (protocol) { if (protocol !== 'http' && protocol !== 'https') { - OC.dialogs.alert(t('files_sharing', 'No ownCloud installation found at {remote}', {remote: remote}), + OC.dialogs.alert(t('files_sharing', 'No ownCloud installation (7 or higher) found at {remote}', {remote: remote}), t('files_sharing', 'Invalid ownCloud url')); } else { OC.redirect(protocol + '://' + url); |