From 4a3ca0105950823b939f83b37191db42f7e807f7 Mon Sep 17 00:00:00 2001 From: Sunil Mohan Adapa Date: Tue, 10 Mar 2026 13:34:20 -0700 Subject: [PATCH] html: Drop trailing slash from void elements See: https://github.com/validator/validator/wiki/Markup-%C2%BB-Void-elements Tests: - Fewer info messages in w3c HTML validator. - Page loads and works as usual. Signed-off-by: Sunil Mohan Adapa Reviewed-by: James Valleroy --- plinth/modules/backups/templates/backups.html | 2 +- .../modules/firewall/templates/firewall.html | 2 +- .../templates/firstboot_welcome.html | 2 +- plinth/modules/help/templates/help_about.html | 2 +- plinth/modules/help/templates/help_base.html | 2 +- plinth/modules/help/templates/help_index.html | 2 +- .../modules/help/templates/help_manual.html | 2 +- .../janus/templates/janus_video_room.html | 10 ++--- .../modules/jsxc/templates/jsxc_launch.html | 10 ++--- .../letsencrypt/templates/letsencrypt.html | 2 +- .../networks/templates/connection_show.html | 2 +- .../templates/connections_diagram.html | 26 ++++++------- .../templates/networks_configuration.html | 2 +- .../templates/oauth2_provider/authorize.html | 6 +-- plinth/modules/samba/templates/samba.html | 2 +- plinth/modules/sharing/templates/sharing.html | 2 +- plinth/modules/storage/templates/storage.html | 2 +- plinth/templates/base.html | 38 +++++++++---------- plinth/templates/first_setup.html | 2 +- plinth/templates/index.html | 4 +- 20 files changed, 61 insertions(+), 61 deletions(-) diff --git a/plinth/modules/backups/templates/backups.html b/plinth/modules/backups/templates/backups.html index 16e1e20c1..2a7aa5965 100644 --- a/plinth/modules/backups/templates/backups.html +++ b/plinth/modules/backups/templates/backups.html @@ -8,7 +8,7 @@ {% block page_head %} + href="{% static 'backups/backups.css' %}"> {% endblock %} {% block configuration %} diff --git a/plinth/modules/firewall/templates/firewall.html b/plinth/modules/firewall/templates/firewall.html index 14b46fc97..6a6a588fd 100644 --- a/plinth/modules/firewall/templates/firewall.html +++ b/plinth/modules/firewall/templates/firewall.html @@ -8,7 +8,7 @@ {% block page_head %} + href="{% static 'firewall/firewall.css' %}"> {% endblock %} {% block configuration %} diff --git a/plinth/modules/first_boot/templates/firstboot_welcome.html b/plinth/modules/first_boot/templates/firstboot_welcome.html index 20cd4092e..ca09fecad 100644 --- a/plinth/modules/first_boot/templates/firstboot_welcome.html +++ b/plinth/modules/first_boot/templates/firstboot_welcome.html @@ -14,7 +14,7 @@ no-brand {% block content %}
diff --git a/plinth/modules/help/templates/help_about.html b/plinth/modules/help/templates/help_about.html index 5bc6710fa..e04c3b8a1 100644 --- a/plinth/modules/help/templates/help_about.html +++ b/plinth/modules/help/templates/help_about.html @@ -10,7 +10,7 @@

+ class="main-graphic">

{% if version %} diff --git a/plinth/modules/help/templates/help_base.html b/plinth/modules/help/templates/help_base.html index 99c3a2658..d0e92380c 100644 --- a/plinth/modules/help/templates/help_base.html +++ b/plinth/modules/help/templates/help_base.html @@ -16,7 +16,7 @@ {{ cfg.box_name }} + alt="{{ cfg.box_name }}"> {% blocktrans trimmed %}{{ box_name }} Setup{% endblocktrans %} diff --git a/plinth/modules/help/templates/help_index.html b/plinth/modules/help/templates/help_index.html index c50ae1a51..18a9adfd2 100644 --- a/plinth/modules/help/templates/help_index.html +++ b/plinth/modules/help/templates/help_index.html @@ -58,7 +58,7 @@ {{ cfg.box_name }} + alt="{{ cfg.box_name }}"> {% blocktrans trimmed %}{{ box_name }} Setup{% endblocktrans %} diff --git a/plinth/modules/help/templates/help_manual.html b/plinth/modules/help/templates/help_manual.html index cdfd6f4b6..df461e170 100644 --- a/plinth/modules/help/templates/help_manual.html +++ b/plinth/modules/help/templates/help_manual.html @@ -8,7 +8,7 @@ {% block page_head %} + href="{% static 'help/help.css' %}"> {% endblock %} {% block content %} diff --git a/plinth/modules/janus/templates/janus_video_room.html b/plinth/modules/janus/templates/janus_video_room.html index bd6e5313f..84da8ee3d 100644 --- a/plinth/modules/janus/templates/janus_video_room.html +++ b/plinth/modules/janus/templates/janus_video_room.html @@ -25,7 +25,7 @@ - + Janus Video Room @@ -42,13 +42,13 @@ + type="text/css"> + type="text/css"> + href="{% static 'janus/janus-video-room.css' %}" type="text/css"> + href="/javascript/font-awesome/css/font-awesome.min.css" type="text/css"> diff --git a/plinth/modules/jsxc/templates/jsxc_launch.html b/plinth/modules/jsxc/templates/jsxc_launch.html index 342b682e4..57e45389a 100644 --- a/plinth/modules/jsxc/templates/jsxc_launch.html +++ b/plinth/modules/jsxc/templates/jsxc_launch.html @@ -34,17 +34,17 @@ Jabber Chat (JSXC) - + + rel="stylesheet" type="text/css"> + media="all" rel="stylesheet" type="text/css"> + rel="stylesheet" type="text/css"> + rel="stylesheet" type="text/css"> diff --git a/plinth/modules/letsencrypt/templates/letsencrypt.html b/plinth/modules/letsencrypt/templates/letsencrypt.html index 5990d6b8a..616d99c4e 100644 --- a/plinth/modules/letsencrypt/templates/letsencrypt.html +++ b/plinth/modules/letsencrypt/templates/letsencrypt.html @@ -9,7 +9,7 @@ {% block page_head %} + href="{% static 'letsencrypt/letsencrypt.css' %}"> {% endblock %} {% block configuration %} diff --git a/plinth/modules/networks/templates/connection_show.html b/plinth/modules/networks/templates/connection_show.html index cddc4e8d9..13ef82c6c 100644 --- a/plinth/modules/networks/templates/connection_show.html +++ b/plinth/modules/networks/templates/connection_show.html @@ -10,7 +10,7 @@ {% block page_head %} + href="{% static 'networks/networks.css' %}"> {% endblock %} {% block content %} diff --git a/plinth/modules/networks/templates/connections_diagram.html b/plinth/modules/networks/templates/connections_diagram.html index 720433792..ba103281e 100644 --- a/plinth/modules/networks/templates/connections_diagram.html +++ b/plinth/modules/networks/templates/connections_diagram.html @@ -8,28 +8,28 @@
{% trans + class="col-image network-entity" alt="{% trans "Internet" %}">
{% trans + alt="{% trans "Spacing" %}"> {% trans + alt="{% trans "Connection" %}"> {% trans + alt="{% trans "Connection" %}">

{% trans "External" %}

{% for connection in connections %} {% if connection.interface_name and connection.is_active and connection.zone == 'external' %} {% if connection.type == '802-3-ethernet' %} {% trans + class="network-type-icon" alt="{% trans "Ethernet" %}"> {% elif connection.type == '802-11-wireless' %} {% trans + class="network-type-icon" alt="{% trans "Wi-Fi" %}"> {% endif %} @@ -40,15 +40,15 @@
{{ box_name }} + class="col-image network-entity" alt="{{ box_name }}">
{% trans + class="col-image network-entity" alt="{% trans "Computer" %}">
diff --git a/plinth/modules/networks/templates/networks_configuration.html b/plinth/modules/networks/templates/networks_configuration.html index 2c4ed99a0..0d56d29e9 100644 --- a/plinth/modules/networks/templates/networks_configuration.html +++ b/plinth/modules/networks/templates/networks_configuration.html @@ -9,7 +9,7 @@ {% block page_head %} + href="{% static 'networks/networks.css' %}"> {% endblock %} {% block configuration %} diff --git a/plinth/modules/oidc/templates/oauth2_provider/authorize.html b/plinth/modules/oidc/templates/oauth2_provider/authorize.html index 60d689d84..162d503dc 100644 --- a/plinth/modules/oidc/templates/oauth2_provider/authorize.html +++ b/plinth/modules/oidc/templates/oauth2_provider/authorize.html @@ -11,12 +11,12 @@
{% trans + class="col-image network-entity" alt="{% trans "Application" %}"> {% trans + alt="{% trans "Connection" %}"> {{ box_name }} + class="col-image network-entity" alt="{{ box_name }}">

{% trans "Authorize App" %}

diff --git a/plinth/modules/samba/templates/samba.html b/plinth/modules/samba/templates/samba.html index b67377dd1..8999ec5f8 100644 --- a/plinth/modules/samba/templates/samba.html +++ b/plinth/modules/samba/templates/samba.html @@ -10,7 +10,7 @@ {% block page_head %} + href="{% static 'samba/samba.css' %}"> {% endblock %} {% block configuration %} diff --git a/plinth/modules/sharing/templates/sharing.html b/plinth/modules/sharing/templates/sharing.html index 4eedd13c7..730ba1fd6 100644 --- a/plinth/modules/sharing/templates/sharing.html +++ b/plinth/modules/sharing/templates/sharing.html @@ -8,7 +8,7 @@ {% block page_head %} + href="{% static 'sharing/sharing.css' %}"> {% endblock %} {% block configuration %} diff --git a/plinth/modules/storage/templates/storage.html b/plinth/modules/storage/templates/storage.html index 3e7c53892..c2b0e9afa 100644 --- a/plinth/modules/storage/templates/storage.html +++ b/plinth/modules/storage/templates/storage.html @@ -9,7 +9,7 @@ {% block page_head %} + href="{% static 'storage/storage.css' %}"> {% endblock %} {% block configuration %} diff --git a/plinth/templates/base.html b/plinth/templates/base.html index 245351aab..614090bdb 100644 --- a/plinth/templates/base.html +++ b/plinth/templates/base.html @@ -9,30 +9,30 @@ - + - + - + - - - - - + + + + + + {% endblocktrans %}"> {% block title %} {% if title %} {{ title }} {% else %} {{ box_name }} {% endif %} @@ -41,21 +41,21 @@ <!-- Favicon. Works with IE >= 11 and other GUI browsers --> <link rel="icon" type="image/png" - href="{% static 'theme/img/freedombox-logo-32px.png' %}"/> + href="{% static 'theme/img/freedombox-logo-32px.png' %}"> <!-- The is the icon for iOS's Web Clip. Size: 57x57 for older iPhones, 72x72 for iPads, 114x114 for iPhone4 - To prevent iOS from applying its styles to the icon name it thusly: apple-touch-icon-precomposed.png - Transparency is not recommended (iOS will put a black BG behind the icon) --> - <link rel="apple-touch-icon" sizes="57x57" href="{% static 'theme/img/apple-touch-icon-57px-precomposed.png' %}"/> - <link rel="apple-touch-icon" sizes="72x72" href="{% static 'theme/img/apple-touch-icon-72px-precomposed.png' %}"/> - <link rel="apple-touch-icon" sizes="114x114" href="{% static 'theme/img/apple-touch-icon-114px-precomposed.png' %}"/> + <link rel="apple-touch-icon" sizes="57x57" href="{% static 'theme/img/apple-touch-icon-57px-precomposed.png' %}"> + <link rel="apple-touch-icon" sizes="72x72" href="{% static 'theme/img/apple-touch-icon-72px-precomposed.png' %}"> + <link rel="apple-touch-icon" sizes="114x114" href="{% static 'theme/img/apple-touch-icon-114px-precomposed.png' %}"> <!-- Stylesheets --> - <link rel="stylesheet" href="{% static '/javascript/bootstrap5/css/bootstrap.min.css' %}"/> - <link rel="stylesheet" href="{% static '/javascript/fork-awesome/css/fork-awesome.css' %}"/> - <link rel="stylesheet" href="{% static 'theme/css/main.css' %}"/> + <link rel="stylesheet" href="{% static '/javascript/bootstrap5/css/bootstrap.min.css' %}"> + <link rel="stylesheet" href="{% static '/javascript/fork-awesome/css/fork-awesome.css' %}"> + <link rel="stylesheet" href="{% static 'theme/css/main.css' %}"> {% if user_css %} - <link rel="stylesheet" href="{% static user_css %}"/> + <link rel="stylesheet" href="{% static user_css %}"> {% endif %} <!-- This script is not loaded in defer mode because it needs to run before @@ -202,7 +202,7 @@ action="{% url 'users:logout' %}"> {% csrf_token %} <input type="submit" class="dropdown-item no-running-status" - value="{% trans "Log out" %}"/> + value="{% trans "Log out" %}"> </form> </li> </ul> @@ -240,7 +240,7 @@ method="post" action="{% url 'users:logout' %}"> {% csrf_token %} <input type="submit" class="nav-link no-running-status btn btn-link" - value="{% trans "Log out" %}"/> + value="{% trans "Log out" %}"> </form> {% endif %} {% endblock %} diff --git a/plinth/templates/first_setup.html b/plinth/templates/first_setup.html index d30655b88..e2ea9f9e0 100644 --- a/plinth/templates/first_setup.html +++ b/plinth/templates/first_setup.html @@ -15,7 +15,7 @@ no-brand <div class="logo"> <img class="firstboot img-fluid" alt="{{ box_name }}" - src="{% static 'theme/img/freedombox-logo-standard.svg' %}"/> + src="{% static 'theme/img/freedombox-logo-standard.svg' %}"> </div> {% if is_first_setup_running %} diff --git a/plinth/templates/index.html b/plinth/templates/index.html index 4586a9f7c..4a52a7b08 100644 --- a/plinth/templates/index.html +++ b/plinth/templates/index.html @@ -63,7 +63,7 @@ {% endif %} <div class="card-icon"> {% if shortcut.icon|first == "/" %} - <img src="{{ shortcut.icon }}"/> + <img src="{{ shortcut.icon }}"> {% else %} {% if shortcut.app_id %} {% icon shortcut.app_id|add:'/icons/'|add:shortcut.icon|add:'.svg' class='card-icon' %} @@ -95,7 +95,7 @@ <p> <a href="{% url 'help:about' %}" title="{% trans "About" %}"> <img class="footer-logo" alt="{{ box_name }}" - src="{% static 'theme/img/freedombox-logo-powered.svg' %}"/> + src="{% static 'theme/img/freedombox-logo-powered.svg' %}"> </a> </p> {% endblock %}