Skip to content
Snippets Groups Projects
Commit b02315be authored by Tim Zallmann's avatar Tim Zallmann Committed by Yorick Peterse
Browse files

Merge branch 'security-11-7-55320-stored-xss-in-user-status' into 'security-11-7'

[11.7] Use sanitized user status message in user popover

See merge request gitlab/gitlabhq!2839

(cherry picked from commit e5d355eb04e165fa1b9ccce1253b909a785d4bed)

21e70bba Use sanitized user status message for user popover
parent 3424476b
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -28,10 +28,10 @@ export default {
},
computed: {
statusHtml() {
if (this.user.status.emoji && this.user.status.message) {
return `${glEmojiTag(this.user.status.emoji)} ${this.user.status.message}`;
} else if (this.user.status.message) {
return this.user.status.message;
if (this.user.status.emoji && this.user.status.message_html) {
return `${glEmojiTag(this.user.status.emoji)} ${this.user.status.message_html}`;
} else if (this.user.status.message_html) {
return this.user.status.message_html;
}
return '';
},
Loading
Loading
---
title: Use sanitized user status message for user popover
merge_request:
author:
type: security
Loading
Loading
@@ -122,7 +122,7 @@ describe('User Popover Component', () => {
describe('status data', () => {
it('should show only message', () => {
const testProps = Object.assign({}, DEFAULT_PROPS);
testProps.user.status = { message: 'Hello World' };
testProps.user.status = { message_html: 'Hello World' };
 
vm = mountComponent(UserPopover, {
...DEFAULT_PROPS,
Loading
Loading
@@ -134,12 +134,12 @@ describe('User Popover Component', () => {
 
it('should show message and emoji', () => {
const testProps = Object.assign({}, DEFAULT_PROPS);
testProps.user.status = { emoji: 'basketball_player', message: 'Hello World' };
testProps.user.status = { emoji: 'basketball_player', message_html: 'Hello World' };
 
vm = mountComponent(UserPopover, {
...DEFAULT_PROPS,
target: document.querySelector('.js-user-link'),
status: { emoji: 'basketball_player', message: 'Hello World' },
status: { emoji: 'basketball_player', message_html: 'Hello World' },
});
 
expect(vm.$el.textContent).toContain('Hello World');
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment