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) + ''