mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-04 09:44:21 +00:00 
			
		
		
		
	Allow kbd tags (#9245)
* Allow kbd tags Signed-off-by: jolheiser <john.olheiser@gmail.com> * Add test Signed-off-by: jolheiser <john.olheiser@gmail.com>
This commit is contained in:
		
				
					committed by
					
						
						techknowlogick
					
				
			
			
				
	
			
			
			
						parent
						
							bdbdd6608f
						
					
				
				
					commit
					9a33adcdd3
				
			@@ -47,6 +47,9 @@ func ReplaceSanitizer() {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	// Allow keyword markup
 | 
						// Allow keyword markup
 | 
				
			||||||
	sanitizer.policy.AllowAttrs("class").Matching(regexp.MustCompile(`^` + keywordClass + `$`)).OnElements("span")
 | 
						sanitizer.policy.AllowAttrs("class").Matching(regexp.MustCompile(`^` + keywordClass + `$`)).OnElements("span")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Allow <kbd> tags for keyboard shortcut styling
 | 
				
			||||||
 | 
						sanitizer.policy.AllowElements("kbd")
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Sanitize takes a string that contains a HTML fragment or document and applies policy whitelist.
 | 
					// Sanitize takes a string that contains a HTML fragment or document and applies policy whitelist.
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -35,6 +35,9 @@ func Test_Sanitizer(t *testing.T) {
 | 
				
			|||||||
<code class="language-lol ui container input massive basic segment">Hello there! Something has gone wrong, we are working on it.</code>
 | 
					<code class="language-lol ui container input massive basic segment">Hello there! Something has gone wrong, we are working on it.</code>
 | 
				
			||||||
<code class="language-lol ui container input huge basic segment">In the meantime, play a game with us at <a href="http://example.com/">example.com</a>.</code>
 | 
					<code class="language-lol ui container input huge basic segment">In the meantime, play a game with us at <a href="http://example.com/">example.com</a>.</code>
 | 
				
			||||||
</code>`, "<code>\n<code>\u00a0</code>\n<img src=\"https://try.gogs.io/img/favicon.png\" width=\"200\" height=\"200\">\n<code>Hello there! Something has gone wrong, we are working on it.</code>\n<code>In the meantime, play a game with us at\u00a0<a href=\"http://example.com/\" rel=\"nofollow\">example.com</a>.</code>\n</code>",
 | 
					</code>`, "<code>\n<code>\u00a0</code>\n<img src=\"https://try.gogs.io/img/favicon.png\" width=\"200\" height=\"200\">\n<code>Hello there! Something has gone wrong, we are working on it.</code>\n<code>In the meantime, play a game with us at\u00a0<a href=\"http://example.com/\" rel=\"nofollow\">example.com</a>.</code>\n</code>",
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// <kbd> tags
 | 
				
			||||||
 | 
							`<kbd>Ctrl + C</kbd>`, `<kbd>Ctrl + C</kbd>`,
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for i := 0; i < len(testCases); i += 2 {
 | 
						for i := 0; i < len(testCases); i += 2 {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user