summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/comments/js/commentstabview.js19
-rw-r--r--apps/comments/tests/js/commentstabviewSpec.js10
2 files changed, 24 insertions, 5 deletions
diff --git a/apps/comments/js/commentstabview.js b/apps/comments/js/commentstabview.js
index 2c5e9414751..8faf98b35ab 100644
--- a/apps/comments/js/commentstabview.js
+++ b/apps/comments/js/commentstabview.js
@@ -44,7 +44,7 @@
'<li class="comment{{#if isUnread}} unread{{/if}}" data-id="{{id}}">' +
' <div class="authorRow">' +
' {{#if avatarEnabled}}' +
- ' <div class="avatar" data-username="{{actorId}}"> </div>' +
+ ' <div class="avatar" {{#if actorId}}data-username="{{actorId}}"{{/if}}> </div>' +
' {{/if}}' +
' <div class="author">{{actorDisplayName}}</div>' +
'{{#if isUserAuthor}}' +
@@ -115,11 +115,20 @@
if (!this._commentTemplate) {
this._commentTemplate = Handlebars.compile(COMMENT_TEMPLATE);
}
- return this._commentTemplate(_.extend({
+
+ params = _.extend({
avatarEnabled: this._avatarsEnabled,
editTooltip: t('comments', 'Edit comment'),
isUserAuthor: OC.getCurrentUser().uid === params.actorId
- }, params));
+ }, params);
+
+ if (params.actorType === 'deleted_users') {
+ // makes the avatar a X
+ params.actorId = null;
+ params.actorDisplayName = t('comments', '[Deleted user]');
+ }
+
+ return this._commentTemplate(params);
},
getLabel: function() {
@@ -149,7 +158,9 @@
this.$el.find('.comments').before(this.editCommentTemplate({}));
this.$el.find('.has-tooltip').tooltip();
this.$container = this.$el.find('ul.comments');
- this.$el.find('.avatar').avatar(OC.getCurrentUser().uid, 28);
+ if (this._avatarsEnabled) {
+ this.$el.find('.avatar').avatar(OC.getCurrentUser().uid, 28);
+ }
this.delegateEvents();
},
diff --git a/apps/comments/tests/js/commentstabviewSpec.js b/apps/comments/tests/js/commentstabviewSpec.js
index 4c3d38290ba..9e986899f7d 100644
--- a/apps/comments/tests/js/commentstabviewSpec.js
+++ b/apps/comments/tests/js/commentstabviewSpec.js
@@ -84,7 +84,6 @@ describe('OCA.Comments.CommentsTabView tests', function() {
});
it('renders comments', function() {
-
view.setFileInfo(fileInfoModel);
view.collection.set(testComments);
@@ -100,6 +99,15 @@ describe('OCA.Comments.CommentsTabView tests', function() {
expect($item.find('.date').text()).toEqual('5 minutes ago');
expect($item.find('.message').html()).toEqual('Second<br>Newline');
});
+
+ it('renders comments from deleted user differently', function() {
+ testComments[0].set('actorType', 'deleted_users', {silent: true});
+ view.collection.set(testComments);
+
+ var $item = view.$el.find('.comment[data-id=1]');
+ expect($item.find('.author').text()).toEqual('[Deleted user]');
+ expect($item.find('.avatar').attr('data-username')).not.toBeDefined();
+ });
});
describe('more comments', function() {
var hasMoreResultsStub;