summaryrefslogtreecommitdiffstats
path: root/apps/files_sharing/src
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2020-03-03 17:19:34 +0100
committerJulius Härtl <jus@bitgrid.net>2020-03-03 18:19:46 +0100
commitd612aeec2d7990463ae396c8690d1cd91f809531 (patch)
tree774f65bbabf4e4d6bb71fcfa53ce4aada4e7152e /apps/files_sharing/src
parent6ea1aef0315fa2812ad80e0af8456531e19ea642 (diff)
downloadnextcloud-server-d612aeec2d7990463ae396c8690d1cd91f809531.tar.gz
nextcloud-server-d612aeec2d7990463ae396c8690d1cd91f809531.zip
Fix regex to not take email uids as federated ids
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'apps/files_sharing/src')
-rw-r--r--apps/files_sharing/src/share.js41
1 files changed, 20 insertions, 21 deletions
diff --git a/apps/files_sharing/src/share.js b/apps/files_sharing/src/share.js
index 79dfe4a174f..efd1be00ab7 100644
--- a/apps/files_sharing/src/share.js
+++ b/apps/files_sharing/src/share.js
@@ -25,13 +25,14 @@
* @namespace
*/
OCA.Sharing.Util = {
-
- /**
- * Regular expression for splitting parts of remote share owners:
- * "user@example.com/path/to/owncloud"
- * "user@anotherexample.com@example.com/path/to/owncloud
- */
- _REMOTE_OWNER_REGEXP: new RegExp('^([^@]*)@(([^@]*)@)?([^/]*)([/](.*)?)?$'),
+
+ /**
+ * Regular expression for splitting parts of remote share owners:
+ * "user@example.com/"
+ * "user@example.com/path/to/owncloud"
+ * "user@anotherexample.com@example.com/path/to/owncloud
+ */
+ _REMOTE_OWNER_REGEXP: new RegExp('^(([^@]*)@(([^@^/^\\s]*)@)?)([^[\\s/]*)([/](.*))?$'),
/**
* Initialize the sharing plugin.
@@ -350,26 +351,24 @@
*/
_formatRemoteShare: function(shareWith, shareWithDisplayName, message) {
var parts = OCA.Sharing.Util._REMOTE_OWNER_REGEXP.exec(shareWith)
- if (!parts) {
+ if (!parts || !parts[6]) {
// display avatar of the user
var avatar = '<span class="avatar" data-username="' + escapeHTML(shareWith) + '" title="' + message + ' ' + escapeHTML(shareWithDisplayName) + '"></span>'
var hidden = '<span class="hidden-visually">' + message + ' ' + escapeHTML(shareWithDisplayName) + '</span> '
return avatar + hidden
}
- var userName = parts[1]
- var userDomain = parts[3]
- var server = parts[4]
- var tooltip = message + ' ' + userName
- if (userDomain) {
- tooltip += '@' + userDomain
- }
- if (server) {
- if (!userDomain) {
- userDomain = '…'
- }
- tooltip += '@' + server
- }
+ var userName = parts[2]
+ var userDomain = parts[4]
+ var server = parts[5]
+
+ var tooltip = message + ' ' + userName
+ if (userDomain) {
+ tooltip += '@' + userDomain
+ }
+ if (server) {
+ tooltip += '@' + server
+ }
var html = '<span class="remoteAddress" title="' + escapeHTML(tooltip) + '">'
html += '<span class="username">' + escapeHTML(userName) + '</span>'