bsky-app/bskyweb/templates/profile.html
bnewbold d624b7cf58
bskyweb: iterate on HTML card metadata (#609)
Probably still not perfect, but better.

- don't user avatar image. use banner for profile and post img, or
  nothing
- most twitter metadata fields were redundant; twitter will parse out
  opengraph ("og:"), so don't duplicate those
- add regular HTML description (for google, etc)
- include URI
- actually include text
2023-05-11 10:41:47 -05:00

48 lines
1.6 KiB
HTML

{% extends "base.html" %}
{% block head_title %}
{%- if profileView -%}
@{{ profileView.Handle }} on Bluesky
{%- else -%}
Bluesky
{%- endif -%}
{% endblock %}
{% block html_head_extra -%}
{%- if profileView -%}
<meta property="og:type" content="website">
<meta property="og:site_name" content="Bluesky Social">
{%- if requestURI %}
<meta property="og:url" content="{{ requestURI }}">
{% endif -%}
{%- if profileView.DisplayName %}
<meta property="og:title" content="{{ profileView.DisplayName }} (@{{ profileView.Handle }})">
{% else %}
<meta property="og:title" content="{{ profileView.Handle }}">
{% endif -%}
{%- if profileView.Description %}
<meta name="description" content="{{ profileView.Description }}">
<meta property="og:description" content="{{ profileView.Description }}">
{% endif -%}
{%- if profileView.Banner %}
<meta property="og:image" content="{{ profileView.Banner }}">
<meta name="twitter:card" content="summary_large_image">
{%- elif profileView.Avatar -%}
{# Don't use avatar image in cards; usually looks bad #}
<meta name="twitter:card" content="summary">
{% endif %}
<meta name="twitter:label1" content="Account DID">
<meta name="twitter:value1" content="{{ profileView.Did }}">
<meta name="twitter:site" content="@bluesky">
{% endif -%}
{%- endblock %}
{% block noscript_extra -%}
<div id="bsky_profile_summary">
<h3>Profile</h3>
<p id="bsky_display_name">{{ profileView.DisplayName }}</p>
<p id="bsky_handle">{{ profileView.Handle }}</p>
<p id="bsky_did">{{ profileView.Did }}</p>
<p id="bsky_profile_description">{{ profileView.Description }}</p>
</div>
{%- endblock %}