# app/policies/contato_policy.rb # # Contatos e grupos (GrupoContatoPolicy herda esta) — quem RECEBE as mensagens. class ContatoPolicy < ApplicationPolicy def index? = pode?('notificacao.contatos') def show? = index? def create? = pode?('notificacao.contatos_gerenciar') def new? = create? def update? = create? def edit? = update? # Excluir destinatário é separado de editar: some do histórico de quem recebe. def destroy? = pode?('notificacao.contatos_excluir') # Grupos do WhatsApp carregados sob demanda pelo form. def grupos_whatsapp? = create? class Scope < Scope def resolve user.pode?('notificacao.contatos') ? scope.all : scope.none end end end