mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-11-04 04:57:51 +00:00 
			
		
		
		
	Fixes notification display issues when user or team names contain emojis
and special characters. Previously, mention notifications would show
URL-encoded characters instead of properly formatted names with emojis.
  **Before:**
Notification: "John Doe: Hey @%F0%9F%91%8D%20customer%20support please
check this"
  **After:**
  Notification: "John Doe: Hey @👍 customer support please check this"
		
	
		
			
				
	
	
		
			17 lines
		
	
	
		
			675 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			17 lines
		
	
	
		
			675 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
module MessageFormatHelper
 | 
						|
  def transform_user_mention_content(message_content)
 | 
						|
    # attachment message without content, message_content is nil
 | 
						|
    return '' unless message_content.presence
 | 
						|
 | 
						|
    # Use CommonMarker to convert markdown to plain text for notifications
 | 
						|
    # This handles all markdown formatting (links, bold, italic, etc.) not just mentions
 | 
						|
    # Converts: [@👍 customer support](mention://team/1/%F0%9F%91%8D%20customer%20support)
 | 
						|
    # To: @👍 customer support
 | 
						|
    CommonMarker.render_doc(message_content).to_plaintext.strip
 | 
						|
  end
 | 
						|
 | 
						|
  def render_message_content(message_content)
 | 
						|
    ChatwootMarkdownRenderer.new(message_content).render_message
 | 
						|
  end
 | 
						|
end
 |