From 1aed6c9a967a91d724b3efdfdcd4e84b3070fc62 Mon Sep 17 00:00:00 2001 From: Tom Graham Date: Fri, 24 Oct 2014 17:56:52 +1100 Subject: [PATCH] Make sure custom user logic works with Django 1.4 Monkey Patch for Django 1.4 to allow new custom user model logic. --- helpdesk/__init__.py | 1 + helpdesk/monkey_patch.py | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 helpdesk/monkey_patch.py diff --git a/helpdesk/__init__.py b/helpdesk/__init__.py index e69de29b..ca49be81 100644 --- a/helpdesk/__init__.py +++ b/helpdesk/__init__.py @@ -0,0 +1 @@ +import monkey_patch # Patch User model for older versions of Django diff --git a/helpdesk/monkey_patch.py b/helpdesk/monkey_patch.py new file mode 100644 index 00000000..5f729911 --- /dev/null +++ b/helpdesk/monkey_patch.py @@ -0,0 +1,15 @@ +""" +django-helpdesk - A Django powered ticket tracker for small enterprise. + +(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. + +monkey_patch.py - Monkey Patch the User model for older versions of +Django that don't support USERNAME_FIELD and get_username +""" + +from django.contrib.auth import get_user_model +User = get_user_model() +if not hasattr(User, "USERNAME_FIELD"): + User.add_to_class("USERNAME_FIELD", "username") +if not hasattr(User, "get_username"): + User.add_to_class("get_username", lambda self: getattr(self, self.USERNAME_FIELD))