From 08abf4b5318f84c4c996aa8d544e79f3e440ec60 Mon Sep 17 00:00:00 2001 From: Bach Dániel <bd@ik.bme.hu> Date: Mon, 27 Apr 2015 13:37:03 +0200 Subject: [PATCH] dashboard: use TimeFramedModel in Message --- circle/dashboard/context_processors.py | 7 +------ circle/dashboard/forms.py | 2 +- circle/dashboard/migrations/0003_message.py | 8 +++++--- circle/dashboard/models.py | 8 ++------ 4 files changed, 9 insertions(+), 16 deletions(-) diff --git a/circle/dashboard/context_processors.py b/circle/dashboard/context_processors.py index dff324a..b4def8f 100644 --- a/circle/dashboard/context_processors.py +++ b/circle/dashboard/context_processors.py @@ -16,8 +16,6 @@ # with CIRCLE. If not, see <http://www.gnu.org/licenses/>. from django.conf import settings -from django.db.models import Q -from django.utils import timezone from .models import Message @@ -38,7 +36,4 @@ def extract_settings(request): def broadcast_messages(request): - now = timezone.now() - messages = Message.objects.filter(enabled=True).exclude( - Q(starts_at__gt=now) | Q(ends_at__lt=now)) - return {'broadcast_messages': messages} + return {'broadcast_messages': Message.timeframed.filter(enabled=True)} diff --git a/circle/dashboard/forms.py b/circle/dashboard/forms.py index 43d619e..fcbc6eb 100644 --- a/circle/dashboard/forms.py +++ b/circle/dashboard/forms.py @@ -1629,7 +1629,7 @@ class DiskForm(ModelForm): class MessageForm(ModelForm): class Meta: model = Message - fields = ("message", "enabled", "effect", "starts_at", "ends_at") + fields = ("message", "enabled", "effect", "start", "end") @property def helper(self): diff --git a/circle/dashboard/migrations/0003_message.py b/circle/dashboard/migrations/0003_message.py index 4c8aa47..18adadf 100644 --- a/circle/dashboard/migrations/0003_message.py +++ b/circle/dashboard/migrations/0003_message.py @@ -19,14 +19,16 @@ class Migration(migrations.Migration): ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), ('created', model_utils.fields.AutoCreatedField(default=django.utils.timezone.now, verbose_name='created', editable=False)), ('modified', model_utils.fields.AutoLastModifiedField(default=django.utils.timezone.now, verbose_name='modified', editable=False)), + ('start', models.DateTimeField(null=True, verbose_name='start', blank=True)), + ('end', models.DateTimeField(null=True, verbose_name='end', blank=True)), ('message', models.CharField(max_length=500, verbose_name='message')), - ('starts_at', models.DateTimeField(null=True, verbose_name='starts at', blank=True)), - ('ends_at', models.DateTimeField(null=True, verbose_name='ends at', blank=True)), ('effect', models.CharField(default=b'info', max_length=10, verbose_name='effect', choices=[(b'success', 'success'), (b'info', 'info'), (b'warning', 'warning'), (b'danger', 'danger')])), ('enabled', models.BooleanField(default=False, verbose_name='enabled')), ], options={ - 'ordering': ['-ends_at'], + 'ordering': ['id'], + 'verbose_name': 'message', + 'verbose_name_plural': 'messages', }, bases=(models.Model,), ), diff --git a/circle/dashboard/models.py b/circle/dashboard/models.py index 5690704..4faf193 100644 --- a/circle/dashboard/models.py +++ b/circle/dashboard/models.py @@ -39,7 +39,7 @@ from django.core.exceptions import ObjectDoesNotExist from sizefield.models import FileSizeField from jsonfield import JSONField -from model_utils.models import TimeStampedModel +from model_utils.models import TimeFramedModel, TimeStampedModel from model_utils.fields import StatusField from model_utils import Choices @@ -59,12 +59,8 @@ def pwgen(): return User.objects.make_random_password() -class Message(TimeStampedModel): +class Message(TimeStampedModel, TimeFramedModel): message = CharField(max_length=500, verbose_name=_('message')) - starts_at = DateTimeField( - null=True, blank=True, verbose_name=_('starts at')) - ends_at = DateTimeField( - null=True, blank=True, verbose_name=_('ends at')) effect = CharField( default='info', max_length=10, verbose_name=_('effect'), choices=(('success', _('success')), ('info', _('info')), -- libgit2 0.26.0