Implandação da customização das permissões dos usuarios e das notificaçoes
This commit is contained in:
@@ -93,7 +93,25 @@ module Notificacao
|
||||
# string — o custo por destinatário é irrelevante perto do envio em si.
|
||||
def dados_para(contato, user)
|
||||
nome = contato&.primeiro_nome.presence || user&.nome.to_s.split.first
|
||||
@dados.merge('contato' => nome.to_s)
|
||||
dados_completos.merge('contato' => nome.to_s)
|
||||
end
|
||||
|
||||
# O contexto do gatilho + as variáveis que o TEMPLATE usa e o gatilho não
|
||||
# conhece ({{entregas_mes}}, {{telefone_suporte}}, {{hora}}…).
|
||||
#
|
||||
# Resolvido UMA vez por disparo, não por destinatário: `{{entregas_mes}}` é
|
||||
# uma query, e o valor é o mesmo para todo mundo — só `{{contato}}` muda.
|
||||
def dados_completos
|
||||
@dados_completos ||= ResolvedorVariaveis.completar(textos_do_disparo, @dados)
|
||||
end
|
||||
|
||||
# Tudo que será interpolado: os blocos dos dois templates (o evento pode ter
|
||||
# WhatsApp e e-mail com textos diferentes), o assunto e o corpo padrão.
|
||||
def textos_do_disparo
|
||||
[@assunto, @corpo,
|
||||
@evento.template_utilizavel('whatsapp')&.blocos,
|
||||
@evento.template_utilizavel('email')&.blocos,
|
||||
@evento.template_utilizavel('email')&.assunto]
|
||||
end
|
||||
|
||||
# O template do editor vence; sem template utilizável, cai no texto que o
|
||||
|
||||
Reference in New Issue
Block a user