diff options
author | Vincent Petry <pvince81@owncloud.com> | 2014-08-21 13:49:02 +0200 |
---|---|---|
committer | Vincent Petry <pvince81@owncloud.com> | 2014-08-21 13:49:02 +0200 |
commit | 98d06094e70d657907b139431624740acde3bbd9 (patch) | |
tree | 7c65945f6f21d5a967d6a8e0787d2ba31cb60104 /core/js | |
parent | 36c88e28307da569fea7a86d18ad559aa0b3f868 (diff) | |
download | nextcloud-server-98d06094e70d657907b139431624740acde3bbd9.tar.gz nextcloud-server-98d06094e70d657907b139431624740acde3bbd9.zip |
Fix share dropdown when links are not allowed
When links are not allowed, the email field does not exist and
autocomplete returns null. This causes Javascript errors.
The fix prevents entering the bogus block when links aren't allowed, as
it doesn't make sense to enter it in such cases anyway.
Diffstat (limited to 'core/js')
-rw-r--r-- | core/js/share.js | 2 | ||||
-rw-r--r-- | core/js/tests/specs/shareSpec.js | 26 |
2 files changed, 17 insertions, 11 deletions
diff --git a/core/js/share.js b/core/js/share.js index 99a767b47f2..f1652370d35 100644 --- a/core/js/share.js +++ b/core/js/share.js @@ -503,7 +503,7 @@ OC.Share={ .append( insert ) .appendTo( ul ); }; - if (link) { + if (link && linksAllowed) { $('#email').autocomplete({ minLength: 1, source: function (search, response) { diff --git a/core/js/tests/specs/shareSpec.js b/core/js/tests/specs/shareSpec.js index 1fd36dfff04..06c4b98df2a 100644 --- a/core/js/tests/specs/shareSpec.js +++ b/core/js/tests/specs/shareSpec.js @@ -44,6 +44,12 @@ describe('OC.Share tests', function() { autocompleteStub = sinon.stub($.fn, 'autocomplete', function() { // dummy container with the expected attributes + if (!$(this).length) { + // simulate the real autocomplete that returns + // nothing at all when no element is specified + // (and potentially break stuff) + return null; + } var $el = $('<div></div>').data('ui-autocomplete', {}); return $el; }); @@ -60,7 +66,7 @@ describe('OC.Share tests', function() { 'file', 123, $container, - 'http://localhost/dummylink', + true, 31, 'shared_file_name.txt' ); @@ -73,7 +79,7 @@ describe('OC.Share tests', function() { 'file', 123, $container, - 'http://localhost/dummylink', + true, 31, 'shared_file_name.txt' ); @@ -92,7 +98,7 @@ describe('OC.Share tests', function() { 'file', 123, $container, - 'http://localhost/dummylink', + true, 31, 'shared_file_name.txt' ); @@ -104,7 +110,7 @@ describe('OC.Share tests', function() { 'file', 123, $container, - 'http://localhost/dummylink', + true, 31, 'shared_file_name.txt' ); @@ -138,7 +144,7 @@ describe('OC.Share tests', function() { 'file', 123, $container, - 'http://localhost/dummylink', + true, 31, 'folder' ); @@ -176,7 +182,7 @@ describe('OC.Share tests', function() { 'file', 456, // another file $container, - 'http://localhost/dummylink', + true, 31, 'folder' ); @@ -230,7 +236,7 @@ describe('OC.Share tests', function() { 'folder', 123, $container, - 'http://localhost/dummylink', + true, 31, 'folder' ); @@ -245,7 +251,7 @@ describe('OC.Share tests', function() { 'file', 456, $container, - 'http://localhost/dummylink', + true, 31, 'file_in_folder.txt' ); @@ -266,7 +272,7 @@ describe('OC.Share tests', function() { 'file', 123, $container, - 'http://localhost/dummylink', + true, 31, 'folder' ); @@ -407,7 +413,7 @@ describe('OC.Share tests', function() { 'file', 123, $container, - 'http://localhost/dummylink', + true, 31, 'shared_file_name.txt' ); |