Add concept of 'open' (neither resolved nor muted)

and push Resolved down in the tab-order (it's less likely relevant than
muted issues are)
This commit is contained in:
Klaas van Schelven
2024-03-08 20:18:28 +01:00
parent 43207d417a
commit 5e49fdd0dd
3 changed files with 6 additions and 3 deletions

View File

@@ -12,9 +12,10 @@
<div class="flex bg-slate-50 border-b-2 mt-4 items-end">
<div class="flex">
<a href="{% url "issue_list_open" project_id=project.id %}"><div class="p-4 font-bold hover:bg-slate-200 {% if state_filter == "open" %}text-cyan-500 border-cyan-500 border-b-4 {% else %}text-slate-500 hover:border-b-4 hover:border-slate-400{% endif %}">Open</div></a>
<a href="{% url "issue_list_unresolved" project_id=project.id %}"><div class="p-4 font-bold hover:bg-slate-200 {% if state_filter == "unresolved" %}text-cyan-500 border-cyan-500 border-b-4 {% else %}text-slate-500 hover:border-b-4 hover:border-slate-400{% endif %}">Unresolved</div></a>
<a href="{% url "issue_list_resolved" project_id=project.id %}"><div class="p-4 font-bold hover:bg-slate-200 {% if state_filter == "resolved" %}text-cyan-500 border-cyan-500 border-b-4 {% else %}text-slate-500 hover:border-slate-400 hover:border-b-4{% endif %}">Resolved</div></a>
<a href="{% url "issue_list_muted" project_id=project.id %}"><div class="p-4 font-bold hover:bg-slate-200 {% if state_filter == "muted" %}text-cyan-500 border-cyan-500 border-b-4{% else %}text-slate-500 hover:border-slate-400 hover:border-b-4{% endif %}">Muted</div></a>
<a href="{% url "issue_list_resolved" project_id=project.id %}"><div class="p-4 font-bold hover:bg-slate-200 {% if state_filter == "resolved" %}text-cyan-500 border-cyan-500 border-b-4 {% else %}text-slate-500 hover:border-slate-400 hover:border-b-4{% endif %}">Resolved</div></a>
<a href="{% url "issue_list_all" project_id=project.id %}"><div class="p-4 font-bold hover:bg-slate-200 {% if state_filter == "all" %}text-cyan-500 border-cyan-500 border-b-4{% else %}text-slate-500 hover:border-slate-400 hover:border-b-4{% endif %}">All</div></a>
</div>
<div class="ml-auto p-2">

View File

@@ -3,7 +3,8 @@ from django.urls import path
from .views import issue_list, issue_event_detail, issue_last_event, issue_event_list
urlpatterns = [
path('<int:project_id>/', issue_list, {"state_filter": "unresolved"}, name="issue_list_unresolved"),
path('<int:project_id>/', issue_list, {"state_filter": "open"}, name="issue_list_open"),
path('<int:project_id>/unresolved', issue_list, {"state_filter": "unresolved"}, name="issue_list_unresolved"),
path('<int:project_id>/resolved/', issue_list, {"state_filter": "resolved"}, name="issue_list_resolved"),
path('<int:project_id>/muted/', issue_list, {"state_filter": "muted"}, name="issue_list_muted"),
path('<int:project_id>/all/', issue_list, {"state_filter": "all"}, name="issue_list_all"),

View File

@@ -26,7 +26,7 @@ GLOBAL_MUTE_OPTIONS = [
]
def issue_list(request, project_id, state_filter="unresolved"):
def issue_list(request, project_id, state_filter="open"):
if request.method == "POST":
issue_ids = request.POST.getlist('issue_ids[]')
for issue_id in issue_ids:
@@ -64,6 +64,7 @@ def issue_list(request, project_id, state_filter="unresolved"):
issue.save()
d_state_filter = {
"open": lambda qs: qs.filter(is_resolved=False, is_muted=False),
"unresolved": lambda qs: qs.filter(is_resolved=False),
"resolved": lambda qs: qs.filter(is_resolved=True),
"muted": lambda qs: qs.filter(is_muted=True),