2020-03-07 22:50:29 +00:00
{% extends 'layout.html' %}
2021-02-28 00:44:58 +00:00
{% load i18n %}
2020-12-11 19:26:34 +00:00
{% load humanize %}
2020-12-13 02:25:04 +00:00
{% load bookwyrm_tags %}
2020-03-07 22:50:29 +00:00
{% block content %}
2020-09-29 21:45:04 +00:00
< div class = "block" >
2021-02-27 22:22:39 +00:00
< h1 class = "title" > {% trans "Notifications" %}< / h1 >
2020-03-07 22:50:29 +00:00
2021-01-12 19:07:29 +00:00
< form name = "clear" action = "/notifications" method = "POST" >
2020-03-17 01:05:49 +00:00
{% csrf_token %}
2021-02-27 22:22:39 +00:00
< button class = "button is-danger is-light" type = "submit" class = "secondary" > {% trans "Delete notifications" %}< / button >
2020-03-17 01:05:49 +00:00
< / form >
< / div >
2020-09-29 21:45:04 +00:00
< div class = "block" >
2020-03-17 01:05:49 +00:00
{% for notification in notifications %}
2021-01-06 23:53:09 +00:00
{% related_status notification as related_status %}
2020-12-11 19:26:34 +00:00
< div class = "notification {% if notification.id in unread %} is-primary{% endif %}" >
2021-01-06 23:53:09 +00:00
< div class = "columns is-mobile" >
< div class = "column is-narrow is-size-3 {% if notification.id in unread%}has-text-white{% else %}has-text-grey{% endif %}" >
{% if notification.notification_type == 'MENTION' %}
< span class = "icon icon-comment" > < / span >
2020-09-29 21:45:04 +00:00
{% elif notification.notification_type == 'REPLY' %}
2021-01-06 23:53:09 +00:00
< span class = "icon icon-comments" > < / span >
{% elif notification.notification_type == 'FOLLOW' or notification.notification_type == 'FOLLOW_REQUEST' %}
< span class = "icon icon-local" > < / span >
2020-09-29 21:45:04 +00:00
{% elif notification.notification_type == 'BOOST' %}
2021-01-06 23:53:09 +00:00
< span class = "icon icon-boost" > < / span >
{% elif notification.notification_type == 'FAVORITE' %}
< span class = "icon icon-heart" > < / span >
2021-01-07 02:02:46 +00:00
{% elif notification.notification_type == 'IMPORT' %}
< span class = "icon icon-list" > < / span >
2021-02-10 21:46:56 +00:00
{% elif notification.notification_type == 'ADD' %}
< span class = "icon icon-plus" > < / span >
2020-09-29 21:45:04 +00:00
{% endif %}
2021-01-06 23:53:09 +00:00
< / div >
< div class = "column" >
< div class = "block" >
< p >
{# DESCRIPTION #}
{% if notification.related_user %}
2021-02-10 21:46:56 +00:00
{% include 'snippets/avatar.html' with user=notification.related_user %}
{% include 'snippets/username.html' with user=notification.related_user %}
{% if notification.notification_type == 'FAVORITE' %}
2021-02-28 16:42:25 +00:00
{% blocktrans with preview_name=related_status|status_preview_name|safe related_path=related_status.local_path %}favorited your < a href = "{{ related_path }}" > {{ preview_name }}< / a > {% endblocktrans %}
2021-01-06 23:53:09 +00:00
2021-02-10 21:46:56 +00:00
{% elif notification.notification_type == 'MENTION' %}
2021-02-28 16:42:25 +00:00
{% blocktrans with preview_name=related_status|status_preview_name|safe related_path=related_status.local_path %}mentioned you in a < a href = "{{ related_path }}" > {{ preview_name }}< / a > {% endblocktrans %}
2021-01-06 23:53:09 +00:00
2021-02-10 21:46:56 +00:00
{% elif notification.notification_type == 'REPLY' %}
2021-02-28 16:42:25 +00:00
{% blocktrans with preview_name=related_status|status_preview_name|safe related_path=related_status.local_path parent_path=related_status.reply_parent.local_path %}< a href = "{{ related_path }}" > replied< / a > to your < a href = "{{ parent_path }}" > {{ preview_name }}< / a > {% endblocktrans %}
2021-02-28 02:48:10 +00:00
2021-02-10 21:46:56 +00:00
{% elif notification.notification_type == 'FOLLOW' %}
2021-02-28 02:48:10 +00:00
{% trans "followed you" %}
2021-02-10 21:46:56 +00:00
{% include 'snippets/follow_button.html' with user=notification.related_user %}
{% elif notification.notification_type == 'FOLLOW_REQUEST' %}
2021-02-28 02:48:10 +00:00
{% trans "sent you a follow request" %}
2021-02-10 21:46:56 +00:00
< div class = "row shrink" >
{% include 'snippets/follow_request_buttons.html' with user=notification.related_user %}
< / div >
{% elif notification.notification_type == 'BOOST' %}
2021-02-28 16:42:25 +00:00
{% blocktrans with preview_name=related_status|status_preview_name|safe related_path=related_status.local_path %}boosted your < a href = "{{ related_path }}" > {{ preview_name }}< / a > {% endblocktrans %}
2021-02-10 21:46:56 +00:00
{% elif notification.notification_type == 'ADD' %}
2021-02-28 02:48:10 +00:00
{% if notification.related_list_item.approved %}{% trans "added" %}{% else %}{% trans "suggested adding" %}{% endif %} {% include 'snippets/book_titleby.html' with book=notification.related_list_item.book %} to your list "< a href = "{{ notification.related_list_item.book_list.local_path }}{% if not notification.related_list_item.approved %}/curate{% endif %}" > {{ notification.related_list_item.book_list.name }}< / a > "
2021-02-10 21:46:56 +00:00
{% endif %}
{% elif notification.related_import %}
2021-02-28 02:48:10 +00:00
{% blocktrans with related_id=notification.related_import.id %} your < a href = "/import/{{ related_id }}" > import< / a > completed.{% endblocktrans %}
2021-01-06 23:53:09 +00:00
{% endif %}
< / p >
< / div >
{% if related_status %}
< div class = "block" >
{# PREVIEW #}
< div class = "notification py-2 {% if notification.id in unread %}is-primary is-light{% else %}has-background-white{% if notification.notification_type == 'REPLY' or notification.notification_type == 'MENTION' %} has-text-black{% else %}-bis has-text-grey-dark{% endif %}{% endif %}" >
< div class = "columns" >
< div class = "column" >
{% if related_status.content %}
< a href = "{{ related_status.local_path }}" > {{ related_status.content | safe | truncatewords_html:10 }}< / a >
{% elif related_status.quote %}
< a href = "{{ related_status.local_path }}" > {{ related_status.quote | safe | truncatewords_html:10 }}< / a >
{% elif related_status.rating %}
{% include 'snippets/stars.html' with rating=related_status.rating %}
{% endif %}
< / div >
< div class = "column is-narrow {% if notification.notification_type == 'REPLY' or notification.notification_type == 'MENTION' %}has-text-black{% else %}has-text-grey-dark{% endif %}" >
{{ related_status.published_date | post_date }}
{% include 'snippets/privacy-icons.html' with item=related_status %}
< / div >
< / div >
2020-12-11 19:26:34 +00:00
< / div >
< / div >
2021-01-06 23:53:09 +00:00
{% endif %}
2020-12-11 19:26:34 +00:00
< / div >
< / div >
2020-03-07 22:50:29 +00:00
< / div >
2020-03-17 01:05:49 +00:00
{% endfor %}
2020-12-11 19:26:34 +00:00
2020-03-17 01:05:49 +00:00
{% if not notifications %}
2021-02-27 22:22:39 +00:00
< p > {% trans "You're all caught up!" %}< / p >
2020-03-17 01:05:49 +00:00
{% endif %}
2020-03-07 22:50:29 +00:00
< / div >
{% endblock %}