Simplify direct messages resource loading
This commit is contained in:
@@ -1,16 +1,13 @@
|
|||||||
class DirectMessagesController < ApplicationController
|
class DirectMessagesController < ApplicationController
|
||||||
load_and_authorize_resource
|
load_and_authorize_resource :user, instance_name: :receiver
|
||||||
|
load_and_authorize_resource through: :receiver, through_association: :direct_messages_received
|
||||||
|
|
||||||
def new
|
def new
|
||||||
@receiver = User.find(params[:user_id])
|
|
||||||
@direct_message = DirectMessage.new(receiver: @receiver)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def create
|
def create
|
||||||
@sender = current_user
|
@direct_message.sender = current_user
|
||||||
@receiver = User.find(params[:user_id])
|
|
||||||
|
|
||||||
@direct_message = DirectMessage.new(parsed_params)
|
|
||||||
if @direct_message.save
|
if @direct_message.save
|
||||||
Mailer.direct_message_for_receiver(@direct_message).deliver_later
|
Mailer.direct_message_for_receiver(@direct_message).deliver_later
|
||||||
Mailer.direct_message_for_sender(@direct_message).deliver_later
|
Mailer.direct_message_for_sender(@direct_message).deliver_later
|
||||||
@@ -23,7 +20,6 @@ class DirectMessagesController < ApplicationController
|
|||||||
end
|
end
|
||||||
|
|
||||||
def show
|
def show
|
||||||
@direct_message = DirectMessage.find(params[:id])
|
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
@@ -35,8 +31,4 @@ class DirectMessagesController < ApplicationController
|
|||||||
def allowed_params
|
def allowed_params
|
||||||
[:title, :body]
|
[:title, :body]
|
||||||
end
|
end
|
||||||
|
|
||||||
def parsed_params
|
|
||||||
direct_message_params.merge(sender: @sender, receiver: @receiver)
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user