mirror of
https://github.com/jointakahe/takahe.git
synced 2024-11-25 00:30:59 +00:00
Add follow times
This commit is contained in:
parent
be377653fe
commit
c588567c86
3 changed files with 26 additions and 6 deletions
|
@ -33,21 +33,33 @@ class Follows(ListView):
|
|||
state__in=FollowStates.group_active(),
|
||||
).order_by("-created")
|
||||
|
||||
def follows_to_identities(self, follows, attr):
|
||||
"""
|
||||
Turns a list of follows into a list of identities (ith the
|
||||
follow creation date preserved on them.
|
||||
"""
|
||||
result = []
|
||||
for follow in follows:
|
||||
identity = getattr(follow, attr)
|
||||
identity.follow_date = follow.state_changed
|
||||
result.append(identity)
|
||||
return result
|
||||
|
||||
def get_context_data(self):
|
||||
context = super().get_context_data()
|
||||
# Go work out if any of these people also follow us/are followed
|
||||
if self.inbound:
|
||||
context["page_obj"].object_list = [
|
||||
follow.source for follow in context["page_obj"]
|
||||
]
|
||||
context["page_obj"].object_list = self.follows_to_identities(
|
||||
context["page_obj"], "source"
|
||||
)
|
||||
identity_ids = [identity.id for identity in context["page_obj"]]
|
||||
context["outbound_ids"] = Follow.objects.filter(
|
||||
source=self.request.identity, target_id__in=identity_ids
|
||||
).values_list("target_id", flat=True)
|
||||
else:
|
||||
context["page_obj"].object_list = [
|
||||
follow.target for follow in context["page_obj"]
|
||||
]
|
||||
context["page_obj"].object_list = self.follows_to_identities(
|
||||
context["page_obj"], "target"
|
||||
)
|
||||
identity_ids = [identity.id for identity in context["page_obj"]]
|
||||
context["inbound_ids"] = Follow.objects.filter(
|
||||
target=self.request.identity, source_id__in=identity_ids
|
||||
|
|
|
@ -396,6 +396,12 @@ body.no-sidebar .right-column {
|
|||
background: var(--color-delete);
|
||||
}
|
||||
|
||||
.icon-menu .option time {
|
||||
float: right;
|
||||
color: var(--color-text-duller);
|
||||
margin: 14px 0 0 0;
|
||||
}
|
||||
|
||||
.handle {
|
||||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{% extends "base.html" %}
|
||||
{% load activity_tags %}
|
||||
|
||||
{% block subtitle %}Follows{% endblock %}
|
||||
|
||||
|
@ -27,6 +28,7 @@
|
|||
{% if identity.id in inbound_ids %}
|
||||
<span class="pill">Follows You</span>
|
||||
{% endif %}
|
||||
<time>{{ identity.follow_date | timedeltashort }} ago</time>
|
||||
</a>
|
||||
{% empty %}
|
||||
<p class="option empty">You have no follows.</p>
|
||||
|
|
Loading…
Reference in a new issue