Skip to content

Commit

Permalink
Merge pull request #2413 from pierre-24/rebase_2065
Browse files Browse the repository at this point in the history
+1 / -1 correctement supprimés lors de la suppression de leur auteur (rebase de #2153)
  • Loading branch information
SpaceFox committed Mar 11, 2015
2 parents 0b0d84d + 4084975 commit e1f4d75
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 12 deletions.
9 changes: 9 additions & 0 deletions zds/member/tests/tests_views.py
Expand Up @@ -25,6 +25,7 @@
from zds.forum.models import Topic, Post
from zds.gallery.factories import GalleryFactory, UserGalleryFactory
from zds.gallery.models import Gallery, UserGallery
from zds.utils.models import CommentLike


overrided_zds_app = settings.ZDS_APP
Expand Down Expand Up @@ -268,6 +269,12 @@ def test_unregister(self):
edited_answer = PostFactory(topic=answered_topic, author=user.user, position=3)
edited_answer.editor = user.user
edited_answer.save()

upvoted_answer = PostFactory(topic=answered_topic, author=user2.user, position=4)
upvoted_answer.like += 1
upvoted_answer.save()
CommentLike.objects.create(user=user.user, comments=upvoted_answer)

private_topic = PrivateTopicFactory(author=user.user)
private_topic.participants.add(user2.user)
private_topic.save()
Expand Down Expand Up @@ -342,6 +349,8 @@ def test_unregister(self):
self.assertEquals(alone_gallery.get_linked_users().count(), 1)
self.assertEquals(shared_gallery.get_linked_users().count(), 1)
self.assertEquals(UserGallery.objects.filter(user=user.user).count(), 0)
self.assertEquals(CommentLike.objects.filter(user=user.user).count(), 0)
self.assertEquals(Post.objects.filter(pk=upvoted_answer.id).first().like, 0)

def test_forgot_password(self):
"""To test nominal scenario of a lost password."""
Expand Down
17 changes: 13 additions & 4 deletions zds/member/views.py
Expand Up @@ -23,9 +23,10 @@
from django.utils.translation import ugettext as _
from django.views.decorators.http import require_POST
from django.views.generic import DetailView, UpdateView, CreateView

from forms import LoginForm, MiniProfileForm, ProfileForm, RegisterForm, ChangePasswordForm, ChangeUserForm, \
ForgotPasswordForm, NewPasswordForm, OldTutoForm, PromoteMemberForm, KarmaForm
from forms import LoginForm, MiniProfileForm, ProfileForm, RegisterForm, \
ChangePasswordForm, ChangeUserForm, ForgotPasswordForm, NewPasswordForm, \
OldTutoForm, PromoteMemberForm, KarmaForm
from zds.utils.models import Comment, CommentLike, CommentDislike
from models import Profile, TokenForgotPassword, TokenRegister, KarmaNote
from zds.article.models import Article
from zds.gallery.forms import ImageAsAvatarForm
Expand All @@ -36,7 +37,6 @@
DeleteReadingOnlySanction, TemporaryBanSanction, BanSanction, DeleteBanSanction, TokenGenerator
from zds.mp.models import PrivatePost, PrivateTopic
from zds.tutorial.models import Tutorial
from zds.utils.models import Comment
from zds.utils.mps import send_mp
from zds.utils.paginator import ZdSPagingListView
from zds.utils.tokens import generate_token
Expand Down Expand Up @@ -299,6 +299,15 @@ def unregister(request):
article.authors.add(external)
article.authors.remove(current)
article.save()
# comments likes / dislikes
for like in CommentLike.objects.filter(user=current):
like.comments.like -= 1
like.comments.save()
like.delete()
for dislike in CommentDislike.objects.filter(user=current):
dislike.comments.dislike -= 1
dislike.comments.save()
dislike.delete()
# all messages anonymisation (forum, article and tutorial posts)
for message in Comment.objects.filter(author=current):
message.author = anonymous
Expand Down
8 changes: 0 additions & 8 deletions zds/utils/models.py
Expand Up @@ -197,14 +197,6 @@ class Meta:
max_length=80,
default='')

def get_like_count(self):
"""Gets number of like for the post."""
return CommentLike.objects.filter(comments__pk=self.pk).count()

def get_dislike_count(self):
"""Gets number of dislike for the post."""
return CommentDislike.objects.filter(comments__pk=self.pk).count()

def update_content(self, text):
self.text = text
self.text_html = emarkdown(self.text)
Expand Down

0 comments on commit e1f4d75

Please sign in to comment.