rendered paste bodyclass Thread(models.Model, LabelManager):
category = models.ForeignKey(Category, db_index=True)
name = models.CharField(maxlength=255)
author = models.ForeignKey(User, db_index=True, editable=False)
lang = models.CharField(maxlength=2, choices=settings.LANGUAGES)
post_date = models.DateTimeField(auto_now_add=True)
last_author = models.ForeignKey(User, related_name="last_update_author", editable=False)
last_post_date = models.DateTimeField(auto_now=True)
total_posts = models.IntegerField(default=1, blank=True, editable=False)
total_posts_today = models.IntegerField(default=1, blank=True, editable=False)
visible = models.BooleanField(default=True, help_text='Turn this off to soft delete a thread')
sticky = models.BooleanField(default=False, help_text='Is this thread stickied')
open = models.BooleanField(default=True, help_text='Is this thread open for posting')
labels = models.TextField(null=True, blank=True, editable=False)
def __str__(self):
return self.name
def get_absolute_url(self):
return "/%s/forums/details/%d/%s/" % (threadlocals.get_current_lang(), self.id, safe_name(self.name))
def get_lastreply_url(self):
return "/%s/forums/latest-post/%d/" % (threadlocals.get_current_lang(), self.id)
def get_sticky_url(self):
return "/%s/forums/sticky/%d/" % (threadlocals.get_current_lang(), self.id)
def get_unsticky_url(self):
return "/%s/forums/unsticky/%d/" % (threadlocals.get_current_lang(), self.id)
def get_open_url(self):
return "/%s/forums/open/%d/" % (threadlocals.get_current_lang(), self.id)
def get_close_url(self):
return "/%s/forums/close/%d/" % (threadlocals.get_current_lang(), self.id)
def get_hide_url(self):
return "/%s/forums/hide/%d/" % (threadlocals.get_current_lang(), self.id)
def get_show_url(self):
return "/%s/forums/show/%d/" % (threadlocals.get_current_lang(), self.id)
class Admin:
list_display = ('name', 'category', 'post_date', 'total_posts', 'total_posts_today', 'visible', 'sticky', 'open',)
list_filter = ('visible', 'sticky', 'open', 'post_date', 'category', )
search_fields = ['name',]
class Meta:
verbose_name = _('thread')
verbose_name_plural = _('threads')
class History:
pass