From f2cd28857413498d3f4ce6e7ed0f9d7c177667b6 Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Thu, 10 Jul 2014 01:47:15 -0400 Subject: [PATCH] Add anonymoususer sigleton model manager --- mayan/apps/common/managers.py | 10 ++++++++++ mayan/apps/common/models.py | 6 ++++++ 2 files changed, 16 insertions(+) create mode 100644 mayan/apps/common/managers.py diff --git a/mayan/apps/common/managers.py b/mayan/apps/common/managers.py new file mode 100644 index 0000000000..78ed156ea3 --- /dev/null +++ b/mayan/apps/common/managers.py @@ -0,0 +1,10 @@ +from django.db import models +from django.contrib.auth.models import AnonymousUser + + +class AnonymousUserSingletonManager(models.Manager): + def passthru_check(self, user): + if isinstance(user, AnonymousUser): + return self.model.objects.get() + else: + return user diff --git a/mayan/apps/common/models.py b/mayan/apps/common/models.py index 8f0c0cf5cd..48d7001efc 100644 --- a/mayan/apps/common/models.py +++ b/mayan/apps/common/models.py @@ -1,3 +1,5 @@ +from __future__ import absolute_import + from django.db import models from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext @@ -6,8 +8,12 @@ from django.contrib.auth.models import User from solo.models import SingletonModel +from .managers import AnonymousUserSingletonManager + class AnonymousUserSingleton(SingletonModel): + objects = AnonymousUserSingletonManager() + def __unicode__(self): return ugettext('Anonymous user')