From 92b5517229e4d56fc64b91898c9950bd670f893e Mon Sep 17 00:00:00 2001
From: Lukas Reschke <lukas@owncloud.com>
Date: Fri, 27 Feb 2015 17:38:59 +0100
Subject: [PATCH] Use custom attribute instead of the div identifier

Otherwise problems arrive when a username contains characters such as an `@`

Fixes https://github.com/owncloud/user_shibboleth/issues/38
---
 core/js/share.js                 | 4 ++--
 core/js/tests/specs/shareSpec.js | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/core/js/share.js b/core/js/share.js
index 692ce0b0ba..2370916e8b 100644
--- a/core/js/share.js
+++ b/core/js/share.js
@@ -666,7 +666,7 @@ OC.Share={
 			html += '<a href="#" class="unshare"><img class="svg" alt="'+t('core', 'Unshare')+'" title="'+t('core', 'Unshare')+'" src="'+OC.imagePath('core', 'actions/delete')+'"/></a>';
 			if (oc_config.enable_avatars === true) {
 				if (shareType === OC.Share.SHARE_TYPE_USER) {
-					html += '<div id="avatar-' + escapeHTML(shareWith) + '" class="avatar"></div>';
+					html += '<div data-user="' + escapeHTML(shareWith) + '" class="avatar"></div>';
 				} else {
 					html += '<div class="avatar" style="padding-right: 32px"></div>';
 				}
@@ -703,7 +703,7 @@ OC.Share={
 			html += '</li>';
 			html = $(html).appendTo('#shareWithList');
 			if (oc_config.enable_avatars === true && shareType === OC.Share.SHARE_TYPE_USER) {
-				$('#avatar-' + escapeHTML(shareWith)).avatar(escapeHTML(shareWith), 32);
+				$('.avatar[data-user="' + escapeHTML(shareWith) + '"]').avatar(escapeHTML(shareWith), 32);
 			}
 			// insert cruds button into last label element
 			var lastLabel = html.find('>label:last');
diff --git a/core/js/tests/specs/shareSpec.js b/core/js/tests/specs/shareSpec.js
index 1856fc27bc..bcdc1df3d3 100644
--- a/core/js/tests/specs/shareSpec.js
+++ b/core/js/tests/specs/shareSpec.js
@@ -459,7 +459,7 @@ describe('OC.Share tests', function() {
 
 					expect($('#shareWithList').children().length).toEqual(2);
 
-					expect($('#avatar-user1').length).toEqual(1);
+					expect($('.avatar[data-user="user1"]').length).toEqual(1);
 					expect(args.length).toEqual(2);
 					expect(args[0]).toEqual('user1');
 				});
-- 
GitLab