]> git.openstreetmap.org Git - osqa.git/blobdiff - forum/models/user.py
make the question page header be an h1 instead of just an A tag
[osqa.git] / forum / models / user.py
index c196bd44b74f7d5a0c39670f33f53fd12cfadaad..62eeac3aeb6fc9d6d1c3dae21b1f0b05356cdb1a 100644 (file)
@@ -26,7 +26,7 @@ class UserManager(CachedManager):
 \r
 class AnonymousUser(DjangoAnonymousUser):\r
     def get_visible_answers(self, question):\r
-        return question.answers.filter(deleted=None)\r
+        return question.answers.filter_state(deleted=False)\r
 \r
     def can_view_deleted_post(self, post):\r
         return False\r
@@ -61,12 +61,18 @@ class AnonymousUser(DjangoAnonymousUser):
     def can_accept_answer(self, answer):\r
         return False\r
 \r
+    def can_create_tags(self):\r
+        return False\r
+\r
     def can_edit_post(self, post):\r
         return False\r
 \r
     def can_wikify(self, post):\r
         return False\r
 \r
+    def can_cancel_wiki(self, post):\r
+        return False\r
+\r
     def can_retag_questions(self):\r
         return False\r
 \r
@@ -147,7 +153,7 @@ class User(BaseModel, DjangoUser):
         return mark_safe(profile_link)\r
 \r
     def get_visible_answers(self, question):\r
-        return question.answers.filter(deleted=None, in_moderation=None)\r
+        return question.answers.filter_state(deleted=False)\r
 \r
     def get_vote_count_today(self):\r
         today = datetime.date.today()\r
@@ -214,15 +220,23 @@ class User(BaseModel, DjangoUser):
     def can_accept_answer(self, answer):\r
         return self == answer.question.author\r
 \r
+    @true_if_is_super_or_staff\r
+    def can_create_tags(self):\r
+        return self.reputation >= int(settings.REP_TO_CREATE_TAGS)\r
+\r
     @true_if_is_super_or_staff\r
     def can_edit_post(self, post):\r
         return self == post.author or self.reputation >= int(settings.REP_TO_EDIT_OTHERS\r
-        ) or (post.wiki and self.reputation >= int(settings.REP_TO_EDIT_WIKI))\r
+        ) or (post.nis.wiki and self.reputation >= int(settings.REP_TO_EDIT_WIKI))\r
 \r
     @true_if_is_super_or_staff\r
     def can_wikify(self, post):\r
         return self == post.author or self.reputation >= int(settings.REP_TO_WIKIFY)\r
 \r
+    @true_if_is_super_or_staff\r
+    def can_cancel_wiki(self, post):\r
+        return self == post.author\r
+\r
     @true_if_is_super_or_staff\r
     def can_retag_questions(self):\r
         return self.reputation >= int(settings.REP_TO_RETAG)\r
@@ -248,6 +262,11 @@ class User(BaseModel, DjangoUser):
     def can_upload_files(self):\r
         return self.reputation >= int(settings.REP_TO_UPLOAD)\r
 \r
+    def check_password(self, old_passwd):\r
+        self.__dict__.update(self.__class__.objects.filter(id=self.id).values('password')[0])\r
+        return DjangoUser.check_password(self, old_passwd)\r
+\r
+\r
     class Meta:\r
         app_label = 'forum'\r
 \r