takahe/templates/identity/view.html

127 lines
4.7 KiB
HTML

{% extends "base.html" %}
{% block title %}{{ identity }}{% endblock %}
{% block opengraph %}
{% include "_opengraph.html" with opengraph_local=identity.to_opengraph_dict %}
{% endblock %}
{% block extra_head %}
{% if identity.local %}
<link rel="alternate" type="application/rss+xml" title="RSS feed for {{ identity.name }}" href="rss/" />
{% endif %}
{% endblock %}
{% block body_class %}has-banner{% endblock %}
{% block content %}
<h1 class="identity">
{% if identity.local_image_url %}
<img src="{{ identity.local_image_url.relative }}" class="banner">
{% endif %}
<img src="{{ identity.local_icon_url.relative }}" class="icon">
{% if request.identity %}
{% if identity == request.identity %}
<form class="inline follow-profile">
<a class="button" href="{% url "settings_profile" %}">Edit Profile</a>
</form>
{% else %}
<form action="{{ identity.urls.action }}" method="POST" class="inline follow-profile {% if reverse_follow %}has-reverse{% endif %}">
{% csrf_token %}
{% if reverse_follow %}
<span class="reverse-follow">Follows You</span>
{% endif %}
{% if follow %}
<input type="hidden" name="action" value="unfollow">
<button class="destructive">
{% if follow.pending %}Follow Pending{% else %}Unfollow{% endif %}
</button>
{% else %}
<input type="hidden" name="action" value="follow">
<button>Follow</button>
{% endif %}
</form>
{% endif %}
{% endif %}
{{ identity.html_name_or_handle }}
<small>
@{{ identity.handle }}
<a title="Copy handle"
class="copy"
_="on click
writeText('@{{ identity.handle }}') into the navigator's clipboard
then add .copied
wait 2s
then remove .copied">
<i class="fa-solid fa-copy"></i>
</a>
</small>
</h1>
{% if identity.summary %}
<div class="bio">
{{ identity.safe_summary }}
</div>
{% endif %}
{% if identity.metadata %}
<div class="identity-metadata">
{% for entry in identity.safe_metadata %}
<div class="metadata-pair">
<span class="metadata-name">{{ entry.name }}</span>
<span class="metadata-value">{{ entry.value }}</span>
</div>
{% endfor %}
</div>
{% endif %}
{% if identity.local and identity.config_identity.visible_follows %}
<div class="view-options follows">
<a href="{{ identity.urls.view }}" {% if not follows_page %}class="selected"{% endif %}><strong>{{ post_count }}</strong> posts</a>
<a href="{{ identity.urls.following }}" {% if not inbound and follows_page %}class="selected"{% endif %}><strong>{{ following_count }}</strong> following</a>
<a href="{{ identity.urls.followers }}" {% if inbound and follows_page %}class="selected"{% endif %}><strong>{{ followers_count }}</strong> follower{{ followers_count|pluralize }}</a>
</div>
{% endif %}
{% if not identity.local %}
{% if identity.outdated and not identity.name %}
<p class="system-note">
The system is still fetching this profile. Refresh to see updates.
</p>
{% else %}
<p class="system-note">
This is a member of another server.
<a href="{{ identity.profile_uri|default:identity.actor_uri }}">See their original profile ➔</a>
</p>
{% endif %}
{% endif %}
{% block subcontent %}
{% for post in page_obj %}
{% include "activities/_post.html" %}
{% empty %}
<span class="empty">
{% if identity.local %}
No posts yet.
{% else %}
No posts have been received/retrieved by this server yet.
{% if identity.profile_uri %}
You might find historical posts at
<a href="{{ identity.profile_uri }}">their original profile ➔</a>
{% endif %}
{% endif %}
</span>
{% endfor %}
{% if page_obj.has_next %}
<div class="load-more"><a class="button" href=".?page={{ page_obj.next_page_number }}">Next Page</a></div>
{% endif %}
{% endblock %}
{% endblock %}