mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-10-30 18:47:51 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			42 lines
		
	
	
		
			1008 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1008 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| class Api::V1::Accounts::CannedResponsesController < Api::V1::Accounts::BaseController
 | |
|   before_action :fetch_canned_response, only: [:update, :destroy]
 | |
| 
 | |
|   def index
 | |
|     render json: canned_responses
 | |
|   end
 | |
| 
 | |
|   def create
 | |
|     @canned_response = Current.account.canned_responses.new(canned_response_params)
 | |
|     @canned_response.save!
 | |
|     render json: @canned_response
 | |
|   end
 | |
| 
 | |
|   def update
 | |
|     @canned_response.update!(canned_response_params)
 | |
|     render json: @canned_response
 | |
|   end
 | |
| 
 | |
|   def destroy
 | |
|     @canned_response.destroy!
 | |
|     head :ok
 | |
|   end
 | |
| 
 | |
|   private
 | |
| 
 | |
|   def fetch_canned_response
 | |
|     @canned_response = Current.account.canned_responses.find(params[:id])
 | |
|   end
 | |
| 
 | |
|   def canned_response_params
 | |
|     params.require(:canned_response).permit(:short_code, :content)
 | |
|   end
 | |
| 
 | |
|   def canned_responses
 | |
|     if params[:search]
 | |
|       Current.account.canned_responses.where('short_code ILIKE :search OR content ILIKE :search', search: "%#{params[:search]}%")
 | |
|     else
 | |
|       Current.account.canned_responses
 | |
|     end
 | |
|   end
 | |
| end
 | 
