##// END OF EJS Templates
Separate settings to limit first posting from the session or every post
Separate settings to limit first posting from the session or every post

File last commit:

r1441:f2404e3c merge decentral
r1607:c825aebd default
Show More
user.py
45 lines | 1.1 KiB | text/x-python | PythonLexer
from django.db import models
import boards
__author__ = 'neko259'
BAN_REASON_AUTO = 'Auto'
BAN_REASON_MAX_LENGTH = 200
class Ban(models.Model):
class Meta:
app_label = 'boards'
ip = models.GenericIPAddressField()
reason = models.CharField(default=BAN_REASON_AUTO,
max_length=BAN_REASON_MAX_LENGTH)
can_read = models.BooleanField(default=True)
def __str__(self):
return self.ip
class NotificationManager(models.Manager):
def get_notification_posts(self, usernames: list, last: int = None):
lower_names = [username.lower() for username in usernames]
posts = boards.models.post.Post.objects.filter(
notification__name__in=lower_names).distinct()
if last is not None:
posts = posts.filter(id__gt=last)
posts = posts.order_by('-id')
return posts
class Notification(models.Model):
class Meta:
app_label = 'boards'
objects = NotificationManager()
post = models.ForeignKey('Post')
name = models.TextField()