From cabbace9722edd0ec6ee3b28a593b6e3157313a0 Mon Sep 17 00:00:00 2001 From: Egor Matveev Date: Sat, 22 Jan 2022 12:04:30 +0300 Subject: [PATCH] description --- Main/migrations/0015_set_description.py | 18 ++++++++++++++++++ Main/models/set.py | 17 +++++++++++++++-- Main/views/SetSettingsView.py | 1 + templates/set.html | 3 +++ templates/set_settings.html | 1 + 5 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 Main/migrations/0015_set_description.py diff --git a/Main/migrations/0015_set_description.py b/Main/migrations/0015_set_description.py new file mode 100644 index 0000000..a5eca82 --- /dev/null +++ b/Main/migrations/0015_set_description.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.4 on 2022-01-22 09:03 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('Main', '0014_auto_20220120_1648'), + ] + + operations = [ + migrations.AddField( + model_name='set', + name='description', + field=models.TextField(default=''), + ), + ] diff --git a/Main/models/set.py b/Main/models/set.py index 3fd352f..361c880 100644 --- a/Main/models/set.py +++ b/Main/models/set.py @@ -16,18 +16,31 @@ class Set(models.Model): start_time = models.DateTimeField(default=None, null=True) end_time = models.DateTimeField(default=None, null=True) editors = ArrayField(models.TextField(), default=list) + description = models.TextField(default='') + + @property + def start_time_moscow(self): + if self.start_time is None: + return None + return self.start_time.astimezone(timezone.get_current_timezone()) + + @property + def end_time_moscow(self): + if self.end_time is None: + return None + return self.end_time.astimezone(timezone.get_current_timezone()) @property def start_time_format(self): if self.start_time is None: return None - return self.start_time.astimezone(timezone.get_current_timezone()).strftime("%Y-%m-%dT%H:%M") + return self.start_time_moscow.strftime("%Y-%m-%dT%H:%M") @property def end_time_format(self): if self.end_time is None: return None - return self.end_time.astimezone(timezone.get_current_timezone()).strftime("%Y-%m-%dT%H:%M") + return self.end_time_moscow.strftime("%Y-%m-%dT%H:%M") @property def available(self): diff --git a/Main/views/SetSettingsView.py b/Main/views/SetSettingsView.py index 56e8820..3ca4848 100644 --- a/Main/views/SetSettingsView.py +++ b/Main/views/SetSettingsView.py @@ -44,6 +44,7 @@ class SetSettingsView(BaseView): st.name = value st.save() self.current_set.name = self.request.POST["name"] + self.current_set.description = self.request.POST['description'] self.current_set.save() return "/admin/set?set_id=" + str(self.current_set.id) diff --git a/templates/set.html b/templates/set.html index 77d1463..cec06b9 100644 --- a/templates/set.html +++ b/templates/set.html @@ -8,4 +8,7 @@ {% for settask in set.settasks_ordered %} {{ settask.name }}. {{ settask.task.name }}
{% endfor %} +

+ Время начала: {% if not set.start_time %}без ограничений{% else %}{{ set.start_time_moscow }}{% endif %}
+ Время окончания: {% if not set.end_time %}без ограничений{% else %}{{ set.end_time_moscow }}{% endif %} {% endblock %} \ No newline at end of file diff --git a/templates/set_settings.html b/templates/set_settings.html index 3321ec1..b496590 100644 --- a/templates/set_settings.html +++ b/templates/set_settings.html @@ -14,6 +14,7 @@ {% csrf_token %}

+

Таски

{% for settask in settasks %} {% if settask.task.creator == user or user.username in settask.task.editors %}{{ settask.task.name }}{% else %}{{ settask.task.name }}{% endif %}