This commit is contained in:
Egor Matveev 2022-01-22 15:08:12 +03:00
parent cabbace972
commit a49ecded94
5 changed files with 23 additions and 8 deletions

View File

@ -1,4 +1,15 @@
from django import template
from Main.models import Solution
register = template.Library()
@register.filter('solved')
def solved(user, task):
solutions = Solution.objects.filter(user=user, task=task)
if len(solutions.filter(result='OK')) != 0:
return True
if len(solutions) != 0:
return False
return None

View File

@ -7,9 +7,6 @@ class TasksView(BaseView):
required_login = True
endpoint = "tasks"
def get(self):
self.context["tasks"] = Task.objects.filter(public=True).order_by('-time_estimation')
def post(self):
task_name = self.request.POST["name"]
task = Task.objects.create(name=task_name, creator=self.request.user)

View File

@ -4,11 +4,14 @@
{% block main %}
<h3>{{ set.name }}</h3>
<p>{{ set.description }}</p>
<h4>Таски</h4>
{% for settask in set.settasks_ordered %}
<a href="/task?setTask_id={{ settask.id }}">{{ settask.name }}. {{ settask.task.name }}</a><br>
{% endfor %}
<hr><hr>
Время начала: {% if not set.start_time %}без ограничений{% else %}{{ set.start_time_moscow }}{% endif %}<br>
Время окончания: {% if not set.end_time %}без ограничений{% else %}{{ set.end_time_moscow }}{% endif %}
Время начала: <b>{% if not set.start_time %}без ограничений{% else %}{{ set.start_time_moscow }}{% endif %}</b><br>
Время окончания: <b>{% if not set.end_time %}без ограничений{% else %}{{ set.end_time_moscow }}{% endif %}</b><br>
Публичность: <b>{% if set.public %}публично{% else %}приватно{% endif %}</b><br>
Открытость: <b>{% if set.opened %}открыто{% else %}закрыто{% endif %} для просмотра и решения</b><br>
{% endblock %}

View File

@ -13,7 +13,7 @@
<form method="POST">
{% csrf_token %}
<input type="hidden" name="action" value="save">
<h3><input name="name" value="{{ set.name }}"></h3>
<h3><input name="name" placeholder="Название" value="{{ set.name }}"></h3>
<textarea id="input0" style="width: 1000px; height: 400px; resize: none;" name="description" placeholder="Описание">{{ set.description }}</textarea>
<h4>Таски</h4>
{% for settask in settasks %}

View File

@ -2,6 +2,8 @@
{% block title %}Задачи{% endblock %}
{% load filters %}
{% block main %}
<table>
<tr>
@ -43,7 +45,9 @@
{% endif %}
</tr>
</table>
{% for task in tasks %}
<a href="/task?task_id={{ task.id }}">{{ task.name }}</a> {% if task.creator == user or user.username in task.editors %}<a href="/admin/task?task_id={{ task.id }}"><i class="fa fa-pencil"></i> </a><a href="/solutions?task_id={{ task.id }}"><i class="fa fa-stack-overflow"></i> </a>{% endif %}<br>
{% for task in user.userinfo.available_tasks %}
{% with result=user|solved:task %}
<a href="/task?task_id={{ task.id }}" style="color: {% if result %}green{% else %}{% if result == False %}red{% else %}#307df6{% endif %}{% endif %};"">{{ task.name }}</a> {% if task.creator == user or user.username in task.editors %}<a href="/admin/task?task_id={{ task.id }}"><i class="fa fa-pencil"></i> </a><a href="/solutions?task_id={{ task.id }}"><i class="fa fa-stack-overflow"></i> </a>{% endif %}<br>
{% endwith %}
{% endfor %}
{% endblock %}