Advertisement
Foxscotch

Hub models v1

Oct 8th, 2015
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.98 KB | None | 0 0
  1. class HubProfile(models.Model):
  2.     user = models.OneToOneField(User, related_name='hub_profile')
  3.  
  4.     bl_name = models.CharField(max_length=250)
  5.     bl_id = models.PositiveIntegerField(unique=True)
  6.  
  7.     def name_still_valid(self, ip):
  8.         url = 'http://auth.blockland.us/authQuery.php'
  9.         payload = {'NAME': self.bl_name, 'IP': ip}
  10.         r = requests.post(url, data=payload)
  11.         if r.text[0] == 'Y':
  12.             return str(self.bl_id) == r.text[4:]
  13.         else:
  14.             return False
  15.        
  16.     def __str__(self):
  17.         return "{0}'s Hub profile".format(self.user.username)
  18.     __unicode__ = __str__
  19.  
  20.  
  21. class HubSettings(models.Model):
  22.     user = models.OneToOneField(User, related_name='hub_settings')
  23.  
  24.     THEME_CHOICES = (('light', 'Light'), ('dark', 'Dark'))
  25.     theme = models.CharField(max_length=10, choices=THEME_CHOICES, default='dark')
  26.  
  27.     receive_email = models.BooleanField(default=False)
  28.     # receive_telegram = models.BooleanField(default=False)
  29.     # receive_hooks = models.BooleanField(default=False)
  30.     # maybe.... just maybe
  31.    
  32.     def __str__(self):
  33.         return "{0}'s Hub settings".format(self.user.username)
  34.     __unicode__ = __str__
  35.  
  36.     class Meta:
  37.         verbose_name = verbose_name_plural = 'Hub settings'
  38.  
  39.  
  40. class BlogCategory(models.Model):
  41.     name = models.CharField(max_length=50, unique=True)
  42.     description = models.CharField(max_length=1000, blank=True)
  43.    
  44.     def __str__(self):
  45.         return self.name
  46.     __unicode__ = __str__
  47.    
  48.     class Meta:
  49.         verbose_name = 'Blog category'
  50.         verbose_name_plural = 'Blog categories'
  51.  
  52.  
  53. class Blog(models.Model):
  54.     title = models.CharField(max_length=250, unique=True)
  55.     author = models.ForeignKey(User)
  56.     pub_date = models.DateTimeField(auto_now_add=True)
  57.     categories = models.ManyToManyField(BlogCategory, blank=True)
  58.     content = models.TextField()
  59.    
  60.     def __str__(self):
  61.         return self.title
  62.     __unicode__ = __str__
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement