defmodule Api.UserEmailMailer do import Swoosh.Email alias Api.Repo def encrypt_json(json) do query = "select encrypt('#{json}'::bytea, '1nf0rm3', 'aes')::text" token = Repo.query!(query).rows |> hd() |> hd() Base.encode64(token) end def send_email(studydata) do Envar.load(".env") Envar.require_env_file(".env") json = studydata.json json = Jason.encode!(json) encrypted_hash = encrypt_json(json) lLink = "https://estudio.informemedico.com.ar/#/#{studydata.idsite}/#{encrypted_hash}" body = """

A continuación podrá acceder al informe del estudio que se realizó el #{studydata.lStudyDate} en #{studydata.lSiteName}.

Para visualizarlo ingrese aquí o copie el siguiente link en su navegador: (requiere Google Chrome, Firefox, Internet Explorer 9 o superior).


#{lLink}

Atentamente,
#{studydata.name}

Mensaje enviado por: #{studydata.fromEmail}

""" email = new() |> to({studydata.name, studydata.email}) |> from({Envar.get("FROM"), Envar.get("SMTP_USER")}) |> subject("Mensaje de Paciente: #{studydata.name}") |> html_body(body) email end end