# HG changeset patch # User durandn # Date 1470049158 -7200 # Node ID a47934ff37ec666bdf82346c25f0e92c5a4b8cc3 # Parent 30cd696200397906776ff39e39a7546e9be35b01 signals refactoring followup: fixed circular import + added a profile view and template and link in header + refactored views into a views module diff -r 30cd69620039 -r a47934ff37ec src/iconolab/signals/handlers.py --- a/src/iconolab/signals/handlers.py Mon Aug 01 11:51:50 2016 +0200 +++ b/src/iconolab/signals/handlers.py Mon Aug 01 12:59:18 2016 +0200 @@ -2,7 +2,6 @@ from django.db.models.signals import post_save from django.dispatch import Signal, receiver -from iconolab.models import Annotation, AnnotationRevision, IconolabComment # Signal sent during method Annotation.validate_existing_revision to update stats revision_accepted = Signal(providing_args=["instance"]) @@ -10,22 +9,25 @@ def increment_stats_on_new_revision(sender, instance, **kwargs): - # Annotation stats - annotation = instance.annotation - annotation.stats.submitted_revisions_count += 1 - if instance.state in [AnnotationRevision.ACCEPTED, AnnotationRevision.STUDIED]: - annotation.stats.accepted_revisions_count += 1 - annotation.stats.set_tags_stats() - annotation.stats.save() - # Image stats - image = instance.annotation.image - image.stats.submitted_revisions_count += 1 - image.stats.set_tags_stats() - image.stats.save() + from iconolab.models import AnnotationRevision + if sender == AnnotationRevision: + # Annotation stats + annotation = instance.annotation + annotation.stats.submitted_revisions_count += 1 + if instance.state in [AnnotationRevision.ACCEPTED, AnnotationRevision.STUDIED]: + annotation.stats.accepted_revisions_count += 1 + annotation.stats.set_tags_stats() + annotation.stats.save() + # Image stats + image = instance.annotation.image + image.stats.submitted_revisions_count += 1 + image.stats.set_tags_stats() + image.stats.save() def increment_stats_on_new_comments(sender, instance, created, **kwargs): - if created: + from iconolab.models import IconolabComment + if created and sender == IconolabComment: model = apps.get_model(instance.content_type.app_label,instance.content_type.model) object_pk = instance.object_pk annotation = model._default_manager.get(pk=object_pk) @@ -36,20 +38,23 @@ def increment_accepted_revisions(sender, instance, **kwargs): - annotation = instance.annotation - annotation.stats.accepted_revisions_count += 1 - annotation.stats.save() + from iconolab.models import AnnotationRevision + if sender == AnnotationRevision: + annotation = instance.annotation + annotation.stats.accepted_revisions_count += 1 + annotation.stats.save() def increment_annotations_count(sender, instance, created, **kwargs): - if created: + from iconolab.models import Annotation + if created and sender == Annotation: image = instance.image image.stats.annotations_count += 1 image.stats.submitted_revisions_count += 1 image.stats.set_tags_stats() image.stats.save() -post_save.connect(increment_annotations_count, sender=Annotation) -post_save.connect(increment_stats_on_new_comments, sender=IconolabComment) -revision_created.connect(increment_stats_on_new_revision, sender=AnnotationRevision) -revision_accepted.connect(increment_accepted_revisions, sender=AnnotationRevision) +post_save.connect(increment_annotations_count) +post_save.connect(increment_stats_on_new_comments) +revision_created.connect(increment_stats_on_new_revision) +revision_accepted.connect(increment_accepted_revisions) \ No newline at end of file diff -r 30cd69620039 -r a47934ff37ec src/iconolab/templates/iconolab/user_page.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/iconolab/templates/iconolab/user_page.html Mon Aug 01 12:59:18 2016 +0200 @@ -0,0 +1,11 @@ +{% extends 'iconolab_base.html' %} + +{% load staticfiles %} + +{% load thumbnail %} + +{% load iconolab_tags %} + +{% block content %} +
+{% endblock %} \ No newline at end of file diff -r 30cd69620039 -r a47934ff37ec src/iconolab/templates/partials/header.html --- a/src/iconolab/templates/partials/header.html Mon Aug 01 11:51:50 2016 +0200 +++ b/src/iconolab/templates/partials/header.html Mon Aug 01 12:59:18 2016 +0200 @@ -25,7 +25,7 @@