FIx HTML issues found by djLint (#409)

This commit is contained in:
TAKAHASHI Shuuji 2023-01-15 02:32:48 +09:00 committed by GitHub
parent 9876b81f66
commit 3679448cdf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
28 changed files with 83 additions and 80 deletions

View File

@ -238,7 +238,7 @@ urlpatterns = [
# Identity selection # Identity selection
path("@<handle>/activate/", identity.ActivateIdentity.as_view()), path("@<handle>/activate/", identity.ActivateIdentity.as_view()),
path("identity/select/", identity.SelectIdentity.as_view(), name="identity_select"), path("identity/select/", identity.SelectIdentity.as_view(), name="identity_select"),
path("identity/create/", identity.CreateIdentity.as_view()), path("identity/create/", identity.CreateIdentity.as_view(), name="identity_create"),
# Flat pages # Flat pages
path("about/", core.About.as_view(), name="about"), path("about/", core.About.as_view(), name="about"),
path( path(

View File

@ -35,5 +35,5 @@
{% include "activities/_post.html" with post=event.subject_post event=event %} {% include "activities/_post.html" with post=event.subject_post event=event %}
{% endif %} {% endif %}
{% else %} {% else %}
Unknown event type {{event.type}} Unknown event type {{ event.type }}
{% endif %} {% endif %}

View File

@ -57,7 +57,7 @@
{% if current_page == "home" %} {% if current_page == "home" %}
<h2>Compose</h2> <h2>Compose</h2>
<form action="/compose/" method="POST" class="compose"> <form action="{% url "compose" %}" method="POST" class="compose">
{% csrf_token %} {% csrf_token %}
{{ form.text }} {{ form.text }}
{{ form.content_warning }} {{ form.content_warning }}

View File

@ -6,12 +6,14 @@
<h3 style="display: none;">Options: {% if post.type_data.mode == "oneOf" %}<small>(choose one)</small>{% endif %}</h3> <h3 style="display: none;">Options: {% if post.type_data.mode == "oneOf" %}<small>(choose one)</small>{% endif %}</h3>
{% for item in post.type_data.options %} {% for item in post.type_data.options %}
{% if forloop.first %}<ul>{% endif %}{% widthratio item.votes post.type_data.voter_count 100 as item_percent %} {% if forloop.first %}<ul>{% endif %}{% widthratio item.votes post.type_data.voter_count 100 as item_percent %}
<li><label class="poll-option"> <li>
<input style="display:none" name="vote-options" type="{% if post.type_data.mode == "oneOf" %}radio{% else %}checkbox{% endif %}" value="0"> <label class="poll-option">
<span class="poll-number" title="{{ item.votes }} votes">{{ item_percent }}%</span> <input style="display:none" name="vote-options" type="{% if post.type_data.mode == "oneOf" %}radio{% else %}checkbox{% endif %}" value="0">
<span class="poll-option-text">{{ item.name }}</span> <span class="poll-number" title="{{ item.votes }} votes">{{ item_percent }}%</span>
</label> <span class="poll-option-text">{{ item.name }}</span>
{% if forloop.last %}</ul>{% endif %} </label>
</li>
{% if forloop.last %}</ul>{% endif %}
{% endfor %} {% endfor %}
<div class="poll-footer"> <div class="poll-footer">
<span class="vote-total">{{ post.type_data.voter_count }} people</span> <span class="vote-total">{{ post.type_data.voter_count }} people</span>

View File

@ -5,7 +5,7 @@
<a class="button" href=".?page={{ page_obj.previous_page_number }}">Previous Page</a> <a class="button" href=".?page={{ page_obj.previous_page_number }}">Previous Page</a>
{% endif %} {% endif %}
{% if page_obj.paginator.count %} {% if page_obj.paginator.count %}
<span class="count">{{ page_obj.paginator.count }} {{page_obj.paginator.count|pluralize:nouns }}</span> <span class="count">{{ page_obj.paginator.count }} {{ page_obj.paginator.count|pluralize:nouns }}</span>
{% endif %} {% endif %}
{% if page_obj.has_next %} {% if page_obj.has_next %}
<a class="button" href=".?page={{ page_obj.next_page_number }}">Next Page</a> <a class="button" href=".?page={{ page_obj.next_page_number }}">Next Page</a>

View File

@ -4,7 +4,7 @@
{% block content %} {% block content %}
<h1>Confirm Delete</h1> <h1>Confirm Delete</h1>
<section class=""> <section>
<form action="." method="POST"> <form action="." method="POST">
{% csrf_token %} {% csrf_token %}
@ -16,6 +16,7 @@
<a class="button" href="javascript:history.back()">Cancel</a> <a class="button" href="javascript:history.back()">Cancel</a>
<button class="delete">Delete</button> <button class="delete">Delete</button>
</div> </div>
</section> </form>
</section>
{% endblock %} {% endblock %}

View File

@ -19,7 +19,7 @@
<small> <small>
{% if announcement.service_announcement %}{{ domain.service_domain }}{% endif %} {% if announcement.service_announcement %}{{ domain.service_domain }}{% endif %}
</small> </small>
</span> </td>
<td class="stat"> <td class="stat">
{% if not announcement.published %} {% if not announcement.published %}
Draft Draft

View File

@ -24,5 +24,5 @@
<button class="delete">Confirm Deletion</button> <button class="delete">Confirm Deletion</button>
</div> </div>
{% endif %} {% endif %}
</form>
{% endblock %} {% endblock %}

View File

@ -20,7 +20,7 @@
<small> <small>
{% if domain.service_domain %}{{ domain.service_domain }}{% endif %} {% if domain.service_domain %}{{ domain.service_domain }}{% endif %}
</small> </small>
</span> </td>
<td class="stat"> <td class="stat">
{% if domain.public %}Public{% else %}Private{% endif %} {% if domain.public %}Public{% else %}Private{% endif %}
{% if domain.default %}(Default){% endif %} {% if domain.default %}(Default){% endif %}

View File

@ -33,7 +33,7 @@
</table> </table>
{% endif %} {% endif %}
{% empty %} {% empty %}
<p class="help"></p>Hashtag is either not used or stats have not been computed yet.</p> <p class="help">Hashtag is either not used or stats have not been computed yet.</p>
{% endfor %} {% endfor %}
</div> </div>
</fieldset> </fieldset>

View File

@ -10,7 +10,7 @@
<legend>Stats</legend> <legend>Stats</legend>
<table class="metadata"> <table class="metadata">
<tr> <tr>
<th>Status</td> <th>Status</th>
<td> <td>
{% if identity.limited %} {% if identity.limited %}
Limited Limited
@ -23,37 +23,37 @@
</tr> </tr>
{% if identity.local %} {% if identity.local %}
<tr> <tr>
<th>Type</td> <th>Type</th>
<td>Local Identity</td> <td>Local Identity</td>
</tr> </tr>
<tr> <tr>
<th>Followers</td> <th>Followers</th>
<td>{{ identity.inbound_follows.count }}</td> <td>{{ identity.inbound_follows.count }}</td>
</tr> </tr>
<tr> <tr>
<th>Following</td> <th>Following</th>
<td>{{ identity.outbound_follows.count }}</td> <td>{{ identity.outbound_follows.count }}</td>
</tr> </tr>
{% else %} {% else %}
<tr> <tr>
<th>Type</td> <th>Type</th>
<td>Remote Identity</td> <td>Remote Identity</td>
</tr> </tr>
<tr> <tr>
<th>Local Followers</td> <th>Local Followers</th>
<td>{{ identity.inbound_follows.count }}</td> <td>{{ identity.inbound_follows.count }}</td>
</tr> </tr>
<tr> <tr>
<th>Following Locals</td> <th>Following Locals</th>
<td>{{ identity.outbound_follows.count }}</td> <td>{{ identity.outbound_follows.count }}</td>
</tr> </tr>
{% endif %} {% endif %}
<tr> <tr>
<th>Posts</td> <th>Posts</th>
<td>{{ identity.posts.count }}</td> <td>{{ identity.posts.count }}</td>
</tr> </tr>
<tr> <tr>
<th>First Seen</td> <th>First Seen</th>
<td>{{ identity.created|timesince }} ago</td> <td>{{ identity.created|timesince }} ago</td>
</tr> </tr>
</table> </table>
@ -73,23 +73,23 @@
<table class="metadata"> <table class="metadata">
{% if not identity.local %} {% if not identity.local %}
<tr> <tr>
<th>Last Fetched</td> <th>Last Fetched</th>
<td>{{ identity.fetched|timesince }} ago</td> <td>{{ identity.fetched|timesince }} ago</td>
</tr> </tr>
{% if identity.state == "outdated" %} {% if identity.state == "outdated" %}
<tr> <tr>
<th>Attempting Fetch Since</td> <th>Attempting Fetch Since</th>
<td>{{ identity.state_changed|timesince }} ago</td> <td>{{ identity.state_changed|timesince }} ago</td>
</tr> </tr>
{% endif %} {% endif %}
{% endif %} {% endif %}
<tr> <tr>
<th>Actor URI</td> <th>Actor URI</th>
<td>{{ identity.actor_uri }}</td> <td>{{ identity.actor_uri }}</td>
</tr> </tr>
{% if not identity.local %} {% if not identity.local %}
<tr> <tr>
<th>Inbox URI</td> <th>Inbox URI</th>
<td>{{ identity.inbox_uri }}</td> <td>{{ identity.inbox_uri }}</td>
</tr> </tr>
{% endif %} {% endif %}
@ -101,17 +101,17 @@
</fieldset> </fieldset>
<div class="buttons"> <div class="buttons">
{% if not identity.local %} {% if not identity.local %}
<button class="left" name="fetch">Force Fetch</a> <button class="left" name="fetch">Force Fetch</button>
{% endif %} {% endif %}
{% if identity.limited %} {% if identity.limited %}
<button class="left delete" name="unlimit">Unlimit</a> <button class="left delete" name="unlimit">Unlimit</button>
{% else %} {% else %}
<button class="left delete" name="limit">Limit</a> <button class="left delete" name="limit">Limit</button>
{% endif %} {% endif %}
{% if identity.blocked %} {% if identity.blocked %}
<button class="left delete" name="unblock">Unblock</a> <button class="left delete" name="unblock">Unblock</button>
{% else %} {% else %}
<button class="left delete" name="block">Block</a> <button class="left delete" name="block">Block</button>
{% endif %} {% endif %}
</div> </div>
<div class="buttons"> <div class="buttons">

View File

@ -33,7 +33,7 @@
<span class="bad">Expired</span> <span class="bad">Expired</span>
{% endif %} {% endif %}
{% endif %} {% endif %}
</time> </td>
<td class="stat"> <td class="stat">
{% if invite.uses %} {% if invite.uses %}
{{ invite.uses }} {{ invite.uses }}
@ -41,7 +41,7 @@
Infinite Infinite
{% endif %} {% endif %}
<small>use{{ invite.uses|pluralize }} left</small> <small>use{{ invite.uses|pluralize }} left</small>
</time> </td>
</tr> </tr>
{% empty %} {% empty %}
<tr class="empty"> <tr class="empty">

View File

@ -8,15 +8,15 @@
<legend>{{ model }}</legend> <legend>{{ model }}</legend>
<table class="metadata"> <table class="metadata">
<tr> <tr>
<th>Pending</td> <th>Pending</th>
<td>{{ stats.most_recent_queued }}</td> <td>{{ stats.most_recent_queued }}</td>
</tr> </tr>
<tr> <tr>
<th>Processed today</td> <th>Processed today</th>
<td>{{ stats.most_recent_handled.1 }}</td> <td>{{ stats.most_recent_handled.1 }}</td>
</tr> </tr>
<tr> <tr>
<th>This month</td> <th>This month</th>
<td>{{ stats.most_recent_handled.2 }}</td> <td>{{ stats.most_recent_handled.2 }}</td>
</tr> </tr>
</table> </table>

View File

@ -25,7 +25,7 @@
<small> <small>
identit{{ user.num_identities|pluralize:"y,ies" }} identit{{ user.num_identities|pluralize:"y,ies" }}
</small> </small>
</span> </td>
<td class="actions"> <td class="actions">
{% if user.banned %} {% if user.banned %}
<span class="bad">Banned</span> <span class="bad">Banned</span>

View File

@ -7,8 +7,8 @@
<fieldset> <fieldset>
<legend>Password Set</legend> <legend>Password Set</legend>
<p> <p>
Your password for <tt>{{ email }}</tt> has been set. You can Your password for <code>{{ email }}</code> has been set. You can
now <a href="/auth/login/">login</a>. now <a href="{% url "login" %}">login</a>.
</p> </p>
</fieldset> </fieldset>
</form> </form>

View File

@ -7,7 +7,7 @@
<fieldset> <fieldset>
<legend>Email Sent</legend> <legend>Email Sent</legend>
<p> <p>
An email has been sent to <tt>{{ email }}</tt> - please follow An email has been sent to <code>{{ email }}</code> - please follow
the link inside to finish creating your account. the link inside to finish creating your account.
</p> </p>
</fieldset> </fieldset>

View File

@ -7,7 +7,7 @@
<fieldset> <fieldset>
<legend>Password Reset Sent</legend> <legend>Password Reset Sent</legend>
<p> <p>
Please check your email at <tt>{{ email }}</tt> for the reset link. Please check your email at <code>{{ email }}</code> for the reset link.
</p> </p>
</fieldset> </fieldset>
</form> </form>

View File

@ -33,8 +33,8 @@
{% block custom_head %}{% if config.custom_head %}{{ config.custom_head|safe }}{% endif %}{% endblock %} {% block custom_head %}{% if config.custom_head %}{{ config.custom_head|safe }}{% endif %}{% endblock %}
</head> </head>
<body class="{% block body_class %}{% endblock %}" hx-headers='{"X-CSRFToken": "{{ csrf_token }}"}'> <body class="{% block body_class %}{% endblock %}" hx-headers='{"X-CSRFToken": "{{ csrf_token }}"}'>
<a id='skip-to-main' class='screenreader-text' href='#main-content'>Skip to Content</a> <a id="skip-to-main" class="screenreader-text" href="#main-content">Skip to Content</a>
<a id='skip-to-nav' class='screenreader-text' href='#side-navigation'>Skip to Navigation</a> <a id="skip-to-nav" class="screenreader-text" href="#side-navigation">Skip to Navigation</a>
<main> <main>
{% block body_main %} {% block body_main %}
<header> <header>
@ -67,13 +67,13 @@
</a> </a>
{% else %} {% else %}
<div class="gap"></div> <div class="gap"></div>
<a href="/auth/login/" role="menuitem" class="identity"><i class="fa-solid fa-right-to-bracket"></i> Login</a> <a href="{% url "login" %}" role="menuitem" class="identity"><i class="fa-solid fa-right-to-bracket"></i> Login</a>
{% endif %} {% endif %}
</menu> </menu>
</header> </header>
{% block full_content %} {% block full_content %}
{% include 'activities/_image_viewer.html' %} {% include "activities/_image_viewer.html" %}
{% block pre_content %} {% block pre_content %}
{% endblock %} {% endblock %}
<div class="columns"> <div class="columns">

View File

@ -10,7 +10,7 @@
<header> <header>
<menu> <menu>
{% if not request.user.is_authenticated and current_page == "about" and config.signup_allowed %} {% if not request.user.is_authenticated and current_page == "about" and config.signup_allowed %}
<a href="/auth/signup/">Sign Up</a> <a href="{% url "signup" %}">Sign Up</a>
{% else %} {% else %}
<a href="/">Home</a> <a href="/">Home</a>
{% endif %} {% endif %}
@ -21,7 +21,7 @@
{% if request.user.is_authenticated %} {% if request.user.is_authenticated %}
<a href="javascript:history.back()">Back</a> <a href="javascript:history.back()">Back</a>
{% else %} {% else %}
<a href="/auth/login/">Login</a> <a href="{% url "login" %}">Login</a>
{% endif %} {% endif %}
</menu> </menu>
</header> </header>

View File

@ -1,24 +1,24 @@
{% extends "emails/base.html" %} {% extends "emails/base.html" %}
{% load mail_tags %} {% load mail_tags %}
{% autoescape off %} {% autoescape off %}
{% block title %}{{settings.MAIN_DOMAIN}} - New Account Created{% endblock title %} {% block title %}{{ settings.MAIN_DOMAIN }} - New Account Created{% endblock title %}
{% block subtitle %}{{settings.MAIN_DOMAIN}} - New Account Created{% endblock subtitle %} {% block subtitle %}{{ settings.MAIN_DOMAIN }} - New Account Created{% endblock subtitle %}
{% block body_greeting %} {% block body_greeting %}
{% email_body_content "Hi there," %} {% email_body_content "Hi there," %}
{% endblock body_greeting %} {% endblock body_greeting %}
{% block body_content %} {% block body_content %}
{% email_body_content "Your email address was used to create a new account at {{config.site_name}} (https://{{settings.MAIN_DOMAIN}})." %} {% email_body_content "Your email address was used to create a new account at {{ config.site_name }} (https://{{ settings.MAIN_DOMAIN }})." %}
{% email_body_content "To confirm your new account, go to this link:" %} {% email_body_content "To confirm your new account, go to this link:" %}
{% endblock body_content %} {% endblock body_content %}
{% block body_button %} {% block body_button %}
{% email_button button_text="Confirm New Account" button_link="https://{{settings.MAIN_DOMAIN}}/auth/reset/{{reset.token}}/" %} {% email_button button_text="Confirm New Account" button_link="https://{{ settings.MAIN_DOMAIN }}/auth/reset/{{ reset.token }}/" %}
{% endblock body_button %} {% endblock body_button %}
{% block body_signature %} {% block body_signature %}
{% email_body_content "Thanks, Admins @{{settings.MAIN_DOMAIN}}" %} {% email_body_content "Thanks, Admins @{{ settings.MAIN_DOMAIN }}" %}
{% endblock body_signature %} {% endblock body_signature %}
{% block extra_footer %} {% block extra_footer %}

View File

@ -1,24 +1,24 @@
{% extends "emails/base.html" %} {% extends "emails/base.html" %}
{% load mail_tags %} {% load mail_tags %}
{% autoescape off %} {% autoescape off %}
{% block title %}{{settings.MAIN_DOMAIN}} - Password Reset Requested{% endblock title %} {% block title %}{{ settings.MAIN_DOMAIN }} - Password Reset Requested{% endblock title %}
{% block subtitle %}{{settings.MAIN_DOMAIN}} - Password Reset Requested{% endblock subtitle %} {% block subtitle %}{{ settings.MAIN_DOMAIN }} - Password Reset Requested{% endblock subtitle %}
{% block body_greeting %} {% block body_greeting %}
{% email_body_content "Hi there," %} {% email_body_content "Hi there," %}
{% endblock body_greeting %} {% endblock body_greeting %}
{% block body_content %} {% block body_content %}
{% email_body_content "A password reset was requested for your account ({{reset.user.email}}) at {{Config.system.site_name}} (https://{{settings.MAIN_DOMAIN}})." %} {% email_body_content "A password reset was requested for your account ({{ reset.user.email }}) at {{ Config.system.site_name }} (https://{{ settings.MAIN_DOMAIN }})." %}
{% email_body_content "To reset your password, go to this link:" %} {% email_body_content "To reset your password, go to this link:" %}
{% endblock body_content %} {% endblock body_content %}
{% block body_button %} {% block body_button %}
{% email_button button_text="Reset Password" button_link="https://{{settings.MAIN_DOMAIN}}/auth/reset/{{reset.token}}/" %} {% email_button button_text="Reset Password" button_link="https://{{ settings.MAIN_DOMAIN }}/auth/reset/{{ reset.token }}/" %}
{% endblock body_button %} {% endblock body_button %}
{% block body_signature %} {% block body_signature %}
{% email_body_content "Thanks, Admins @{{settings.MAIN_DOMAIN}}" %} {% email_body_content "Thanks, Admins @{{ settings.MAIN_DOMAIN }}" %}
{% endblock body_signature %} {% endblock body_signature %}
{% block extra_footer %} {% block extra_footer %}

View File

@ -1,33 +1,33 @@
{% extends "emails/base.html" %} {% extends "emails/base.html" %}
{% load mail_tags %} {% load mail_tags %}
{% autoescape off %} {% autoescape off %}
{% block title %}{{config.site_name}} - New Moderation Report{% endblock title %} {% block title %}{{ config.site_name }} - New Moderation Report{% endblock title %}
{% block subtitle %}{{config.site_name}} - New Moderation Report{% endblock subtitle %} {% block subtitle %}{{ config.site_name }} - New Moderation Report{% endblock subtitle %}
{% block body_greeting %} {% block body_greeting %}
{% email_body_content "Moderation Team," %} {% email_body_content "Moderation Team," %}
{% email_body_content "A new report has been recieved for {{config.site_name}}." %} {% email_body_content "A new report has been recieved for {{ config.site_name }}." %}
{% endblock body_greeting %} {% endblock body_greeting %}
{% block body_content %} {% block body_content %}
{% email_body_content "=============== Report Summary ===============" %} {% email_body_content "=============== Report Summary ===============" %}
{% if report.source_identity %} {% if report.source_identity %}
{% email_body_content "Reporter Identity: {{report.source_identity}} @ {{report.source_domain}}" %} {% email_body_content "Reporter Identity: {{ report.source_identity }} @ {{ report.source_domain }}" %}
{% else %} {% else %}
{% email_body_content "Reporter Identity: Anonymous Report from {{report.source_domain}}" %} {% email_body_content "Reporter Identity: Anonymous Report from {{ report.source_domain }}" %}
{% endif %} {% endif %}
{% email_body_content "Reported Identity: {{report.subject_identity}}" %} {% email_body_content "Reported Identity: {{ report.subject_identity }}" %}
{% email_body_content "Complaint Type: {{report.type}}" %} {% email_body_content "Complaint Type: {{ report.type }}" %}
{% email_body_content "Complaint Notes: {{report.complaint}}" %} {% email_body_content "Complaint Notes: {{ report.complaint }}" %}
{% endblock body_content %} {% endblock body_content %}
{% block body_button %} {% block body_button %}
{% email_button button_text="View Report" button_link="https://{{settings.MAIN_DOMAIN}}/admin/reports/{{report.id}}/" %} {% email_button button_text="View Report" button_link="https://{{ settings.MAIN_DOMAIN }}/admin/reports/{{ report.id }}/" %}
{% endblock body_button %} {% endblock body_button %}
{% block extra_footer %} {% block extra_footer %}
{% email_footer "You are recieving this email because you are a moderator on the Takahe instance https://{{settings.MAIN_DOMAIN}}" %} {% email_footer "You are recieving this email because you are a moderator on the Takahe instance https://{{ settings.MAIN_DOMAIN }}" %}
{% endblock extra_footer %} {% endblock extra_footer %}
{% endautoescape %} {% endautoescape %}

View File

@ -1,6 +1,6 @@
{% extends "base_plain.html" %} {% extends "base_plain.html" %}
{% block title%}{{ title }}{% endblock %} {% block title %}{{ title }}{% endblock %}
{% block content %} {% block content %}
<h1>{{ title }}</h1> <h1>{{ title }}</h1>

View File

@ -12,13 +12,13 @@
data-handle="{{ identity.name_or_handle }}" data-handle="{{ identity.name_or_handle }}"
_="on error set my.src to generate_avatar(@data-handle)" _="on error set my.src to generate_avatar(@data-handle)"
> >
{% if link_avatar is False%} {% if link_avatar is False %}
</div> </div>
{% else %} {% else %}
</a> </a>
{% endif %} {% endif %}
{% if link_handle is False%} {% if link_handle is False %}
<div class="handle"> <div class="handle">
{% else %} {% else %}
<a href="{{ identity.urls.view }}" class="handle"> <a href="{{ identity.urls.view }}" class="handle">

View File

@ -1,11 +1,11 @@
<nav> <nav>
<a href="/identity/select/" {% if identities %}class="selected"{% endif %} title="Select Identity"> <a href="{% url "identity_select" %}" {% if identities %}class="selected"{% endif %} title="Select Identity">
<i class="fa-solid fa-users-viewfinder"></i> Select Identity <i class="fa-solid fa-users-viewfinder"></i> Select Identity
</a> </a>
<a href="/identity/create/" {% if form %}class="selected"{% endif %} title="Create Identity"> <a href="{% url "identity_create" %}" {% if form %}class="selected"{% endif %} title="Create Identity">
<i class="fa-solid fa-plus"></i> Create Identity <i class="fa-solid fa-plus"></i> Create Identity
</a> </a>
<a href="/auth/logout/" title="Logout"> <a href="{% url "logout" %}" title="Logout">
<i class="fa-solid fa-right-from-bracket"></i> Logout <i class="fa-solid fa-right-from-bracket"></i> Logout
</a> </a>
{% if request.user.admin %} {% if request.user.admin %}

View File

@ -16,7 +16,7 @@
{% empty %} {% empty %}
<p class="option empty">You have no identities.</p> <p class="option empty">You have no identities.</p>
{% endfor %} {% endfor %}
<a href="/identity/create/" class="option new"> <a href="{% url "identity_create" %}" class="option new">
<i class="fa-solid fa-plus"></i> Create a new identity <i class="fa-solid fa-plus"></i> Create a new identity
</a> </a>
</section> </section>

View File

@ -10,7 +10,7 @@
<a href="{% url "settings_security" %}" {% if section == "security" %}class="selected"{% endif %} title="Login &amp; Security"> <a href="{% url "settings_security" %}" {% if section == "security" %}class="selected"{% endif %} title="Login &amp; Security">
<i class="fa-solid fa-key"></i> Login &amp; Security <i class="fa-solid fa-key"></i> Login &amp; Security
</a> </a>
<a href="/auth/logout/"> <a href="{% url "logout" %}">
<i class="fa-solid fa-right-from-bracket" title="Logout"></i> Logout <i class="fa-solid fa-right-from-bracket" title="Logout"></i> Logout
</a> </a>
{% if request.user.moderator or request.user.admin %} {% if request.user.moderator or request.user.admin %}

View File

@ -23,12 +23,12 @@ class Announcement(models.Model):
start = models.DateTimeField( start = models.DateTimeField(
null=True, null=True,
blank=True, blank=True,
help_text="When the announcement will start appearing.\nLeave blank to have it begin as soon as it is published.\nFormat: <tt>2023-01-01</tt> or <tt>2023-01-01 12:30:00</tt>", help_text="When the announcement will start appearing.\nLeave blank to have it begin as soon as it is published.\nFormat: <code>2023-01-01</code> or <code>2023-01-01 12:30:00</code>",
) )
end = models.DateTimeField( end = models.DateTimeField(
null=True, null=True,
blank=True, blank=True,
help_text="When the announcement will stop appearing.\nLeave blank to have it display indefinitely.\nFormat: <tt>2023-01-01</tt> or <tt>2023-01-01 12:30:00</tt>", help_text="When the announcement will stop appearing.\nLeave blank to have it display indefinitely.\nFormat: <code>2023-01-01</code> or <code>2023-01-01 12:30:00</code>",
) )
include_unauthenticated = models.BooleanField(default=False) include_unauthenticated = models.BooleanField(default=False)