diff --git a/ietf/doc/templatetags/ballot_icon.py b/ietf/doc/templatetags/ballot_icon.py
index 3833079819..4f05f33bbd 100644
--- a/ietf/doc/templatetags/ballot_icon.py
+++ b/ietf/doc/templatetags/ballot_icon.py
@@ -109,7 +109,7 @@ def sort_key(t):
else:
typename = "IESG"
- res = ['
' +
+ out = t.tz(tz).format('dddd, ') + '' +
t.tz(tz).format('MMMM Do YYYY, ') + '' +
- t.tz(tz).format('HH:mm') + '' +
+ t.tz(tz).format('HH:mm') + '' +
t.tz(tz).format(' Z z') + '';
break;
case 1:
diff --git a/ietf/static/js/ietf.js b/ietf/static/js/ietf.js
index 776287fafb..dc7b3a1b37 100644
--- a/ietf/static/js/ietf.js
+++ b/ietf/static/js/ietf.js
@@ -9,7 +9,7 @@ import "bootstrap/js/dist/dropdown";
import "bootstrap/js/dist/modal";
// import "bootstrap/js/dist/offcanvas";
// import "bootstrap/js/dist/popover";
-// import "bootstrap/js/dist/scrollspy";
+import "bootstrap/js/dist/scrollspy";
import "bootstrap/js/dist/tab";
// import "bootstrap/js/dist/toast";
import "bootstrap/js/dist/tooltip";
@@ -39,6 +39,15 @@ jQuery.ajaxSetup({
}
});
+// Use the Bootstrap tooltip plugin for all elements with a title attribute
+$(document)
+ .ready(function () {
+ $('[title][title!=""]')
+ .not("th")
+ .attr("data-bs-toggle", "tooltip")
+ .tooltip();
+ });
+
$(document)
.ready(function () {
diff --git a/ietf/templates/api/index.html b/ietf/templates/api/index.html
index b226dc31fd..13b8a47e62 100644
--- a/ietf/templates/api/index.html
+++ b/ietf/templates/api/index.html
@@ -2,7 +2,7 @@
{% extends "base.html" %}
{% load static %}
{% block title %}API Notes{% endblock %}
-{% block bodyAttrs %}data-spy="scroll" data-target="#affix"{% endblock %}
+{% block bodyAttrs %}data-bs-spy="scroll" data-bs-target="#affix"{% endblock %}
{% block content %}
Datatracker API Notes
@@ -362,8 +362,8 @@ Signing Keys
-
diff --git a/ietf/templates/doc/ballot_popup.html b/ietf/templates/doc/ballot_popup.html
index 2759cf075e..1a16221e85 100644
--- a/ietf/templates/doc/ballot_popup.html
+++ b/ietf/templates/doc/ballot_popup.html
@@ -10,7 +10,7 @@