mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-11-03 20:48:07 +00:00 
			
		
		
		
	Refactor create_activity method on Conversation model (#105)
This commit is contained in:
		
				
					committed by
					
						
						Pranav Raj S
					
				
			
			
				
	
			
			
			
						parent
						
							f2544816d4
						
					
				
				
					commit
					d1f06992b2
				
			@@ -121,23 +121,22 @@ class Conversation < ApplicationRecord
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def create_activity
 | 
			
		||||
    if status_changed? && Current.user #to prevent error when conversation is reopened by customer itself by sending a new message
 | 
			
		||||
      if resolved?
 | 
			
		||||
        content = "Conversation was marked resolved by #{Current.user.try(:name)}"
 | 
			
		||||
      else
 | 
			
		||||
        content = "Conversation was reopened by #{Current.user.try(:name)}"
 | 
			
		||||
      end
 | 
			
		||||
      self.messages.create(activity_message_params(content))
 | 
			
		||||
    return unless Current.user
 | 
			
		||||
 | 
			
		||||
    self.messages.create(activity_message_params(status_changed_message)) if status_changed?
 | 
			
		||||
    self.messages.create(activity_message_params(assignee_changed_message)) if assignee_id_changed?
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
    if assignee_id_changed? && Current.user
 | 
			
		||||
      if assignee_id
 | 
			
		||||
        content = "Assigned to #{assignee.name} by #{Current.user.try(:name)}"
 | 
			
		||||
      else
 | 
			
		||||
        content = "Conversation unassigned by #{Current.user.try(:name)}"
 | 
			
		||||
      end
 | 
			
		||||
      self.messages.create(activity_message_params(content))
 | 
			
		||||
  def status_changed_message
 | 
			
		||||
    return "Conversation was marked resolved by #{Current.user.try(:name)}" if resolved?
 | 
			
		||||
 | 
			
		||||
    "Conversation was reopened by #{Current.user.try(:name)}"
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def assignee_changed_message
 | 
			
		||||
    return "Assigned to #{assignee.name} by #{Current.user.try(:name)}" if assignee_id
 | 
			
		||||
 | 
			
		||||
    "Conversation unassigned by #{Current.user.try(:name)}"
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def activity_message_params content
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user