##// END OF EJS Templates
Don't run time conversion if Intl not available in browser. Also convert...
Don't run time conversion if Intl not available in browser. Also convert thread death time in archived threads

File last commit:

r1008:bbb4d5fd default
r1023:0040ea34 default
Show More
user.py
46 lines | 1.0 KiB | text/x-python | PythonLexer
neko259
Split up user models
r386 from django.db import models
neko259
Added notification API
r994 import boards.models.post
neko259
Split up user models
r386 __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)
neko259
Updated ban admin to search by ip
r804 def __str__(self):
neko259
Split up user models
r386 return self.ip
neko259
User notifications (BB-59)
r990
neko259
Added notification API
r994 class NotificationManager(models.Manager):
def get_notification_posts(self, username: str, last: int = None):
neko259
Use only lowercase name in notifications. Refactored post manager and refmap...
r1008 i_username = username.lower()
posts = boards.models.post.Post.objects.filter(notification__name=i_username)
neko259
Added notification API
r994 if last is not None:
posts = posts.filter(id__gt=last)
posts = posts.order_by('-id')
return posts
neko259
User notifications (BB-59)
r990 class Notification(models.Model):
class Meta:
app_label = 'boards'
neko259
Added notification API
r994 objects = NotificationManager()
neko259
User notifications (BB-59)
r990 post = models.ForeignKey('Post')
name = models.TextField()