I am setup via Docker and enabled the mailer with proper SMTP server, and mail is working properly however my emails are missing the Vikunja logo image and instead a broken image link shows.
When inspecting the element in Chrome, the related source shows this
<img src="https://ci6.googleusercontent.com/proxy/gqhbcngoRKTbtaZVI-bHC2t0qpZPDaLJOs-FH5lt7WtHLhjhpQlcXWsU13bEdBWsjYKrVzbCwYj5uUYONBqhiOZ3d34P=s0-d-e1-ft#https://todo.mydomain.com/images/logo-full.svg" style="height:75px" alt="Vikunja" class="CToWUd" jslog="138226; u014N:xr6bB; 53:W2ZhbHNlXQ..">
Note that the file it references at the end, the https://todo.mydomain.com/images/logo-full.svg is indeed live and active on that domain and I can browse to it directly.
I have some suggestions - I will post in GitHub issue and continue the conversation there.
I will also list my ideas here incase someone else comes across this thread.
- Although you want to avoid shipping a png just for this, that sounds like it would be the easiest solution and only add a few kb of space to the frontend. I would personally go this route if it was me.
- Allowed a user-uploaded image in their settings to be used for their e-mail notifications. Then they can upload whatever image or PNG they want. This would take more code for sure but each user could have their own customized image displayed.
- Allow users to set an env variable for “MAILER_LOGO_URL” that points to another URL of a file that they supply themselves. Lazy users could use imgur or something to host and link to a PNG they want to use.
- Host a emaillogo.png on https://vikunja.io/ that all the e-mails pull from. This will increase traffic on your server though from all users, including self-hosted that have e-mail reminders setup.
- Lastly, just remove the image from displaying on e-mails. Replace w/ just text, or remove that image block altogether? This would be the quickest/easiest way to avoid the broken image, but also the least exciting
I hope one of these helps!
I would vote for option 1 or option 3, as those would seem easiest to implement and still result in the look/feel you were originally going for.