fix
This commit is contained in:
parent
21b98735ce
commit
c824e52878
@ -1,6 +1,6 @@
|
|||||||
from functools import cached_property
|
from functools import cached_property
|
||||||
|
|
||||||
from django.contrib.auth.models import User, Group
|
from django.contrib.auth.models import User
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
|
@ -30,3 +30,7 @@ class MainView(BaseView):
|
|||||||
new_tasks = set(Task.objects.filter(public=True)) - set(all_tasks)
|
new_tasks = set(Task.objects.filter(public=True)) - set(all_tasks)
|
||||||
self.context['new_tasks'] = sample(new_tasks, k=min(5, len(new_tasks)))
|
self.context['new_tasks'] = sample(new_tasks, k=min(5, len(new_tasks)))
|
||||||
self.context['groups'] = Group.objects.filter(Q(editors__in=self.request.user.username) | Q(creator=self.request.user) | Q(users=self.request.user)).distinct()
|
self.context['groups'] = Group.objects.filter(Q(editors__in=self.request.user.username) | Q(creator=self.request.user) | Q(users=self.request.user)).distinct()
|
||||||
|
|
||||||
|
def post(self):
|
||||||
|
group = Group.objects.create(name=self.request.POST['name'], creator=self.request.user)
|
||||||
|
return '/group?group_id=' + str(group.id)
|
||||||
|
@ -2,7 +2,7 @@ import io
|
|||||||
from zipfile import ZipFile
|
from zipfile import ZipFile
|
||||||
|
|
||||||
from Main.models import Solution, Progress, SolutionFile
|
from Main.models import Solution, Progress, SolutionFile
|
||||||
from SprintLib.BaseView import BaseView
|
from SprintLib.BaseView import BaseView, AccessError
|
||||||
from SprintLib.queue import send_testing
|
from SprintLib.queue import send_testing
|
||||||
from SprintLib.utils import write_bytes
|
from SprintLib.utils import write_bytes
|
||||||
|
|
||||||
@ -23,6 +23,9 @@ class TaskView(BaseView):
|
|||||||
if hasattr(self.entities, 'setTask'):
|
if hasattr(self.entities, 'setTask'):
|
||||||
self.entities.add('task', self.entities.setTask.task)
|
self.entities.add('task', self.entities.setTask.task)
|
||||||
self.entities.add('set', self.entities.setTask.set)
|
self.entities.add('set', self.entities.setTask.set)
|
||||||
|
else:
|
||||||
|
if not self.entities.task.public and not self.entities.task.creator == self.request.user and not self.request.user.username in self.entities.task.editors:
|
||||||
|
raise AccessError()
|
||||||
if self.request.method == "GET":
|
if self.request.method == "GET":
|
||||||
return
|
return
|
||||||
self.solution = Solution.objects.create(
|
self.solution = Solution.objects.create(
|
||||||
|
@ -3,9 +3,48 @@
|
|||||||
{% block title %}Главная{% endblock %}
|
{% block title %}Главная{% endblock %}
|
||||||
|
|
||||||
{% block main %}
|
{% block main %}
|
||||||
<h2>Мои группы</h2>
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<h2>Мои группы</h2>
|
||||||
|
</td>
|
||||||
|
{% if user.userinfo.can_create %}
|
||||||
|
<td>
|
||||||
|
<button style="margin-left: 20px;" class="btn btn-success" data-toggle="modal" data-target="#example"><i class="fa fa-plus"></i></button>
|
||||||
|
<div class="modal fade" id="example" tabindex="-1" role="dialog" aria-labelledby="exampleModalLongTitle" aria-hidden="true">
|
||||||
|
<div class="modal-dialog" role="document">
|
||||||
|
<form method="POST">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h5 class="modal-title" id="exampleModalLongTitle">Создать новую группу</h5>
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="container-fluid">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
{% csrf_token %}
|
||||||
|
<input type="text" name="name" placeholder="Имя группы">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-danger" data-dismiss="modal"><i class="fa fa-times-circle"></i> Закрыть</button>
|
||||||
|
<button type="submit" class="btn btn-success"><i class="fa fa-plus-circle"></i> Создать</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
{% endif %}
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
{% for group in groups %}
|
{% for group in groups %}
|
||||||
<a href="/group?group_id={{ group.id }}">{{ group.name }}</a>
|
<a href="/group?group_id={{ group.id }}">{{ group.name }}</a><br>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
<hr><hr>
|
<hr><hr>
|
||||||
<h2>Топ задач сегодня</h2>
|
<h2>Топ задач сегодня</h2>
|
||||||
|
Loading…
Reference in New Issue
Block a user