diff --git a/apps/files_sharing/src/share.js b/apps/files_sharing/src/share.js index 79dfe4a174..efd1be00ab 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 = '' var hidden = '' + message + ' ' + escapeHTML(shareWithDisplayName) + ' ' 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 = '' html += '' + escapeHTML(userName) + ''