diff --git a/Main/models/task.py b/Main/models/task.py index 2f646f0..f5394c1 100644 --- a/Main/models/task.py +++ b/Main/models/task.py @@ -1,3 +1,4 @@ +from django.contrib.postgres.fields import ArrayField from django.db import models from django.contrib.auth.models import User @@ -14,6 +15,7 @@ class Task(models.Model): time_limit = models.IntegerField(default=10000) time_estimation = models.IntegerField(default=5) creator = models.ForeignKey(User, on_delete=models.SET_NULL, null=True) + editors = ArrayField(models.TextField(), default=list) def __str__(self): return self.name diff --git a/Main/views/TasksView.py b/Main/views/TasksView.py index e00e856..2c2bba2 100644 --- a/Main/views/TasksView.py +++ b/Main/views/TasksView.py @@ -7,6 +7,9 @@ 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) diff --git a/Main/views/UsersView.py b/Main/views/UsersView.py new file mode 100644 index 0000000..1369325 --- /dev/null +++ b/Main/views/UsersView.py @@ -0,0 +1,18 @@ +from django.contrib.auth.models import User + +from SprintLib.BaseView import BaseView + + +class UsersView(BaseView): + endpoint = "users" + + def get(self): + startswith = self.request.GET.get("startswith", "") + return { + "users": [ + user.username + for user in User.objects.filter( + username__startswith=startswith + ).order_by("username") + ] + } diff --git a/Main/views/__init__.py b/Main/views/__init__.py index f4e2f68..50fc0a8 100644 --- a/Main/views/__init__.py +++ b/Main/views/__init__.py @@ -13,3 +13,4 @@ from Main.views.SolutionView import SolutionView from Main.views.ImageView import ImageView from Main.views.SendCodeView import SendCodeView from Main.views.SetSettingsView import SetSettingsView +from Main.views.UsersView import UsersView \ No newline at end of file diff --git a/templates/task_settings.html b/templates/task_settings.html index 50eb5c3..87a833c 100644 --- a/templates/task_settings.html +++ b/templates/task_settings.html @@ -94,6 +94,11 @@
{{ error_message }}