diff options
-rw-r--r-- | askbot/models/__init__.py | 6 | ||||
-rw-r--r-- | askbot/search/haystack/signals.py | 30 |
2 files changed, 18 insertions, 18 deletions
diff --git a/askbot/models/__init__.py b/askbot/models/__init__.py index 797aa6a3..77f32b90 100644 --- a/askbot/models/__init__.py +++ b/askbot/models/__init__.py @@ -3760,6 +3760,12 @@ signals.new_question_posted.connect(tweet_new_post) signals.post_revision_published.connect(notify_author_of_published_revision) signals.site_visited.connect(record_user_visit) +if getattr('HAYSTACK_SIGNAL_PROCESSOR', + django_settings, ' ').endswith('AskbotRealtimeSignalProcessor'): + from haystack import signal_processor + signal_processor.teardown() + signal_processor.setup() + __all__ = [ 'signals', diff --git a/askbot/search/haystack/signals.py b/askbot/search/haystack/signals.py index 403cee89..18f451d0 100644 --- a/askbot/search/haystack/signals.py +++ b/askbot/search/haystack/signals.py @@ -10,27 +10,21 @@ class AskbotRealtimeSignalProcessor(BaseSignalProcessor): ''' def setup(self): + django_signals.post_save.connect(self.handle_save) + django_signals.post_delete.connect(self.handle_delete, sender=User) + try: - from askbot.models import Post, Thread from askbot.models import signals as askbot_signals - django_signals.post_save.connect(self.handle_save, sender=User) - django_signals.post_save.connect(self.handle_save, sender=Thread) - django_signals.post_save.connect(self.handle_save, sender=Post) - - django_signals.post_delete.connect(self.handle_delete, sender=User) - #askbot signals - askbot_signals.delete_question_or_answer.connect(self.handle_delete, sender=Post) - askbot_signals.delete_question_or_answer.connect(self.handle_delete, sender=Thread) - except: + askbot_signals.delete_question_or_answer.connect(self.handle_delete) + except ImportError: pass def teardown(self): - from askbot.models import Post, Thread - from askbot.models import signals as askbot_signals - django_signals.post_save.disconnect(self.handle_save, sender=User) - django_signals.post_save.disconnect(self.handle_save, sender=Post) - django_signals.post_save.disconnect(self.handle_save, sender=Thread) - django_signals.post_delete.disconnect(self.handle_delete, sender=User) + django_signals.post_save.disconnect(self.handle_save) + django_signals.post_delete.disconnect(self.handle_delete) #askbot signals - askbot_signals.delete_question_or_answer.disconnect(self.handle_delete, sender=Thread) - askbot_signals.delete_question_or_answer.disconnect(self.handle_delete, sender=Post) + try: + from askbot.models import signals as askbot_signals + askbot_signals.delete_question_or_answer.disconnect(self.handle_delete) + except ImportError: + pass |