Chatwoot/app/controllers/api/v1/accounts/conversations/messages_controller.rb

35 lines
833 B
Ruby
Raw Normal View History

class Api::V1::Accounts::Conversations::MessagesController < Api::V1::Accounts::Conversations::BaseController
def index
@messages = message_finder.perform
end
def create
user = Current.user || @resource
2020-07-21 06:45:24 +00:00
mb = Messages::MessageBuilder.new(user, @conversation, params)
@message = mb.perform
2020-07-21 06:45:24 +00:00
rescue StandardError => e
render_could_not_create_error(e.message)
end
def destroy
ActiveRecord::Base.transaction do
message.update!(content: I18n.t('conversations.messages.deleted'), deleted: true)
message.attachments.destroy_all
end
end
private
def message
@message ||= @conversation.messages.find(permitted_params[:id])
end
def message_finder
@message_finder ||= MessageFinder.new(@conversation, params)
end
def permitted_params
params.permit(:id)
end
end