This is an automated email from the ASF dual-hosted git repository.
sbp pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-release.git
The following commit(s) were added to refs/heads/main by this push:
new 0d6c75a Update the form to announce a selected release
0d6c75a is described below
commit 0d6c75a4df79750b05f0b0a29dffdb0dbb360990
Author: Sean B. Palmer <[email protected]>
AuthorDate: Tue May 13 17:05:55 2025 +0100
Update the form to announce a selected release
---
.../admin/templates/toggle-admin-view.html | 1 +
atr/templates/announce-selected.html | 40 +++++++---------------
atr/templates/macros/forms.html | 30 ++++++++++------
atr/templates/release-policy-form.html | 4 +--
4 files changed, 36 insertions(+), 39 deletions(-)
diff --git a/atr/blueprints/admin/templates/toggle-admin-view.html
b/atr/blueprints/admin/templates/toggle-admin-view.html
index 725b731..28e87bd 100644
--- a/atr/blueprints/admin/templates/toggle-admin-view.html
+++ b/atr/blueprints/admin/templates/toggle-admin-view.html
@@ -17,6 +17,7 @@
{% if current_user and is_admin_fn(current_user.uid) %}
<form action="{{ url_for('admin.admin_toggle_view') }}" method="post"
class="mb-4">
{{ empty_form.hidden_tag() }}
+
<button type="submit" class="btn btn-primary">
{% if not is_viewing_as_admin_fn(current_user.uid) %}
<i class="fa-solid fa-user-shield"></i> Switch to admin view
diff --git a/atr/templates/announce-selected.html
b/atr/templates/announce-selected.html
index ef66d65..b2a4c2e 100644
--- a/atr/templates/announce-selected.html
+++ b/atr/templates/announce-selected.html
@@ -72,20 +72,18 @@
{{ announce_form.hidden_tag() }}
<div class="row mb-3 pb-3 border-bottom">
- <div class="col-md-3 text-md-end fw-medium">{{
announce_form.mailing_list.label }}</div>
+ {{ forms.label(announce_form.mailing_list, high=True) }}
<div class="col-md-9">
<div class="d-flex gap-4 mb-3">
{% for subfield in announce_form.mailing_list %}
<div class="form-check">
- {{ subfield(class_='form-check-input') }}
- {{ subfield.label(class_='form-check-label') }}
+ {{ forms.widget(subfield, classes="form-check-input") }}
+ {{ forms.label(subfield, classes="form-check-label") }}
</div>
{% endfor %}
</div>
{% if announce_form.mailing_list.errors %}
- <div class="invalid-feedback d-block">
- {% for error in announce_form.mailing_list.errors %}{{ error }}{%
endfor %}
- </div>
+ {{ forms.errors(announce_form.mailing_list,
classes="invalid-feedback d-block") }}
{% endif %}
<div class="card bg-warning-subtle mb-3">
<span class="card-body p-3">
@@ -97,20 +95,14 @@
</div>
<div class="row mb-3 pb-3 border-bottom">
- <label for="{{ announce_form.subject.id }}"
- class="col-md-3 col-form-label text-md-end">{{
announce_form.subject.label.text }}:</label>
+ {{ forms.label(announce_form.subject, col=True) }}
<div class="col-md-9">
- {{ announce_form.subject(class_='form-control') }}
- {% if announce_form.subject.errors %}
- <div class="invalid-feedback d-block">
- {% for error in announce_form.subject.errors %}{{ error }}{%
endfor %}
- </div>
- {% endif %}
+ {{ forms.widget(announce_form.subject) }}
+ {{ forms.errors(announce_form.subject, classes="invalid-feedback
d-block") }}
</div>
</div>
<div class="row mb-3 pb-3 border-bottom">
- <label for="{{ announce_form.body.id }}"
- class="col-md-3 col-form-label text-md-end">{{
announce_form.body.label.text }}:</label>
+ {{ forms.label(announce_form.body, col=True) }}
<div class="col-md-9">
<ul class="nav nav-tabs" id="announceBodyTab" role="tablist">
<li class="nav-item" role="presentation">
@@ -139,12 +131,8 @@
id="edit-announce-body-pane"
role="tabpanel"
aria-labelledby="edit-announce-body-tab">
- {{ announce_form.body(class_='form-control font-monospace mt-2',
rows='12') }}
- {% if announce_form.body.errors %}
- <div class="invalid-feedback d-block">
- {% for error in announce_form.body.errors %}{{ error }}{%
endfor %}
- </div>
- {% endif %}
+ {{ forms.widget(announce_form.body, classes="form-control
font-monospace mt-2", rows="12") }}
+ {{ forms.errors(announce_form.body, classes="invalid-feedback
d-block") }}
</div>
<div class="tab-pane fade"
id="text-preview-announce-body-pane"
@@ -158,12 +146,10 @@
<div class="row mb-3">
<div class="col-md-9 offset-md-3">
<div class="form-check">
- {{ announce_form.confirm_announce(class_="form-check-input") }}
- {{ announce_form.confirm_announce.label(class_="form-check-label") }}
+ {{ forms.widget(announce_form.confirm_announce,
classes="form-check-input") }}
+ {{ forms.label(announce_form.confirm_announce,
classes="form-check-label") }}
</div>
- {% if announce_form.confirm_announce.errors %}
- <div class="text-danger small mt-1">{{
announce_form.confirm_announce.errors[0] }}</div>
- {% endif %}
+ {{ forms.errors(announce_form.confirm_announce, classes="text-danger
small mt-1") }}
</div>
</div>
<div class="row">
diff --git a/atr/templates/macros/forms.html b/atr/templates/macros/forms.html
index 17cae85..67d1bd7 100644
--- a/atr/templates/macros/forms.html
+++ b/atr/templates/macros/forms.html
@@ -1,28 +1,38 @@
-{% macro label(field, classes="form-label", col=False) %}
+{% macro label(field, classes="form-label", col=False, high=False) %}
{% if field.label %}
{% set final_classes = classes %}
- {% if col %}
- {% set col_classes = "col-sm-3 col-form-label text-sm-end" %}
- {% if final_classes and final_classes != "" %}
- {% set final_classes = col_classes + " " + final_classes %}
+ {% if col or high %}
+ {% set base_col_classes = "col-sm-3 text-sm-end" %}
+ {% if col and not high %}
+ {% set base_col_classes = "col-sm-3 col-form-label text-sm-end" %}
+ {% endif %}
+ {% if final_classes and final_classes != "" and final_classes !=
"form-label" %}
+ {% set final_classes = base_col_classes + " " + final_classes %}
+ {% elif final_classes == "form-label" and base_col_classes != "" %}
+ {% set final_classes = base_col_classes %}
{% else %}
- {% set final_classes = col_classes %}
+ {% set final_classes = base_col_classes %}
{% endif %}
{% endif %}
{{ field.label(class=final_classes) }}
{% endif %}
{% endmacro %}
-{% macro widget(field, classes="form-control", placeholder=None) %}
+{% macro widget(field, classes="form-control", placeholder=None, rows=None) %}
{% set widget_class = classes %}
{% if field.errors %}
{% set widget_class = widget_class + ' is-invalid' %}
{% endif %}
+
+ {% set render_args = {'class_': widget_class} %}
{% if placeholder is not none %}
- {{ field(class_=widget_class, placeholder=placeholder) }}
- {% else %}
- {{ field(class_=widget_class) }}
+ {% set _ = render_args.update({'placeholder': placeholder}) %}
{% endif %}
+ {% if rows is not none %}
+ {% set _ = render_args.update({'rows': rows}) %}
+ {% endif %}
+
+ {{ field(**render_args) }}
{% endmacro %}
{% macro errors(field, classes="invalid-feedback", item_separator="<br />") %}
diff --git a/atr/templates/release-policy-form.html
b/atr/templates/release-policy-form.html
index 7662bb8..dee7c57 100644
--- a/atr/templates/release-policy-form.html
+++ b/atr/templates/release-policy-form.html
@@ -27,7 +27,7 @@
</div>
<div class="mb-3 pb-3 row border-bottom">
- {{ forms.label(form.manual_vote, col=True) }}
+ {{ forms.label(form.manual_vote, high=True) }}
<div class="col-sm-8">
<div class="form-check">
{{ forms.widget(form.manual_vote, classes="form-check-input") }}
@@ -75,7 +75,7 @@
</div>
<div class="mb-3 pb-3 row border-bottom">
- {{ forms.label(form.pause_for_rm, col=True) }}
+ {{ forms.label(form.pause_for_rm, high=True) }}
<div class="col-sm-8">
<div class="form-check">
{{ forms.widget(form.pause_for_rm, classes="form-check-input") }}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]