diff --git a/app/controllers/direct_messages_controller.rb b/app/controllers/direct_messages_controller.rb index 33996565c..d680559c3 100644 --- a/app/controllers/direct_messages_controller.rb +++ b/app/controllers/direct_messages_controller.rb @@ -1,8 +1,12 @@ class DirectMessagesController < ApplicationController + before_action :authenticate_user! load_and_authorize_resource :user, instance_name: :receiver - load_and_authorize_resource through: :receiver, through_association: :direct_messages_received + load_resource through: :receiver, through_association: :direct_messages_received + authorize_resource except: :new def new + authorize! :new, @direct_message, message: t("users.direct_messages.new.verified_only", + verify_account: helpers.link_to_verify_account) end def create diff --git a/app/models/abilities/everyone.rb b/app/models/abilities/everyone.rb index 252ce3896..fc77948bc 100644 --- a/app/models/abilities/everyone.rb +++ b/app/models/abilities/everyone.rb @@ -18,7 +18,6 @@ module Abilities can :read_results, Budget, id: Budget.finished.results_enabled.ids can :read_stats, Budget, id: Budget.valuating_or_later.stats_enabled.ids can :read_executions, Budget, phase: "finished" - can :new, DirectMessage can [:read, :debate, :draft_publication, :allegations, :result_publication, :proposals, :milestones], Legislation::Process, published: true can :summary, Legislation::Process, diff --git a/app/views/direct_messages/new.html.erb b/app/views/direct_messages/new.html.erb index 1343f6363..a945a03a5 100644 --- a/app/views/direct_messages/new.html.erb +++ b/app/views/direct_messages/new.html.erb @@ -6,21 +6,7 @@ <%= t("users.direct_messages.new.title", receiver: @receiver.name) %> - <% if not current_user %> -
- <%= sanitize(t("users.login_to_continue", - signin: link_to_signin, - signup: link_to_signup)) %> -
-- <%= t("users.direct_messages.new.direct_messages_bloqued") %> -
-- <%= sanitize(t("users.direct_messages.new.verified_only", - verify_account: link_to_verify_account)) %> + <%= t("users.direct_messages.new.direct_messages_bloqued") %>