editors
This commit is contained in:
parent
dbb26ade43
commit
90d3316ab6
@ -85,3 +85,16 @@ class SetSettingsView(BaseView):
|
||||
return "/admin/set?set_id=" + str(self.current_set.id)
|
||||
self.current_set.save()
|
||||
return "/admin/set?set_id=" + str(self.current_set.id)
|
||||
|
||||
def post_users_edit(self):
|
||||
current_users = self.entities.set.editors
|
||||
for key, value in self.request.POST.items():
|
||||
if key.startswith("user_"):
|
||||
i = '_'.join(key.split("_")[1:])
|
||||
if i not in current_users:
|
||||
self.entities.set.editors.append(i)
|
||||
to_delete = [i for i in current_users if "user_" + i not in self.request.POST]
|
||||
for t in to_delete:
|
||||
self.entities.set.editors.remove(t)
|
||||
self.entities.set.save()
|
||||
return "/admin/task?task_id=" + str(self.entities.task.id)
|
@ -95,3 +95,16 @@ class TaskSettingsView(BaseView):
|
||||
ef.is_sample = "is_sample" in self.request.POST.keys()
|
||||
ef.save()
|
||||
return f"/admin/task?task_id={self.entities.task.id}"
|
||||
|
||||
def post_users_edit(self):
|
||||
current_users = self.entities.task.editors
|
||||
for key, value in self.request.POST.items():
|
||||
if key.startswith("user_"):
|
||||
i = '_'.join(key.split("_")[1:])
|
||||
if i not in current_users:
|
||||
self.entities.task.editors.append(i)
|
||||
to_delete = [i for i in current_users if "user_" + i not in self.request.POST]
|
||||
for t in to_delete:
|
||||
self.entities.task.editors.remove(t)
|
||||
self.entities.task.save()
|
||||
return "/admin/task?task_id=" + str(self.entities.task.id)
|
||||
|
@ -86,4 +86,40 @@
|
||||
<button class="btn btn-light"><i class="fa fa-save"></i> Сохранить</button>
|
||||
</form>
|
||||
<hr><hr>
|
||||
<h3>Редакторы</h3>
|
||||
{% for editor in set.editors %}
|
||||
<i class="fa fa-user"></i> <a href="/account?username={{ editor }}">{{ editor }}</a><br>
|
||||
{% endfor %}
|
||||
<button type="button" class="btn btn-primary" style="margin-top: 20px;" data-toggle="modal" data-target="#exampleU"><i class="fa fa-pencil"></i> Редактировать</button>
|
||||
<div class="modal fade" id="exampleU" tabindex="-1" role="dialog" aria-labelledby="exampleModalLongTitleU" 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="exampleModalLongTitleU">Редактировать редакторов таска</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="hidden" name="action" value="users_edit">
|
||||
{% for u in user.userinfo.verified_friends %}
|
||||
<input type="checkbox" {% if u.username in set.editors %}checked{% endif %} name="user_{{ u.username }}"> <a href="/account?username={{ u.username }}">{{ u.username }}</a><br>
|
||||
{% endfor %}
|
||||
</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-check"></i> Установить</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
@ -1 +1 @@
|
||||
<h2>{{ task.name }}<span style="margin-left: 15px;" class="badge badge-{% if progress.finished %}success{% else %}danger{% endif %}">{{ progress.time }}</span></h2>
|
||||
<h2>{{ task.name }}{% 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>{% endif %}<span style="margin-left: 15px;" class="badge badge-{% if progress.finished %}success{% else %}danger{% endif %}">{{ progress.time }}</span></h2>
|
@ -123,6 +123,38 @@
|
||||
{% for editor in task.editors %}
|
||||
<i class="fa fa-user"></i> <a href="/account?username={{ editor }}">{{ editor }}</a><br>
|
||||
{% endfor %}
|
||||
<button type="button" class="btn btn-primary" style="margin-top: 20px;" data-toggle="modal" data-target="#exampleU"><i class="fa fa-pencil"></i> Редактировать</button>
|
||||
<div class="modal fade" id="exampleU" tabindex="-1" role="dialog" aria-labelledby="exampleModalLongTitleU" 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="exampleModalLongTitleU">Редактировать редакторов таска</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="hidden" name="action" value="users_edit">
|
||||
{% for u in user.userinfo.verified_friends %}
|
||||
<input type="checkbox" {% if u.username in task.editors %}checked{% endif %} name="user_{{ u.username }}"> <a href="/account?username={{ u.username }}">{{ u.username }}</a><br>
|
||||
{% endfor %}
|
||||
</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-check"></i> Установить</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr><hr>
|
||||
<h3 style="margin-bottom: 40px;">Загрузка тестов и файлов</h3>
|
||||
<p style="color: red">{{ error_message }}</p>
|
||||
|
Loading…
Reference in New Issue
Block a user