Reorder fields
This commit is contained in:
+46
-45
@@ -24,15 +24,15 @@ EMAIL_REGEX = r"(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)"
|
||||
class Tag(models.Model):
|
||||
"""Model for tag."""
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Tag")
|
||||
verbose_name_plural = _("Tags")
|
||||
|
||||
id = models.AutoField(primary_key=True)
|
||||
slug = models.SlugField(unique=True)
|
||||
name = models.CharField(max_length=127)
|
||||
icon = models.ImageField()
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Tag")
|
||||
verbose_name_plural = _("Tags")
|
||||
|
||||
def __str__(self):
|
||||
return _("Tag: {}").format(self.slug)
|
||||
|
||||
@@ -41,9 +41,10 @@ class BaseFeed(models.Model):
|
||||
"""Model containing something showing on some info feed."""
|
||||
|
||||
id = models.AutoField(primary_key=True)
|
||||
title = models.CharField(max_length=255)
|
||||
tags = models.ManyToManyField(Tag, related_name="feeds", blank=True)
|
||||
visible = models.BooleanField(default=True)
|
||||
title = models.CharField(max_length=255)
|
||||
|
||||
description = models.CharField(max_length=255)
|
||||
content = models.TextField()
|
||||
image = models.ImageField(blank=True, null=True)
|
||||
@@ -52,21 +53,20 @@ class BaseFeed(models.Model):
|
||||
class Feed(BaseFeed):
|
||||
"""Model representing feed."""
|
||||
|
||||
deleted = models.BooleanField(default=False)
|
||||
publish_time = models.DateTimeField(default=timezone.now)
|
||||
autohide = models.DateTimeField(default=month_from_now)
|
||||
autohide_enabled = models.BooleanField(default=False)
|
||||
__previousVisible = False
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Feed")
|
||||
verbose_name_plural = _("Feeds")
|
||||
|
||||
publish_time = models.DateTimeField(default=timezone.now)
|
||||
autohide = models.DateTimeField(default=month_from_now)
|
||||
autohide_enabled = models.BooleanField(default=False)
|
||||
deleted = models.BooleanField(default=False)
|
||||
|
||||
def __str__(self):
|
||||
delete_str = _("Deleted: ") if self.deleted else ""
|
||||
return _("{}Feed: {}").format(delete_str, self.title)
|
||||
|
||||
__previousVisible = False
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(Feed, self).__init__(*args, **kwargs)
|
||||
self.__previousVisible = self.visible
|
||||
@@ -90,22 +90,21 @@ class Feed(BaseFeed):
|
||||
class Event(BaseFeed):
|
||||
"""Model for event in guild calendar"""
|
||||
|
||||
deleted = models.BooleanField(default=False)
|
||||
start_time = models.DateTimeField(default=timezone.now)
|
||||
end_time = models.DateTimeField(default=timezone.now)
|
||||
location = models.CharField(max_length=255, blank=True)
|
||||
signupForm = models.ManyToManyField("SignupForm", blank=True, related_name="event")
|
||||
__previousVisible = False
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Event")
|
||||
verbose_name_plural = _("Events")
|
||||
|
||||
start_time = models.DateTimeField(default=timezone.now)
|
||||
end_time = models.DateTimeField(default=timezone.now)
|
||||
signupForm = models.ManyToManyField("SignupForm", blank=True, related_name="event")
|
||||
location = models.CharField(max_length=255, blank=True)
|
||||
deleted = models.BooleanField(default=False)
|
||||
|
||||
def __str__(self):
|
||||
delete_str = _("Deleted: ") if self.deleted else ""
|
||||
return _("{}Event: {}").format(delete_str, self.title)
|
||||
|
||||
__previousVisible = False
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(Event, self).__init__(*args, **kwargs)
|
||||
self.__previousVisible = self.visible
|
||||
@@ -131,15 +130,15 @@ class TemplateQuestion(models.Model):
|
||||
Stores template questions for signup forms as JSON format. Used in signup form creation.
|
||||
"""
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Template question")
|
||||
verbose_name_plural = _("Template questions")
|
||||
|
||||
id = models.AutoField(primary_key=True)
|
||||
name = models.CharField(max_length=255)
|
||||
questions = JSONField()
|
||||
deleted = models.BooleanField(default=False)
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Template question")
|
||||
verbose_name_plural = _("Template questions")
|
||||
|
||||
def __str__(self):
|
||||
return _("Template questions: {}").format(self.name)
|
||||
|
||||
@@ -147,20 +146,20 @@ class TemplateQuestion(models.Model):
|
||||
class SignupForm(models.Model):
|
||||
"""Model for event signup form. Stores questions in JSON format."""
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Signup form")
|
||||
verbose_name_plural = _("Signup forms")
|
||||
|
||||
id = models.AutoField(primary_key=True)
|
||||
title = models.CharField(max_length=255)
|
||||
deleted = models.BooleanField(default=False)
|
||||
visible = models.BooleanField(default=True)
|
||||
start_time = models.DateTimeField(default=timezone.now)
|
||||
end_time = models.DateTimeField(default=timezone.now)
|
||||
questions = JSONField()
|
||||
schema = JSONField()
|
||||
visible = models.BooleanField(default=True)
|
||||
quota = models.PositiveIntegerField(blank=True, null=True)
|
||||
email_content = models.TextField(blank=True)
|
||||
deleted = models.BooleanField(default=False)
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Signup form")
|
||||
verbose_name_plural = _("Signup forms")
|
||||
|
||||
def __str__(self):
|
||||
delete_str = _("Deleted: ") if self.deleted else ""
|
||||
@@ -181,12 +180,9 @@ class Signup(models.Model):
|
||||
Actual signup into any SignupForm. Deletes are soft.
|
||||
"""
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Sign-up")
|
||||
verbose_name_plural = _("Sign-ups")
|
||||
|
||||
id = models.AutoField(primary_key=True)
|
||||
signupForm = models.ForeignKey("SignupForm", on_delete=models.CASCADE)
|
||||
deleted = models.BooleanField(default=False)
|
||||
time = models.DateTimeField(default=timezone.now)
|
||||
answer = JSONField()
|
||||
# Answer we use in signupForm signups field. Frontend uses first questions answer as this value.
|
||||
@@ -195,7 +191,11 @@ class Signup(models.Model):
|
||||
email = models.EmailField(blank=True, null=True)
|
||||
# Random unique identifier. Used for signup editing by the user.
|
||||
uuid = models.UUIDField(default=uuid4, editable=False)
|
||||
deleted = models.BooleanField(default=False)
|
||||
signupForm = models.ForeignKey("SignupForm", on_delete=models.CASCADE)
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Sign-up")
|
||||
verbose_name_plural = _("Sign-ups")
|
||||
|
||||
def __str__(self):
|
||||
delete_str = _("Deleted: ") if self.deleted else ""
|
||||
@@ -225,20 +225,21 @@ def email_on_signup(sender, instance, created, **kwargs):
|
||||
class JobAd(models.Model):
|
||||
"""Job advertisements shown on Corporate relations page"""
|
||||
|
||||
id = models.AutoField(primary_key=True)
|
||||
title = models.CharField(max_length=255)
|
||||
visible = models.BooleanField(default=True)
|
||||
deleted = models.BooleanField(default=False)
|
||||
autohide_at = models.DateTimeField(default=month_from_now)
|
||||
autohide_enabled = models.BooleanField(default=False)
|
||||
|
||||
description = models.CharField(max_length=255)
|
||||
content = models.TextField()
|
||||
created_at = models.DateTimeField(default=timezone.now)
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("JobAd")
|
||||
verbose_name_plural = _("JobAds")
|
||||
|
||||
id = models.AutoField(primary_key=True)
|
||||
title = models.CharField(max_length=255)
|
||||
description = models.CharField(max_length=255)
|
||||
content = models.TextField()
|
||||
visible = models.BooleanField(default=True)
|
||||
created_at = models.DateTimeField(default=timezone.now)
|
||||
autohide_at = models.DateTimeField(default=month_from_now)
|
||||
autohide_enabled = models.BooleanField(default=False)
|
||||
deleted = models.BooleanField(default=False)
|
||||
|
||||
def __str__(self):
|
||||
delete_str = _("Deleted: ") if self.deleted else ""
|
||||
return f"{delete_str}{self.title}"
|
||||
|
||||
@@ -4,6 +4,11 @@ from modeltranslation.translator import register, TranslationOptions
|
||||
from webapp.models import *
|
||||
|
||||
|
||||
@register(Tag)
|
||||
class TagTranslationOptions(TranslationOptions):
|
||||
fields = ("name",)
|
||||
|
||||
|
||||
@register(BaseFeed)
|
||||
class BaseFeedTranslationOptions(TranslationOptions):
|
||||
fields = ("title", "description", "content")
|
||||
@@ -14,18 +19,13 @@ class FeedTranslationOptions(TranslationOptions):
|
||||
fields = ()
|
||||
|
||||
|
||||
@register(Tag)
|
||||
class TagTranslationOptions(TranslationOptions):
|
||||
fields = ("name",)
|
||||
|
||||
|
||||
@register(Event)
|
||||
class EventTranslationOptions(TranslationOptions):
|
||||
fields = ("location",)
|
||||
|
||||
|
||||
@register(Signup)
|
||||
class SignupTranslationOptions(TranslationOptions):
|
||||
@register(TemplateQuestion)
|
||||
class TemplateQuestionTranslationOptions(TranslationOptions):
|
||||
fields = ()
|
||||
|
||||
|
||||
@@ -34,8 +34,8 @@ class SignupFormTranslationOptions(TranslationOptions):
|
||||
fields = ("title",)
|
||||
|
||||
|
||||
@register(TemplateQuestion)
|
||||
class TemplateQuestionTranslationOptions(TranslationOptions):
|
||||
@register(Signup)
|
||||
class SignupTranslationOptions(TranslationOptions):
|
||||
fields = ()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user