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 b1fa791 Group cards together on project pages
b1fa791 is described below
commit b1fa791d3b06305a2297da051009fa87f3aa17f1
Author: Sean B. Palmer <[email protected]>
AuthorDate: Fri Jun 20 20:39:04 2025 +0100
Group cards together on project pages
---
atr/templates/project-view.html | 167 ++++++++++++++++++++--------------------
1 file changed, 84 insertions(+), 83 deletions(-)
diff --git a/atr/templates/project-view.html b/atr/templates/project-view.html
index dd4cc49..3c8cddb 100644
--- a/atr/templates/project-view.html
+++ b/atr/templates/project-view.html
@@ -221,6 +221,90 @@
</div>
{% endif %}
+ {% if can_edit and metadata_form %}
+ <div class="card mb-4">
+ <div class="card-header bg-light">
+ <h3 class="mb-2">Categories</h3>
+ </div>
+ <div class="card-body">
+ <form method="post"
+ action="{{ as_url(routes.projects.view, name=project.name) }}"
+ class="mb-3">
+ {{ metadata_form.hidden_tag() if metadata_form.hidden_tag }}
+ {{ metadata_form.project_name() }}
+ <input type="hidden" name="submit_metadata" value="true" />
+
+ <div class="d-flex align-items-center mb-3">
+ {{ forms.widget(metadata_form.category_to_add,
classes="form-control form-control-sm me-2", placeholder="New category") }}
+ <button type="submit"
+ name="action"
+ value="add_category"
+ class="btn btn-sm btn-success text-nowrap pe-3">
+ <i class="bi bi-plus"></i> Add
+ </button>
+ </div>
+ {{ forms.errors(metadata_form.category_to_add) }}
+
+ <div class="d-flex flex-wrap gap-2 align-items-center">
+ {% set current_categories = project.category.split(", ") if
project.category else [] %}
+ {% for cat in current_categories %}
+ <div class="badge bg-primary d-flex align-items-center p-2">
+ <span>{{ cat }}</span>
+ {% if cat not in forbidden_categories %}
+ <button type="submit"
+ name="action"
+ value="remove_category:{{ cat }}"
+ class="btn-close btn-close-white ms-2
page-remove-tag"
+ aria-label="Remove {{ cat }}"></button>
+ {% endif %}
+ </div>
+ {% endfor %}
+ </div>
+ </form>
+ </div>
+ </div>
+
+ <div class="card mb-4">
+ <div class="card-header bg-light">
+ <h3 class="mb-2">Programming languages</h3>
+ </div>
+ <div class="card-body">
+ <form method="post"
+ action="{{ as_url(routes.projects.view, name=project.name) }}"
+ class="mb-3">
+ {{ metadata_form.hidden_tag() if metadata_form.hidden_tag }}
+ {{ metadata_form.project_name() }}
+ <input type="hidden" name="submit_metadata" value="true" />
+
+ <div class="d-flex align-items-center mb-3">
+ {{ forms.widget(metadata_form.language_to_add,
classes="form-control form-control-sm me-2", placeholder="New language") }}
+ <button type="submit"
+ name="action"
+ value="add_language"
+ class="btn btn-sm btn-success text-nowrap pe-3">
+ <i class="bi bi-plus"></i> Add
+ </button>
+ </div>
+ {{ forms.errors(metadata_form.language_to_add) }}
+
+ <div class="d-flex flex-wrap gap-2 align-items-center">
+ {% set current_languages = project.programming_languages.split(",
") if project.programming_languages else [] %}
+ {% for lang in current_languages %}
+ <div class="badge bg-success d-flex align-items-center p-2">
+ <span>{{ lang }}</span>
+ <button type="submit"
+ name="action"
+ value="remove_language:{{ lang }}"
+ class="btn-close btn-close-white ms-2 page-remove-tag"
+ aria-label="Remove {{ lang }}"></button>
+ </div>
+ {% endfor %}
+ </div>
+ </form>
+ </div>
+ </div>
+ {% endif %}
+
{% if (is_committee_member or is_admin) %}
{% if candidate_drafts|length > 0 %}
<h2>Draft candidate releases</h2>
@@ -327,89 +411,6 @@
class="btn btn-sm btn-outline-primary">Create a sibling project</a>
</p>
{% endif %}
- {% if can_edit and metadata_form %}
- <div class="card mb-4">
- <div class="card-header bg-light">
- <h3 class="mb-2">Categories</h3>
- </div>
- <div class="card-body">
- <form method="post"
- action="{{ as_url(routes.projects.view, name=project.name) }}"
- class="mb-3">
- {{ metadata_form.hidden_tag() if metadata_form.hidden_tag }}
- {{ metadata_form.project_name() }}
- <input type="hidden" name="submit_metadata" value="true" />
-
- <div class="d-flex align-items-center mb-3">
- {{ forms.widget(metadata_form.category_to_add,
classes="form-control form-control-sm me-2", placeholder="New category") }}
- <button type="submit"
- name="action"
- value="add_category"
- class="btn btn-sm btn-success text-nowrap pe-3">
- <i class="bi bi-plus"></i> Add
- </button>
- </div>
- {{ forms.errors(metadata_form.category_to_add) }}
-
- <div class="d-flex flex-wrap gap-2 align-items-center">
- {% set current_categories = project.category.split(", ") if
project.category else [] %}
- {% for cat in current_categories %}
- <div class="badge bg-primary d-flex align-items-center p-2">
- <span>{{ cat }}</span>
- {% if cat not in forbidden_categories %}
- <button type="submit"
- name="action"
- value="remove_category:{{ cat }}"
- class="btn-close btn-close-white ms-2
page-remove-tag"
- aria-label="Remove {{ cat }}"></button>
- {% endif %}
- </div>
- {% endfor %}
- </div>
- </form>
- </div>
- </div>
-
- <div class="card mb-4">
- <div class="card-header bg-light">
- <h3 class="mb-2">Programming languages</h3>
- </div>
- <div class="card-body">
- <form method="post"
- action="{{ as_url(routes.projects.view, name=project.name) }}"
- class="mb-3">
- {{ metadata_form.hidden_tag() if metadata_form.hidden_tag }}
- {{ metadata_form.project_name() }}
- <input type="hidden" name="submit_metadata" value="true" />
-
- <div class="d-flex align-items-center mb-3">
- {{ forms.widget(metadata_form.language_to_add,
classes="form-control form-control-sm me-2", placeholder="New language") }}
- <button type="submit"
- name="action"
- value="add_language"
- class="btn btn-sm btn-success text-nowrap pe-3">
- <i class="bi bi-plus"></i> Add
- </button>
- </div>
- {{ forms.errors(metadata_form.language_to_add) }}
-
- <div class="d-flex flex-wrap gap-2 align-items-center">
- {% set current_languages =
project.programming_languages.split(", ") if project.programming_languages else
[] %}
- {% for lang in current_languages %}
- <div class="badge bg-success d-flex align-items-center p-2">
- <span>{{ lang }}</span>
- <button type="submit"
- name="action"
- value="remove_language:{{ lang }}"
- class="btn-close btn-close-white ms-2
page-remove-tag"
- aria-label="Remove {{ lang }}"></button>
- </div>
- {% endfor %}
- </div>
- </form>
- </div>
- </div>
- {% endif %}
{% endblock content %}
{% block javascripts %}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]