123456789101112131415161718192021222324252627282930 |
- from django.db import models
- class AttachmentType(models.Model):
- name = models.CharField(max_length=255, db_index=True)
- extensions = models.CharField(max_length=255)
- size_limit = models.PositiveIntegerField(default=0)
- roles = models.ManyToManyField('Role')
- class Meta:
- app_label = 'misago'
- def update_roles(self, new_roles):
- self.roles.clear()
- for role in new_roles:
- self.roles.add(role)
- def normalize_extension(self, extension):
- extension = extension.lower()
- try:
- while extension[0] == '.':
- extension = extension[1:]
- except IndexError:
- return None
- return extension
- def has_extension(self, extension):
- extension = self.normalize_extension(extension)
- if extension:
- return extension in self.extensions.split(',')
- return False
|