default priority
This commit is contained in:
parent
33c721c5a6
commit
4c7a81e076
@ -54,6 +54,8 @@ def get_tickets(request):
|
||||
queryset = Ticket.objects.all()
|
||||
|
||||
for key, values in filters.items():
|
||||
print(key, values)
|
||||
|
||||
for value in values:
|
||||
queryset = queryset.filter(**{key: [value]})
|
||||
|
||||
|
@ -29,13 +29,27 @@
|
||||
<h6>Priorities</h6>
|
||||
</li>
|
||||
|
||||
<li id="filterPriorityAll" class="nav-item filter-priority">
|
||||
<label for="filterPriority-all" class="nav-link c-grey-800 cH-blue-500 actived">
|
||||
<div class="peers ai-c jc-sb">
|
||||
<div class="peer peer-greed">
|
||||
<input type="radio" id="filterPriority-all" name="filterPriorities" class="form-check-input me-2" checked="checked" value="all">
|
||||
<span>All</span>
|
||||
</div>
|
||||
<div class="peer">
|
||||
<span class="badge rounded-pill bgc-green-50 c-green-700">0</span>
|
||||
</div>
|
||||
</div>
|
||||
</label>
|
||||
</li>
|
||||
|
||||
{% for priority in priorities %}
|
||||
|
||||
<li class="nav-item filter-priority" data-uuid="{{ priority.id }}">
|
||||
<li class="nav-item filter-priority">
|
||||
<label for="filterPriority-{{ priority.id }}" class="nav-link c-grey-800 cH-blue-500 actived">
|
||||
<div class="peers ai-c jc-sb">
|
||||
<div class="peer peer-greed">
|
||||
<input type="checkbox" id="filterPriority-{{ priority.id }}" class="form-check-input me-2">
|
||||
<input type="radio" id="filterPriority-{{ priority.id }}" name="filterPriorities" class="form-check-input me-2" value="{{ priority.id }}">
|
||||
<span>{{ priority.title }}</span>
|
||||
</div>
|
||||
<div class="peer">
|
||||
@ -57,11 +71,11 @@
|
||||
|
||||
{% for tag in tags %}
|
||||
|
||||
<li class="nav-item filter-tag" data-uuid="{{ tag.id }}">
|
||||
<li class="nav-item filter-tag">
|
||||
<label for="filterTag-{{ tag.id }}" class="nav-link c-grey-800 cH-blue-500 actived">
|
||||
<div class="peers ai-c jc-sb">
|
||||
<div class="peer peer-greed">
|
||||
<input type="checkbox" id="filterTag-{{ tag.id }}" class="form-check-input me-2">
|
||||
<input type="checkbox" id="filterTag-{{ tag.id }}" class="form-check-input me-2" value="{{ priority.id }}">
|
||||
<span>{{ tag.title }}</span>
|
||||
</div>
|
||||
<div class="peer">
|
||||
@ -83,11 +97,11 @@
|
||||
|
||||
{% for department in departments %}
|
||||
|
||||
<li class="nav-item filter-department" data-uuid="{{ department.id }}">
|
||||
<li class="nav-item filter-department">
|
||||
<label for="filterDepartment-{{ department.id }}" class="nav-link c-grey-800 cH-blue-500 actived">
|
||||
<div class="peers ai-c jc-sb">
|
||||
<div class="peer peer-greed">
|
||||
<input type="checkbox" id="filterDepartment-{{ department.id }}" class="form-check-input me-2">
|
||||
<input type="checkbox" id="filterDepartment-{{ department.id }}" class="form-check-input me-2" value="{{ department.id }}">
|
||||
<span>{{ department.title }}</span>
|
||||
</div>
|
||||
<div class="peer">
|
||||
@ -297,7 +311,7 @@
|
||||
</div>
|
||||
<div class="mb-3">
|
||||
<label for="newDesc" class="form-label">Description</label>
|
||||
<div id="newDesc" class="form-control"></div>
|
||||
<div id="newDesc" class="form-control"></div>
|
||||
<small class="text-muted">Describe your issue in detail here.</small>
|
||||
<!-- class="form-control" -->
|
||||
</div>
|
||||
@ -311,7 +325,7 @@
|
||||
<small class="text-muted">How important is this ticket?</small>
|
||||
</div>
|
||||
<div class="mb-3">
|
||||
<label for="newTagss" class="form-label">Tags</label>
|
||||
<label for="newTags" class="form-label">Tags</label>
|
||||
<select name="newTags" id="newTags" class="select-2" multiple="multiple">
|
||||
{% for tag in tags %}
|
||||
<option value="{{ tag.id }}">{{ tag.title }}</option>
|
||||
@ -348,6 +362,11 @@
|
||||
console.error(error)
|
||||
});
|
||||
|
||||
// $("#filterPriorityAll").click(function() {
|
||||
// delete filters[".filter-priority"];
|
||||
// loadAllTickets();
|
||||
// });
|
||||
|
||||
setupFilter("#filterSidebar .filter-department", "author__department__in");
|
||||
setupFilter("#filterSidebar .filter-tag", "tags__in")
|
||||
setupFilter("#filterSidebar .filter-priority", "priority__in")
|
||||
@ -358,17 +377,23 @@
|
||||
|
||||
function setupFilter(selector, key) {
|
||||
$(selector).each(function () {
|
||||
var uuid = $(this).data("uuid");
|
||||
var checkbox = $(this).find("input[type=checkbox]");
|
||||
checkbox.on("change", function () {
|
||||
if ($(this).is(":checked")) {
|
||||
filters[key] = filters[key] || [];
|
||||
filters[key].push(uuid);
|
||||
} else {
|
||||
filters[key].splice(filters[key].indexOf(uuid), 1);
|
||||
if (filters[key].length === 0) {
|
||||
delete filters[key];
|
||||
var uuid = $(this).val();
|
||||
var input = $(this).find("input[type=checkbox], input[type=radio]");
|
||||
|
||||
input.on("change", function () {
|
||||
if (input.is(":checkbox")) {
|
||||
if ($(this).is(":checked")) {
|
||||
filters[key] = filters[key] || [];
|
||||
filters[key].push(uuid);
|
||||
} else {
|
||||
// filters[key].splice(filters[key].indexOf(uuid), 1);
|
||||
filters[key] = filters[key].filter(id => id !== uuid);
|
||||
if (filters[key].length === 0) {
|
||||
delete filters[key];
|
||||
}
|
||||
}
|
||||
} else if (input.is(":radio") && input.is(":checked")) {
|
||||
filters[key] = [uuid];
|
||||
}
|
||||
|
||||
loadAllTickets();
|
||||
@ -426,6 +451,8 @@
|
||||
updateFilterCounts('priority', data);
|
||||
updateFilterCounts('tag', data);
|
||||
updateFilterCounts('department', data);
|
||||
$("#filterPriorityAll .badge").text(data.ticket_count);
|
||||
|
||||
},
|
||||
error: function(data) {
|
||||
alert(JSON.stringify(data, null, 4))
|
||||
|
Loading…
x
Reference in New Issue
Block a user