From a8ded4578ae9f1156e57dac871076485986fd26c Mon Sep 17 00:00:00 2001 From: Silberengel Date: Tue, 21 Apr 2026 09:34:09 +0200 Subject: [PATCH] add user's profile pic to their profile page --- assets/styles/app.css | 46 ++++++++++++++++++++++++++++++++ templates/event/index.html.twig | 12 +++++++-- templates/pages/author.html.twig | 35 +++++++++++++----------- 3 files changed, 76 insertions(+), 17 deletions(-) diff --git a/assets/styles/app.css b/assets/styles/app.css index 07f0089..cf9cc2f 100644 --- a/assets/styles/app.css +++ b/assets/styles/app.css @@ -450,6 +450,52 @@ footer a { width: 100%; } +/* Author profile (/p/npub…): NIP-01 uses `picture`; large circular crop */ +.author-profile { + max-width: 40rem; + margin: 0 auto; + text-align: center; +} + +.author-profile__avatar { + position: relative; + width: 8rem; + height: 8rem; + margin: 0 auto 1rem; + border-radius: 50%; + overflow: hidden; + box-shadow: 0 0 0 2px var(--color-border); +} + +.author-profile__avatar > img { + position: absolute; + inset: 0; + width: 100%; + height: 100%; + max-width: none; + object-fit: cover; + object-position: center; + display: block; +} + +.author-profile__avatar--compact { + width: 4rem; + height: 4rem; + margin-bottom: 0.75rem; +} + +.author-profile__title { + margin-top: 0.25em; +} + +.author-profile__about { + text-align: left; +} + +.author-profile__divider { + margin: 2rem 0; +} + .badge { background-color: var(--color-primary); color: var(--color-bg); diff --git a/templates/event/index.html.twig b/templates/event/index.html.twig index e6f7cd3..c0c11e9 100644 --- a/templates/event/index.html.twig +++ b/templates/event/index.html.twig @@ -7,8 +7,16 @@
{% if author %} - {% if author.image is defined %} - {{ author.name }} + {% set author_pic = null %} + {% if author.picture is defined and author.picture %} + {% set author_pic = author.picture %} + {% elseif author.image is defined and author.image %} + {% set author_pic = author.image %} + {% endif %} + {% if author_pic %} +
+ +
{% endif %} diff --git a/templates/pages/author.html.twig b/templates/pages/author.html.twig index 13399f7..7ac348f 100644 --- a/templates/pages/author.html.twig +++ b/templates/pages/author.html.twig @@ -1,27 +1,32 @@ {% extends 'base.html.twig' %} {% block body %} - - {% if author.image is defined %} - {{ author.name }} + {% set author_pic = null %} + {% if author.picture is defined and author.picture %} + {% set author_pic = author.picture %} + {% elseif author.image is defined and author.image %} + {% set author_pic = author.image %} {% endif %} + {% set author_label = author.display_name|default(author.name|default(npub|shortenNpub)) %} -

-
- {% if author.about is defined %} - {{ author.about|markdown_to_html|mentionify|linkify }} +
+ {% if author_pic %} +
+ {{ author_label }} +
{% endif %} -
-
+

+
+ {% if author.about is defined %} + {{ author.about|markdown_to_html|mentionify|linkify }} + {% endif %} +
-{# {% if relays|length > 0 %}#} -{# {% for rel in relays %}#} -{#

{{ rel }}

#} -{# {% endfor %}#} -{# {% endif %}#} +
- + +
{% endblock %} {% block aside %}