change post action to get action

This commit is contained in:
2022-01-23 20:53:06 +00:00
parent 0e53d93f50
commit a966ebda5b
3 changed files with 37 additions and 32 deletions

View File

@@ -19,13 +19,10 @@ class TaskManager(models.Manager):
)
qs = (qs | qs_tmp).distinct()
if not completed:
qs = qs.filter(completed=completed)
if task_list:
qs = qs.filter(task_list=task_list)
return qs
return qs.filter(completed=completed)
def get_queryset(self):
return TaskQuerySet(self.model, using=self._db)

View File

@@ -24,7 +24,7 @@ logger = logging.getLogger(__name__)
@authenticated_user
def index(request):
current_action = False
completed = False
tasklist = None
show_tasklist = None
show_all_tasks = True
@@ -39,34 +39,43 @@ def index(request):
task.completed_date = timezone.now().date()
task.save()
if "btn_user" in request.POST:
if request.POST["action"] == "show_incompleted":
current_action = False
else:
current_action = True
if request.POST["tasklist"] != "all":
tasklist = TaskList.objects.filter(id=request.POST["tasklist"]).first()
if request.method == "GET":
if "tasklist" in request.GET:
if request.GET["tasklist"] != "all":
tasklist = TaskList.objects.filter(id=request.GET["tasklist"]).first()
show_tasklist = tasklist.id
if request.POST["tasks"] == "all":
if "tasks" in request.GET:
if request.GET["tasks"] == "all":
show_all_tasks = True
else:
show_all_tasks = False
if "btn_state" in request.GET:
if request.GET["btn_state"] == "open":
completed = False
elif request.GET["btn_state"] == "close":
completed = True
tasks = Task.taskmanager.get_tasks(
user=request.user.id,
completed=current_action,
completed=completed,
task_list=tasklist,
all_tasks=show_all_tasks,
)
tasklists = TaskList.objects.all()
# TODO: very bad solution... try to do it better!
if completed == False:
completed = "open"
else:
completed = "close"
context = {
"tasks": tasks,
"tasklists": tasklists,
"current_user": request.user.id,
"current_action": current_action,
"completed": completed,
"show_tasklist": show_tasklist,
"show_all_tasks": show_all_tasks,
}

View File

@@ -9,10 +9,9 @@
</div>
<hr>
<form action="" method="post">
{% csrf_token %}
<form action="" method="get">
<div class="grid-x grid-margin-x">
<div class="cell medium-4 large-3 small-10">
<div class="cell large-4 medium-4 small-12">
<label>Task-Gruppe</label>
<select id="id_tasklist" name="tasklist">
<option value="all" {% if not show_tasklist %}selected{% endif %}>alle Task-Gruppen</option>
@@ -22,27 +21,27 @@
</select>
</div>
<div class="cell medium-4 large-3 small-10">
<div class="cell large-4 medium-4 small-12">
<label>Tasks</label>
<select id="id_task" name="tasks">
<option value="own" {% if not show_all_tasks %} selected {% endif %}>nur die eigenen Tasks</option>
<option value="all" {% if show_all_tasks %} selected {% endif %}>die an alle zugewiesenen Tasks</option>
<option value="own" {% if not show_all_tasks %}selected{% endif %}>eigenen Tasks</option>
<option value="all" {% if show_all_tasks %}selected{% endif %}>alle Tasks</option>
</select>
</div>
<div class="cell medium-4 large-3 small-10">
<label>Aktion</label>
<select id="id_action" name="action">
<option value="show_incompleted" {% if not current_action %} selected {% endif %}>offenen Tasks</option>
<option value="show_all" {% if current_action %} selected {% endif %}>alle Tasks</option>
</select>
<div class="cell large-4 medium-4 small-12 align-self-bottom">
<button type="submit" class="button" name="btn_state" value="{{ completed }}">Anzeigen</button>
</div>
<div class="cell medium-3 large-3 small-10 align-self-bottom">
<input type="submit" class="button" name="btn_user" value="Anzeigen">
<div class="cell large-4 medium-4 small-12 align-self-bottom">
<button type="submit" class="alert button" name="btn_state" value="open">Offene Tasks</button>
</div>
<div class="cell large-4 medium-4 small-12 align-self-bottom">
<button type="submit" class="success button" name="btn_state" value="close">Abgeschlossene Tasks</button>
</div>
</div>
</form>
<hr>
{% if tasks %}