changeset 923:bd043677d527

Wiki app refactor for Django 1.7.7 upgrade.
author Brian Neal <bgneal@gmail.com>
date Tue, 07 Apr 2015 20:30:25 -0500
parents 1a832625c047
children 78b459d4ab17
files wiki/__init__.py wiki/apps.py wiki/models.py wiki/receivers.py wiki/signals.py
diffstat 5 files changed, 55 insertions(+), 54 deletions(-) [+]
line wrap: on
line diff
--- a/wiki/__init__.py	Tue Apr 07 20:20:42 2015 -0500
+++ b/wiki/__init__.py	Tue Apr 07 20:30:25 2015 -0500
@@ -0,0 +1,1 @@
+default_app_config = 'wiki.apps.WikiConfig'
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/wiki/apps.py	Tue Apr 07 20:30:25 2015 -0500
@@ -0,0 +1,8 @@
+from django.apps import AppConfig
+
+
+class WikiConfig(AppConfig):
+    name = 'wiki'
+
+    def ready(self):
+        import wiki.receivers
--- a/wiki/models.py	Tue Apr 07 20:20:42 2015 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-"""The wiki application integrates an external Wiki app with our Django
-application.
-
-The wiki application has no models. It consists of some signals and
-middleware only.
-
-"""
-import wiki.signals
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/wiki/receivers.py	Tue Apr 07 20:30:25 2015 -0500
@@ -0,0 +1,46 @@
+"""Signal handlers for wiki integration.
+
+We are interested in hearing about users logging in and out, so we can create
+and destroy an external cookie to allow access to the wiki.
+
+"""
+import logging
+
+from django.contrib.auth.signals import user_logged_in, user_logged_out
+
+from wiki.constants import SESSION_SET_MEMBER
+
+logger = logging.getLogger(__name__)
+
+
+def login_callback(sender, request, user, **kwargs):
+    """Signal callback function for a user logging in.
+
+    Sets a flag for the middleware to create an external cookie.
+
+    """
+    logger.info('User login: %s', user.username)
+
+    request.wiki_set_cookie = True
+
+
+def logout_callback(sender, request, user, **kwargs):
+    """Signal callback function for a user logging in.
+
+    Sets a flag for the middleware to delete the external cookie.
+
+    Since the user is about to logout, her session will be wiped out after
+    this function returns. This forces us to set an attribute on the request
+    object so that the response middleware can delete the wiki's cookie.
+
+    """
+    if user:
+        logger.info('User logout: %s', user.username)
+
+        # Remember what Redis set member to delete by adding an attribute to the
+        # request object:
+        request.wiki_delete_cookie = request.session.get(SESSION_SET_MEMBER)
+
+
+user_logged_in.connect(login_callback, dispatch_uid='wiki.receivers.login')
+user_logged_out.connect(logout_callback, dispatch_uid='wiki.receivers.logout')
--- a/wiki/signals.py	Tue Apr 07 20:20:42 2015 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-"""Signal handlers for wiki integration.
-
-We are interested in hearing about users logging in and out, so we can create
-and destroy an external cookie to allow access to the wiki.
-
-"""
-import logging
-
-from django.contrib.auth.signals import user_logged_in, user_logged_out
-
-from wiki.constants import SESSION_SET_MEMBER
-
-logger = logging.getLogger(__name__)
-
-
-def login_callback(sender, request, user, **kwargs):
-    """Signal callback function for a user logging in.
-
-    Sets a flag for the middleware to create an external cookie.
-
-    """
-    logger.info('User login: %s', user.username)
-
-    request.wiki_set_cookie = True
-
-
-def logout_callback(sender, request, user, **kwargs):
-    """Signal callback function for a user logging in.
-
-    Sets a flag for the middleware to delete the external cookie.
-
-    Since the user is about to logout, her session will be wiped out after
-    this function returns. This forces us to set an attribute on the request
-    object so that the response middleware can delete the wiki's cookie.
-
-    """
-    if user:
-        logger.info('User logout: %s', user.username)
-
-        # Remember what Redis set member to delete by adding an attribute to the
-        # request object:
-        request.wiki_delete_cookie = request.session.get(SESSION_SET_MEMBER)
-
-
-user_logged_in.connect(login_callback, dispatch_uid='wiki.signals.login')
-user_logged_out.connect(logout_callback, dispatch_uid='wiki.signals.logout')