Remove duplicate code
This commit is contained in:
+32
-48
@@ -53,39 +53,44 @@ class BaseFeed(models.Model):
|
||||
content = models.TextField()
|
||||
image = models.ImageField(blank=True, null=True)
|
||||
|
||||
webhookUrl = ""
|
||||
hookType = ""
|
||||
previousVisible = False
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(BaseFeed, self).__init__(*args, **kwargs)
|
||||
self.previousVisible = self.visible
|
||||
|
||||
def __str__(self):
|
||||
delete_str = _("Deleted: ") if self.deleted else ""
|
||||
return _("{}{}: {}").format(delete_str, self._meta.verbose_name, self.title)
|
||||
|
||||
def save(self, force_insert=False, force_update=False, *args, **kwargs):
|
||||
created = self.pk is None
|
||||
super(BaseFeed, self).save(force_insert, force_update, *args, **kwargs)
|
||||
|
||||
if self.visible and (created or not self.previousVisible):
|
||||
self.refresh_from_db() # Fetch so we can use primary key
|
||||
url = f"{self.webhookUrl}/{self.pk}"
|
||||
processHooks(
|
||||
message=generateMessage(
|
||||
f"Uusi {self._meta.verbose_name}", self.title, self.description, url
|
||||
),
|
||||
eventType=self.hookType,
|
||||
)
|
||||
self.previousVisible = self.visible
|
||||
|
||||
|
||||
class Feed(BaseFeed):
|
||||
"""Model representing feed."""
|
||||
|
||||
__previousVisible = False
|
||||
webhookUrl = f"https://{FRONTEND_URL}/feed"
|
||||
hookType = "feed"
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Feed")
|
||||
verbose_name_plural = _("Feeds")
|
||||
|
||||
def __str__(self):
|
||||
delete_str = _("Deleted: ") if self.deleted else ""
|
||||
return _("{}Feed: {}").format(delete_str, self.title)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(Feed, self).__init__(*args, **kwargs)
|
||||
self.__previousVisible = self.visible
|
||||
|
||||
def save(self, force_insert=False, force_update=False, *args, **kwargs):
|
||||
created = self.pk is None
|
||||
super(Feed, self).save(force_insert, force_update, *args, **kwargs)
|
||||
|
||||
if self.visible and (created or not self.__previousVisible):
|
||||
self.refresh_from_db() # Fetch so we can use primary key
|
||||
url = f"https://{FRONTEND_URL}/feed/{self.pk}"
|
||||
processHooks(
|
||||
message=generateMessage(
|
||||
"Uusi uutinen", self.title, self.description, url
|
||||
),
|
||||
eventType="feed",
|
||||
)
|
||||
self.__previousVisible = self.visible
|
||||
|
||||
|
||||
class Event(BaseFeed):
|
||||
"""Model for event in guild calendar"""
|
||||
@@ -94,35 +99,14 @@ class Event(BaseFeed):
|
||||
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
|
||||
|
||||
webhookUrl = f"https://{FRONTEND_URL}/events"
|
||||
hookType = "event"
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Event")
|
||||
verbose_name_plural = _("Events")
|
||||
|
||||
def __str__(self):
|
||||
delete_str = _("Deleted: ") if self.deleted else ""
|
||||
return _("{}Event: {}").format(delete_str, self.title)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(Event, self).__init__(*args, **kwargs)
|
||||
self.__previousVisible = self.visible
|
||||
|
||||
def save(self, force_insert=False, force_update=False, *args, **kwargs):
|
||||
created = self.pk is None
|
||||
super(Event, self).save(force_insert, force_update, *args, **kwargs)
|
||||
|
||||
if self.visible and (created or not self.__previousVisible):
|
||||
self.refresh_from_db() # Fetch so we can use primary key
|
||||
url = f"https://{FRONTEND_URL}/events/{self.pk}"
|
||||
processHooks(
|
||||
message=generateMessage(
|
||||
"Uusi tapahtuma", self.title, self.description, url
|
||||
),
|
||||
eventType="event",
|
||||
)
|
||||
self.__previousVisible = self.visible
|
||||
|
||||
|
||||
class TemplateQuestion(models.Model):
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user