X-Git-Url: https://git.openstreetmap.org./osqa.git/blobdiff_plain/be26ac9493b40e87e07c773a8d7c79ef1e8b7b48..7d7bf25b6fb206343959d7f496ab4215fd1f3df6:/forum/models/user.py diff --git a/forum/models/user.py b/forum/models/user.py index 6f7613a..62eeac3 100644 --- a/forum/models/user.py +++ b/forum/models/user.py @@ -61,6 +61,9 @@ class AnonymousUser(DjangoAnonymousUser): def can_accept_answer(self, answer): return False + def can_create_tags(self): + return False + def can_edit_post(self, post): return False @@ -217,6 +220,10 @@ class User(BaseModel, DjangoUser): def can_accept_answer(self, answer): return self == answer.question.author + @true_if_is_super_or_staff + def can_create_tags(self): + return self.reputation >= int(settings.REP_TO_CREATE_TAGS) + @true_if_is_super_or_staff def can_edit_post(self, post): return self == post.author or self.reputation >= int(settings.REP_TO_EDIT_OTHERS @@ -255,6 +262,11 @@ class User(BaseModel, DjangoUser): def can_upload_files(self): return self.reputation >= int(settings.REP_TO_UPLOAD) + def check_password(self, old_passwd): + self.__dict__.update(self.__class__.objects.filter(id=self.id).values('password')[0]) + return DjangoUser.check_password(self, old_passwd) + + class Meta: app_label = 'forum'