Merge pull request #8187 from owncloud/escape-more-character
Also encode > and '
This commit is contained in:
commit
27c8c87e94
|
@ -154,7 +154,7 @@ function n(app, text_singular, text_plural, count, vars) {
|
|||
* @return {string} Sanitized string
|
||||
*/
|
||||
function escapeHTML(s) {
|
||||
return s.toString().split('&').join('&').split('<').join('<').split('"').join('"');
|
||||
return s.toString().split('&').join('&').split('<').join('<').split('>').join('>').split('"').join('"').split('\'').join(''');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -124,6 +124,17 @@ describe('Core base tests', function() {
|
|||
expect(OC.dirname('/subdir/')).toEqual('/subdir');
|
||||
});
|
||||
});
|
||||
describe('escapeHTML', function() {
|
||||
it('Returns nothing if no string was given', function() {
|
||||
expect(escapeHTML('')).toEqual('');
|
||||
});
|
||||
it('Returns a sanitized string if a string containing HTML is given', function() {
|
||||
expect(escapeHTML('There needs to be a <script>alert(\"Unit\" + \'test\')</script> for it!')).toEqual('There needs to be a <script>alert("Unit" + 'test')</script> for it!');
|
||||
});
|
||||
it('Returns the string without modification if no potentially dangerous character is passed.', function() {
|
||||
expect(escapeHTML('This is a good string without HTML.')).toEqual('This is a good string without HTML.');
|
||||
});
|
||||
});
|
||||
describe('Link functions', function() {
|
||||
var TESTAPP = 'testapp';
|
||||
var TESTAPP_ROOT = OC.webroot + '/appsx/testapp';
|
||||
|
|
Loading…
Reference in New Issue