diff --git a/apps/signaler/__init__.py b/apps/signaler/__init__.py new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/apps/signaler/__init__.py @@ -0,0 +1 @@ + diff --git a/apps/signaler/management/__init__.py b/apps/signaler/management/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/apps/signaler/management/commands/__init__.py b/apps/signaler/management/commands/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/apps/signaler/management/commands/collectstatic.py b/apps/signaler/management/commands/collectstatic.py new file mode 100644 index 0000000000..e33b4d0ec1 --- /dev/null +++ b/apps/signaler/management/commands/collectstatic.py @@ -0,0 +1,13 @@ +from django.contrib.staticfiles.management.commands import collectstatic + +from signaler.signals import pre_collectstatic + + +class Command(collectstatic.Command): + """ + Wrapper for the collectstatic command + """ + + def handle_noargs(self, *args, **kwargs): + pre_collectstatic.send(sender=self) + super(Command, self).handle_noargs(*args, **kwargs) diff --git a/apps/signaler/models.py b/apps/signaler/models.py new file mode 100644 index 0000000000..71a8362390 --- /dev/null +++ b/apps/signaler/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/apps/signaler/signals.py b/apps/signaler/signals.py new file mode 100644 index 0000000000..c102b00357 --- /dev/null +++ b/apps/signaler/signals.py @@ -0,0 +1,3 @@ +from django.dispatch import Signal + +pre_collectstatic = Signal() diff --git a/settings.py b/settings.py index ef68252deb..7fed78bde0 100644 --- a/settings.py +++ b/settings.py @@ -174,6 +174,8 @@ INSTALLED_APPS = ( 'rest_api', 'document_signatures', +# Has to be last so the other apps can register it's signals + 'signaler', ) TEMPLATE_CONTEXT_PROCESSORS = ( @@ -328,19 +330,22 @@ if DEVELOPMENT: import rosetta INSTALLED_APPS += ('rosetta',) except ImportError: - sys.stderr.write('DEBUG: rosetta is not installed\n') + pass + #sys.stderr.write('DEBUG: rosetta is not installed\n') try: import django_extensions INSTALLED_APPS += ('django_extensions',) except ImportError: - sys.stderr.write('DEBUG: django_extensions is not installed\n') + pass + #sys.stderr.write('DEBUG: django_extensions is not installed\n') try: import debug_toolbar #INSTALLED_APPS +=('debug_toolbar',) except ImportError: - sys.stderr.write('DEBUG: debug_toolbar is not installed\n') + pass + #sys.stderr.write('DEBUG: debug_toolbar is not installed\n') TEMPLATE_CONTEXT_PROCESSORS += ('django.core.context_processors.debug',)